c语言for语句

来源:百度知道 编辑:UC知道 时间:2024/05/17 21:06:42
编写程序,求1+2+3+...+98+99+100
main()
{int i,s;
for(i=1,s=0;i<=100;i++) s+=i;
printf("s=%d\n",s);}
请问s输出时应该是1 2 3 4....这些,那1+2+3+4...中间的+怎么出现的,刚刚学for语句很多地方不懂,请教下

s +=i
这段意思是 s=s+i
for(i=1,s=0①;i<=100②;i++③) (1)
s+=i;(2)
(1)里是个循环体
for 语句先执行① (这个只执行1次)然后 运行② 做判断 判断i是不是比100小或者等于100
然后如果 满足条件(满足就为真,如果不满足 则退出循环) 就运行(2).然后运行③ i++就是 i=i+1 让i自增
在运行②..重复一直当②不满足就退出
s +=i 即 s=s+i
它们都是变量..第一次
s=0 i=1 s=s+i=0+1 当运行后 s就等于1了
然后继续运行到i++ 及i=i+1=1+1 =2 这时 i就等于2了
在比较② 结果为真运行(2)
s=1 i=2 s=s+i=1+2 当运行后 s就等于3了
这样循环下去..一直到不满足②

要是你要1+2+3****+99+100=5050就要稍微改变程序了
# include <stdio.h>
main()
{
int i,s;
for(i=1,s=0;i<=100;i++)
{ s+=i;
printf("%d+",i);
}
printf("s=%d\n",s);
}

s是一个和1+2+3+4.。。。
想输出1 2 3 4那直接printf("i=%d\n",i);就行了
想要有加号那还需要循环,就有点复杂了

#include "stdio.h"
main()
{int i,s;
char ch;
ch='+';
for(i=1,s=0;i<=100;i++) s+=i;
printf("s=");
for(i=1;i<=100;i++)
{printf("%d&qu