a
while(scanf("%f",&a)==1)
scanf语句只有在正确输入相应类型是才会返回函数值1,这样就可以验证输入数据是否为浮点型数据了,希望我的回答对你有所帮助
LZ要在C中实现这个功能比较麻烦,需要首先要用字符型输入来判断,之后把字符型转化为整型,我写了一段代码,给LZ参考:----------------------------------------------------------
#include
#define
MAX
100
//最大输入长度为100
int
CharToInt(char
*a,int
l)
//把字符型转化为int型
int
Ten(int
k)
//10的k次幂
int
main()
{
char
a[MAX]
int
b
//最终输入的整数存放在b中
int
i,l,flag
while(1)
//输入
{
for(i=0i
4)
//长度超过4位,非法输入
{
printf("输入非法,请重新输入\n")
continue
}
flag=0
for(i=0i
'9')
{
flag=1
break
}
}
if(flag==1)
//其中有一个不在,则输入非法
{
printf("输入非法,请重新输入\n")
continue
}
break
}
b=CharToInt(a,l)
//把字符型转化为int型
//继续执行下面程序
return
0
}
int
CharToInt(char
*a,int
l)
{
int
i=0
int
b=0
for(i=l-1i>=0i--)
{
b+=(a[i]-'0')*Ten(i)
}
return
b
}
int
Ten(int
k)
{
int
i=0
int
b=1
for(i=0i
评论
0
0
加载更多