⑴ c語言求1~n累加求和
c語言求1-n累加求和?1、for循環,語法「for(i=1;i<=n;i++){s=s+i;}」;2、while循環,語法「while(i<=n){s=s+i;i++;}」;3、do-while循環,語法「do{s=s+i;i++;}while(i<=n)」。
本教程操作環境:windows7系統、c99版本、Dell G3電腦。
問題描述:用C語言實現1+2+3+4+5+…+n的累加。
方法一:使用for循環。具體代碼如下:
運行結果如下:
方法二:使用while循環。具體代碼如下:
main()函數和for循環的函數一致,當然也可以根據自己的需要進行修改,具體運行結果如下:
方法三:使用do-while循環,具體代碼如下:
運行結果如下:
相關推薦:《C語言視頻教程》
以上就是c語言如何實現1~n累加求和的詳細內容,更多請關注php中文網其它相關文章!
⑵ 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語言1到100累加和
清楚演算法就可以很快寫出:
(1)只需輸入2個變數n和sum,且sum=n+sum.
(2)確定n的范圍為n<=100
(3)循環體為
for(n=1;n<=100;n++)
sum+=n;
(4)根據C語言編輯規則寫出程序
用for循環求:
#include<stdio.h>
int main(void)
{
int n,sum=0;
for(n=1;n<=100;n++)
sum+=n;
printf("1+2+...+100=%d ",sum)
return 0;
}
程序運行結果:
1+2+...+100=5050
(3)c語言累加擴展閱讀:
for( i=1; i<=100; i++ ) sum=sum+i;
先給i賦初值1,判斷i是否小於等於100,若是則執行語句,之後值增加1。再重新判斷,直到條件為假,即i>100時,結束循環。相當於:
i=1;
while(i<=100){
sum=sum+i;
i++;
}
對於for循環中語句的一般形式,就是如下的while循環形式:
表達式1;
while(表達式2){
語句
表達式3;
}
使用for語句應該注意:
1) for循環中的「表達式1(循環變數賦初值)」、「表達式2(循環條件)」和「表達式3(循環變數增量)」都是選擇項,即可以預設,但分號(;)不能預設。
2) 省略了「表達式1(循環變數賦初值)」,表示不對循環控制變數賦初值。
3) 省略了「表達式2(循環條件)」,則不做其它處理時便成為死循環。例如:
for( i=1; ; i++ ) sum=sum+i;
相當於:i=1;
while(1){
sum=sum+i;
i++;
}
4) 省略了「表達式3(循環變數增量)」,則不對循環控制變數進行操作,這時可在語句體中加入修改循環控制變數的語句。例如:
for( i=1; i<=100 ; ){
sum=sum+i;
i++;
}
5) 省略了「表達式1(循環變數賦初值)」和「表達式3(循環變數增量)」。例如:
for( ; i<=100 ; ){
sum=sum+i;
i++;
}
相當於:
while(i<=100)
{sum=sum+i;
i++;
}
6) 3個表達式都可以省略。例如:
for( ; ; ) 語句
相當於:
while(1) 語句
7) 表達式1可以是設置循環變數的初值的賦值表達式,也可以是其他表達式。例如:
for( sum=0; i<=100; i++ ) sum=sum+i;
8) 表達式1和表達式3可以是一個簡單表達式也可以是逗號表達式。
for( sum=0,i=1; i<=100; i++ ) sum=sum+i;
或:
for( i=0,j=100; i<=100; i++,j-- ) k=i+j;
9) 表達式2一般是關系表達式或邏輯表達式,但也可是數值表達式或字元表達式,只要其值非零,就執行循環體。例如:
for( i=0; (c=getchar())!=』
』; i+=c );
又如:
for( ; (c=getchar())!=』 』 ; )
printf("%c",c);
⑷ c語言求累加和
double b=0.0,要不是double就報錯了,因為0在double是個非常小的非0值表示的.此時 a/b?
⑸ C語言 計算x每位數字的累加和
#include<stdio.h>
#include<math.h>
void main()
{
long x;
long result = 0;
scanf("%ld",&x);
//求各位數字之和,保存在result中
while(x > 0)
{
result = result + x % 10;
x /= 10;
}
printf("%ld\n", result);
}
⑹ c語言編程:求數列的累加和
#include<stdio.h>
#define N 100
int main()
{
int n;
float sum=0,i;
printf("輸入n的值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
sum=i/(n-i+1);
printf("%f",sum);
return 0;
}
⑺ c語言,while循環計算累加和。
邏輯問題.因為你先列印才相加
將你的 print 放到 sum = sum + i 下面
⑻ c語言怎麼求1到n的累加和
1、首先定義一個函數,這個函數里的內容求n的階乘,返回值是n的階乘,如下圖所示。
⑼ C語言如何實現連續輸入的累加
#include<stdio.h>
main()
{
long sum=0,n;
char c;
for(c=getchar();c!='\n';sum+=n)
{
n=0;
for(;c>='0'&&c<='9';n=n*10+c-'0',c=getchar());
if(c=='+')c=getchar();
}
printf("%d\n",sum);
}
⑽ 在C語言中累加的寫法
++a是先把a的值加1再參與運算,而a++實現參與運算再把a的值加1
如:
int
a=1,b=2;
int
d,c;
d=++b;//先將b的值加1,再將b的值賦給d,b=3,d=4,等效於b=b+1;d=b;
c=a++;//先將a的值賦給d,再將a的值加1,c=1,a=2,等效於c=a;a=a+1;
a+=b;等效於a=a+b;
同理a/=b;等效於a=a/b;