马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
我突然想到这里放了 _Bool 布尔类型 行不行 结果也能正常打印 计算结果 但是我自己有点不明白这个 布尔类型在这怎么解释
我知道布尔类型只有两个值 一个是真 一个是假 1 / 0#include <stdio.h>
int main()
{
int num=0, sum=0;
_Bool sataus;
do
{
printf("请输入合法的数字:");
sataus = scanf("%d", &num);
sum = sum + num;
}while (sataus);
printf("结果是:%d\n", sum);
return 0;
}
scanf返回值是成功读取的个数 ,当你输入非数字的时候,scanf返回值是0
参考下百科
http://baike.baidu.com/link?url=5PZCR94z0UfajRc5JjhT4JpDuLGFrusquYnSmYzgHsX3mZTjQ1MqY14ORjZ1kjlya-jdP3N5YBfUhBZzBx1AAa
通过这样判断当前是否输入合法数字来判断循环是否继续
|