超级简单问题
#include <stdio.h>int main()
{
int num = 0;
long sum = 0L; // 0L表示类型为long的0
int status;
do
{
printf("请输入合法的数字:");
sum = sum + num;
status = scanf("%d", &num);
} while(status == 1);
printf("结果是:%ld\n", sum);
return 0;
}
//上面这个是某个大神写的代码。他的很完整。下面是我写的
#include<stdio.h>
int main()
{
int i,j,k=0;
for(i=1;;i++)
{
printf("请输入合法字符");
scanf("%d",&j);
if(j<0||j>9)
{
break;
}
k=k+j;
}
printf("结果是%d\n",k);
return 0;
}
//就是我这个如果输入的数字大于9之后,就不能加了,直接跳出来,我想问问,我这个在if里面怎么改,才能改为和上面一样的效果? 我自己改了一下,就是吧if里面改为了if(j<-9999||j>9999)
但是当我输入一个英文字母的时候,就进入死循环了。。。。 严凯 发表于 2020-11-17 15:39
我自己改了一下,就是吧if里面改为了if(j9999)
但是当我输入一个英文字母的时候,就进入死循环了。。。。
我自己已经解决了,{:10_269:}
#include<stdio.h>
int main()
{
int i,j,k=0,state;
for(i=1;;i++)
{
printf("请输入合法字符");
state=scanf("%d",&j);
if(!state)
{
break;
}
k=k+j;
}
printf("结果是%d\n",k);
return 0;
}
页:
[1]