C语言的一个很简单的题

来源:百度知道 编辑:UC知道 时间:2024/05/17 03:22:51
#include<stdio.h>
#include<conio.h>
int a=1,b=100,c;
int main(void)
{
while(a<50&&b>50)
{
c=a+b;
a++;
b--;
}
c=c+50;
printf("%d",c);
getch();
return 0;

}

为什么最后的结果不对!这是一个求1到100的和 就是比如1+2+3+4..+100,这样一个形式!请高手指点

while(a<50&&b>50)
{
c+=a+b;
a++;
b--;
}

while 循环改为这样就可以了,注意c是求和所以要用+=

奇了,这么编???

#include<stdio.h>
#include<conio.h>
int a=1,b=100,c;
int main(void)
{
while(a<=50&&b>=50)
{
c+=a+b;
a++;
b--;
}
printf("%d",c);
getch();
return 0;

}

#include<stdio.h>
#include<conio.h>
#define N 99 //这样你改N的值就可以实现1+……+N的运算了。
int a=1,b=N,c=0; //
int main(void)
{
while(a<=N/2&&b>=N/2) //从可改变上限来讲
{
c+=a+b; //这里c 应该累加的吧,对应开始就要给c一个初值。
a++;
b--;
}

if(N%2!=0) c+=a; //如果是总共奇数个数上面循环完了后还有一个没加
printf("%d",c);
getch();
return 0;

}

sum 和没有保存
#include<stdio.h>
#include<conio.h>
int a=1,b=100,c,sum=0;
int main(void)
{
while(a<50&&b>50)
{