在c语言中,要求用户输入的是整数,怎么判断当用户输入的是非整型时程序不运行,并且提醒用户重新输入整数

2025-01-05 04:21:51
推荐回答(2个)
回答1:

将下面这段代码加到你的程序中就可以了
int flag=0;//用flag做标记
float i;//这里用float,因为用户可能输入的是带小数的
do{
scanf("%f",i);
if(i!=(int)i) { //对i进行强制类型转换,判断转换成整型后的数是否和i的值相等
printf("您输入的数不是整型!请重新输入!"
flag=0;//输入的不是整数则将flag置为0
}while(!flag);//判断!flag是否为真,若是则继续执行循环

回答2:

应该可以用这个形式:
if(sizeof(value)!=sizeof(int))
printf("你输入的不是整形,请重新输入)
else scanf