當前位置:首頁 » 編程語言 » c語言實現加簽
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言實現加簽

發布時間: 2022-05-17 22:27:59

c語言中要在某個文件中追加內容怎麼實現

使用fopen函數打開文件,用fseek函數將文件位置調整到文件末尾,然後用fwrite函數寫入數據即可。下面的示例代碼,向1.txt的文件中追加hello world的字元串。

#include<stdio.h>
#include<string.h>
intmain()
{
FILE*fp=fopen("1.txt","a+");
if(fp==0){printf("can'topenfile ");return0;}
fseek(fp,0,SEEK_END);
charsz_add[]="helloworld ";
fwrite(sz_add,strlen(sz_add),1,fp);
fclose(fp);
return0;
}

Ⅱ C語言,設計一個函數,實現加,減,乘,除運算。

# include<stdio.h>

double jia(double x, double d)
{
double s;
s = x+d;
return s;
}

double jian(double x, double d)
{
double s;
s = x-d;
return s;
}

double cheng(double x, double d)
{
double s;
s = x*d;
return s;
}

double chu(double x, double d)
{
double s;
s = x/d;
return s;
}

int main(void)
{
double i, j, k;
char t;
k = 0;
printf("請輸入要計算什麼運算「+」「-」「*」「/」\n");
scanf("%c", &t);
if(t == '+')
{
printf("請輸入要相加的兩個數\n");
scanf("%lf %lf", &i, &j);
k = jia(i, j);
printf("這兩個數相加為%6.2lf\n", k);
}

else if(t == '-')
{

printf("請輸入要相減的兩個數\n");
scanf("%lf %lf", &i, &j);
k = jian(i, j);
printf("這兩個數相減為%6.2lf\n", k);
}

else if(t == '*')
{

printf("請輸入要相*的兩個數\n");
scanf("%lf %lf", &i, &j);
k = cheng(i, j);
printf("這兩個數相*為%6.2lf\n", k);
}
else if(t == '/')
{

printf("請輸入要相/的兩個數\n");
scanf("%lf %lf", &i, &j);
k = chu(i, j);
printf("這兩個數相/為%6.2lf\n", k);
}

else
{
printf("對不起目前只支持「+」「-」「*」「/」\n");
}
return 0;
}

Ⅲ C語言中如何實現加減乘除運算

實現方法如下:

讀入的時候用%x讀入,然後在程序裡面直接用+,-,*,/運算就行了,輸出的時候再用%x。

Ⅳ c語言實現簡單的加減乘除

1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。如下圖所示。

Ⅳ c語言的加減乘除是怎麼實現的

本質上都是位運算。 加法通過異或、且和左移遞歸實現。

設a,b為兩個二進制數,則a+b = a^b + (a&b)<<1;

典型的實現代碼:

//遞歸版本的加法
intAdd(inta,intb)
{
returnb?Add(a^b,(a&b)<<1):a;
}
//迭代版本
intAdd_iter(inta,intb)
{
intans;
while(b)
{
ans=a^b;
b=(a&b)<<1;
a=ans;
}
returnans;
}

再用加法和移位就能模擬乘除和減法

減法:a-b = a+(-b)

乘法運算:原理上還是通過加法計算,將b個a相加。

除法運算:除法運算是乘法的逆。看a最多能減去多少個b

Ⅵ C語言中怎麼實現多個數的加法 求大神解決,謝謝

#define_CRT_SECURE_NO_DEPRECATE//這行是在VC2013要用scanf函數時候要寫的,其他環境無視
intmain()
{
doublesum=0,a;
scanf("%lf",&a);//先輸入一個a
while(a!=0)//判斷a是否=0,等於0就不做了,這里有人喜歡用do-while但如果有測試數據第一組就是0會比較奇葩
{
sum+=a;
scanf("%lf",&a);//在輸入一次判斷下面結果的
}
printf("%lf ",sum);
return0;
}

還有下面這種可以少用一次scanf



intmain()
{
doublesum=0,a;
while(scanf("%lf",&a)&&a!=0)
{
sum+=a;
}
printf("%lf ",sum);
return0;
}

Ⅶ C語言 一個字元串實現累加

首先..如果你說的實現字元串加..這個不難實現,只是沒意義,例如, "abc",你想加什麼?最後加得結果是"abd"?
再者說你的num本身就是一串固定字元串..又不是變數,你想讓他變成變數.這..不想打擊你,這毫無竟義,因為不管你想處理什麼,都可以在函數裡面定義一個變數,當作他的替身都ok,進行計算再輸出.而且關鍵是,你五個參數都是固定的,這怎麼進行變值傳值,那你輸出的值必定是固定的嘍?還是說你想在函數裡面進加自加?這...不管怎麼自加..條件都由你.這樣的輸出讓不讓他變成變數也無所謂了吧..
最後說你的num是字元(char)這樣實現加還是有意義的,因為字元加,可以按ascll碼加,其實也就是一個變數了,如果是這樣, 這加法你就當普通加法做就好如, num 是字母 A ascll(int值) 為41, num+1 所得char類型為 B ascll碼為 42如此而已,看你輸出的結果類型是什麼.若按字元串,也不過劃分為字元加,然後進行合並處理而已.至少實現自加, 可以在函數裡面加條件判斷,如 if(num < 255)
若是的話就可以自調一次函數這樣,showzifustr(80,80,num+1,0,255);,若不是的話,就輸出唄
第三點,實現於num非字元串,也不是指針,而是char型的變數.

Ⅷ c語言編程能夠實現+,-,*,%功能

#include"stdio.h"
intmain()
{
inta,b,c;
do
{
system("cls");
printf("計算器菜單 ");
printf("======================== ");
printf("1:計算a+b ");
printf("2:計算a-b ");
printf("3:計算a*b ");
printf("4:計算a/b ");
printf("5:計算a%b ");
printf("0:退出 ");
printf("請選擇(0-5):");
scanf("%d",&c);
if(c!=0)
{
printf("請輸入a:");
scanf("%d",&a);
printf("請輸入b:");
scanf("%d",&b);
switch(c)
{
case1:printf("a+b=%d",a+b);break;
case2:printf("a-b=%d",a-b);break;
case3:printf("a*b=%d",a*b);break;
case4:
while(b==0)
{
printf("除數不能為0,請重新輸入:");
printf("請輸入b:");
scanf("%d",&b);
}
printf("a/b=%d",a/b);break;
case5:printf("a%b=%d",a%b);break;
default:break;
}
printf(" 按任意鍵繼續......");
getch();
}
}
while(c!=0);
return0;
}

Ⅸ c語言 利用數組實現加法

我測試過了,含有100這樣帶有0的數字的時候沒有問題,從代碼分析帶0也不會有問題。
至於你說的兩個加數位數不相同出錯。問題出在下面幾行:
for(i=0;(k[i]!='\0'||b[i]!='\0');i++)
{
if(sign==1)
{
j[i]=k[i]+b[i]-95;
sign=0;
}
else
j[i]=k[i]+b[i]-96;
上面的代碼片段。for循環的第二個表達式成立是或關系。如果其中一個加數位數不夠,後面的「-95」和「-96」將多減去一個48,所以由char型轉到int型的時候就出錯了。
建議你使用strlen求一下兩個被加數長度。將位數小的高位用0補齊就行了。

Ⅹ C語言實現加減乘除運算

按照你的程序運行後。。。在輸入c值的時候
程序直接結束了。。。還有就是每個case語句後記著加上break跳出不過也有不過根據具體需要也可以不加break;但是你的這個程序需要加上break;
原因是:回車符也是字元,所以你按回後,程序以為是輸入了c的值了,而在輸入b值成功是因為
回車符不是數字形式的。
以下是我改過的程序,編譯運行都很好的

#include <stdio.h>
#include <math.h>

void main()
{
float a,b;
char c;
printf("\n input a:");
scanf("%f",&a);
printf("\n input b:");
scanf("%f",&b);
//這種情況經常遇到。。。。輸入完後回車被下一個scanf("%c",&c)捕獲了。
//因為回車符也是字元,所以你按回車後,程序以為是輸入了c的值了
//所以加上下面一行,把回車符取走就可以了。。。。
getchar();
printf("\n input c:");
scanf("%c",&c);
//printf("\n%c",c);
switch(c)
{
case '+': printf("a+b=%f",a+b);break;
case '-': printf("a-b=%f",a-b);break;
case '*': printf("a*b=%f",a*b);break;
case '/': printf("a/b=%f",a/b);break;
default: break;
}
//為了好看
printf("\n");
}