当前位置:首页 » 编程语言 » c语言限制输入的是数字

c语言限制输入的是数字

发布时间: 2022-05-11 07:10:11

c语言怎样实现只允许输入数字,不允许输入符号、字母等

假设变量时num,则when(scanf("%d",&num)==1
&&
num>9)
scanf("%d",&num)==1意思是输入一个数,scnaf才返回数字1,其他字符则是错的,
&&
在两者都成立时才成立,num>9解决了输入时两位或两位以上的的数字,当符合这些条件时,才允许往下进行。

⑵ 在C语言里怎么控制输入的只是数字而不是其他的啊

char number;

number = getchar();
while( number < '0' || number > '9' ) {
printf( "你输入的不是 0 至 9 的数字,请重新输入" );
number = getchar();
}

⑶ c语言 如何做到只能输入数字,输入其他的,比如字母。就会提示重新输入。

将你的test1函数更改如下:

inttest1()

{

chars[20];

intnum=0,n,len,i;

while(1){

printf("请输入一个整数:");

gets(s);

len=strlen(s);

//for(n=0;s[n]=='0';++n);


num=0; //每次输入前,要确保num=0


for(i=len-1;i>=0;--i)

{

if((s[i]<'0')||(s[i]>'9'))

{

printf("输入错误,重新输入。 ");

break;//

}

num=10*num+s[i]-'0';//

}

if(i<0)

break;

}

//for(n=0;s[n]=='0';++n);

input=num;

return0;

}

⑷ C语言,要求只能输入数字,输入其它的会提示错误,重新输入

不知道你指的是输入一个数字或字符还是一串
下面是输入一个数字或字符的
#include
int
main()
{
char
c,c1;
while(1)
{
c=getchar();
c1=getchar();
//你打一个非数字时要按回车,回车本身也是一个字符,
用c1接收回车,以免打一个字符输出两个error
if(c>='0'&&c<='9')
break;
printf("error!\n");
}
}

⑸ c语言:如何限制数字在某个范围

用for循环语句
int
n;float
sum=0;
for(n=1;n<=1000;n++)
sum+=sum;
n++;
这是第一行求和。
第二行类似,用空格隔开时在输出语句上加上格式控制符空格就可以了,这道题是
printf("
%f";sum);
注意百分号前面的空格。
如果比较满意的话请采纳吧。-_-

⑹ C语言中可以限制输入类型吗例如只可以输入数字,输入其他会报错!!

判断是否为数值,是就通过,不是则报错。
用个if判断就OK了,应该有个函数能比较是否为数值的。
另外就从ASCII来判断,大于小于,就能把限定在数字范围内了。

⑺ C语言中怎么让输入的数只能为数字,不能为字母,如果是字母就重新输入!

#include <cstdio>
#include <cstdlib>
void main()
{
char* ch=(char*)malloc(100*sizeof(char));
scanf("%s",ch);
int num;
num=atoi(ch);
if(0==num)
{
if('0'==*ch)
printf("%d\n",num);
else
printf("您输入了非数字");
}
else
{
printf("%d\n",num);
}

}
已进过测试
有几点需注意
1输入数值不能超过100位数值,当然可将程序中的100改为更大值
2若要输入浮点值,可将atoi 改为atof 函数

⑻ C语言怎样保证输入的只是数字不能输入字母

可以使用这个语句,while( scanf("%d",&x)),如果输入是数字,则保存输入,执行下一条语句,如果不是数字,则舍弃此时输入,请求继续输入,直到输入的是数字为止

⑼ C语言中怎样限制输入值为字符串或数字

1.凡是数字皆为字符。任何数字首先是字符,然后才能是数字。所以这个问题应该是如何在字符中识别数字。直接将每个字符挨个提取出来,将他赋给一个整型,得到它的ASCII码值。然后根据ASCII码的范围来判断它到底是数字字符还是非数字字符。由下表可以得知,数字范围在48~57的都是数字字符。


2.用isdigit()函数判断字符串是否为数字。
isdigit()函数包含在ctype.h头文件中,
原型: int isdigit(char c);
用法:#include <ctype.h>
功能:判断字符c是否为数字
说明:当c为数字0-9时,返回非零值,否则返回零。

3.下面使用isdigit()实现一个判断字符串是否为数字的代码。这个函数是判断某一个字符是否为数字,可以用一个字符数组接受输入的字符,然后循环判断每一个字符是否为数字,如果其中一个不是数字,那么返回0,否则返回非0;包含了判断小数点的个数和负数符号-。

#include<stdio.h>
#include<ctype.h>
void main()
{
char a[10];
int i,j,flag=0; /*flag标记小数点个数,如果超过一个,那么就不是数字*/
printf("input a number: ");
scanf("%s",a);
for(i=0;a[i]!=0;i++)
{
if(i==0&&(a[i]=='+'||a[i]=='-'))
{
i++;
continue;
} /*如果第一个字符为+或-,不判断为非数字,可能是符号标志,继续向下判断*/
if(a[i]=='.')
{
flag++;
if(flag>1) /*如果小数点个数超过一个,则表示不是数字*/
{
break;
}
else if(flag==1) /*如果小数点个数为1个,则可能为小数,继续判断*/
{
continue;
}
}
j=isdigit(a[i]);
if(j==0)
{
break;
}
}
if(j!=0)
printf("%s yes",a);
else
printf("%s no",a);
getch();
}

⑽ C语言中如何限制使用者只能输入数字1~9求大神帮助

#include<stdio.h>
main()
{
int f;char s[2];//用一个字符数组稳当
do
{
printf("请输入1~9:");
scanf("%s",s);
if(s[0]<'1' || s[0]>'9')
f=0;
else f=1;
}while(!f);
printf("输入正确!\n\n");
}

热点内容
房产证加密码 发布:2025-05-11 02:49:17 浏览:339
服务器少个阵列卡盘符怎么找出来 发布:2025-05-11 02:34:07 浏览:635
斗地主源码开发 发布:2025-05-11 02:24:07 浏览:366
云服务器怎么设置攻击 发布:2025-05-11 02:22:09 浏览:826
python嵌套for循环 发布:2025-05-11 01:51:44 浏览:228
安卓怎么取消后台限制 发布:2025-05-11 01:45:45 浏览:258
一键搭建sk5服务器 发布:2025-05-11 01:40:09 浏览:514
鸿业acs加密锁模拟器 发布:2025-05-11 01:38:49 浏览:938
神庙逃亡2安卓版怎么玩 发布:2025-05-11 01:38:05 浏览:163
凯杰都什么配置 发布:2025-05-11 01:38:04 浏览:472