c语言怎么控制输入数的范围?我想输入一个九位整数,这样行吗?

#include"stdio.h"
main()
{
int a;
(a>0&&a<1000000000);
scanf("%d",a);
if (a/10==0) printf("1");
else if (a/100==0) printf("2");
else printf("3");
return 0;
}

看你的程序里面,首先 (a>0&&a<1000000000);这行代码不能这样写;然后根据你的题意,要处理9位数字,使用int来保存达不到要求。你可以使用long型,你程序只判断到三位数?接下来的要判断吗,如果要判断的话建议你使用循环。
#include"stdio.h"
main()
{
long a;
scanf("%d",a);
if (a/10==0) printf("1");
else if (a/100==0) printf("2");
else printf("3");
return 0;
}追问

有没有办法控制输入数的范围? (a>0&&a<1000000000);我这行代码就是想控制数的范围是十位正整数

追答

程序控制输入数的范围啊,你可以设计个循环,对输入的数据进行验证,不满足要求的话,提示重新输入,直到满足要求为止,给你个实例,你自己参考来实现你的功能吧。
#include"stdio.h"
main()
{
double n;
do{
printf("prease input a num:\n");
scanf("%lf",&n);
}while(n1000000000);
printf("input success!");
}

温馨提示:答案为网友推荐,仅供参考
相似回答