问题: 为模拟警用雷达枪的程序创建算法。如果速度超过59kmh,算法应读取汽车速度(以km / h为单位)并打印消息“Speeding”。该算法还应计算适当的罚款,80美元,超过极限1-10kmh,150美元,超过极限11-30kmh,500美元,31kmh以上,超过极限。使用下面的空格。
我的解决方案:
#include <stdio.h>
int main()
{
int speed = 0;
int limit = 59;
/*Get automobile speed from user*/
printf("Please enter the speed: ");
scanf("%d%*c", &speed);
/* Based on the speed, generates the corresponding fine*/
if (speed > limit)
{
printf("Speeding");
if((speed - limit) <= 10)
printf("Fine: $80");
else
if((speed - limit) >= 11 & (speed - limit) <= 30)
printf("Fine: $150");
else
if((speed - limit) >= 31)
printf("Fine: $500");
}
else
printf("The automobile is not speeding");
return (0);
}
这里的问题是它不会打印出“Speeding”消息。 任何人都可以帮我一把吗?
答案 0 :(得分:2)
printf
。在fflush(stdout
函数后使用printf
),或添加新行,即printf("Speeding\n");
您还可以使用setbuf(stdout, NULL);