#include<stdio.h>#include<math.h>int main(){ float num; printf("\t\t\t………………\n"); printf("………………:"); scanf("%f",&num); if(num!=0) printf("…………\'%.2f\'……,………………%.2f元\n",num,fabs(num)); else if(num>0) { if(num==0) printf("………………\'%f\'元\n",num); else { if(num>1000) printf("………………\'%.2f\'……,………………\n",num); else if(num>500) printf("…………\'%.2f\'……,…………\n",num); else printf("………………\'%.2f\'……,………………\n",num); } } else printf("对不起!您输入的值是非法值,请重新输入!\n"); return 0;}
不明白的是这个程序中的最后面的 else的语句 我前面的额条件是当num小于0时会有对应的if选择当num大于等于0时也有对应的if选择!为什么当我输入 字母的时候 显示的确实这个样子的
而不是去else这里输出 非法值? 本人小白一枚!初学c语言! 烦请各位大神指教!!谢谢
上面的程序中 if(num>0)是这样的 不是if(num!=0)
哦哦 谢谢您哈!按照您的说法我把程序中的float换位int型确实当我输入字母的时候他显示了非法值也就是最后的else哪里的语句! 但是我还是没明白您的意思 请您具体说下 !谢谢啦!!! 为什么当他是浮点型的时候不会显示最后的else呢?int却会呢?