有关字符处理问题
下面的代码是,解决所输入的路程,来求其所需的费用、那么问题是:如何才能识别所输入的是数字而不是其他字符;
void main()
{
int i,flag;
float l, sum;
for(i=0;i<2;i++)
{
flag=1;
do
{
fflush(stdin);
if(flag==1)
{
printf("qing %dth shu ru ru cheng:",i+1);
flag=0;
}
else
{
printf("Sorry,Error,Pls input again(0~100):");
}
scanf("%g",&l);
if(l>0&&l<100)
break;
}while(1);
if(l<=2)
sum=8;
else
sum=8+(l-2)*2.1;
printf("sum:%g RMB\n",sum);
}
getch();
}
输入其他字符的运行结果:
qing 1th shu ru zi mu:9
sum:22.7 RMB
qing 2th shu ru zi mu:a
sum:22.7 RMB
请按任意键继续. . .