if语句中有字符为什么就不执行了

2025-03-26 02:31:26
推荐回答(4个)
回答1:

scanf("%f%c\n",&p,&d); 很困难读到一个字符。
"%f%c -- 要求输入量之间有分隔符,键盘输入还要求有 Enter 键结束。%c 可能读到空白或别的键。
float l,v,c=0,q=0,p;
char d;
scanf("%f%f",&l,&v);
scanf("%f",&p);
fflush(stdin);
d = getchar(); // 或者 d = 0xff & getchar();
if(d=='E') { if(l-p>c) c=l-p; }
printf("%.2f\n",c);
--
输入参数:
4 2 1
E
结果
3.00

回答2:

scanf 语句改为: scanf("%f%f%f\n",&l,&v,&p);
scanf("%c",&d);

回答3:

倒数第二行少了一对大括号。

回答4:

把单引号改单引号.在把第二个IF前的括号放到第一个前试下