为什么c语言运行时回车没反应

2024-11-22 05:36:52
推荐回答(4个)
回答1:

  1. 没有反应的原因有很多种。比如错误输入,类型错误,代码逻辑错误。不同的情况应该分开分析。

  2. 例如 scanf("%lf %lf\n",&x,&e);
    这样的语句在回车后就没有反应,必须输入\n后才会有反应。

    因为非输出控制符必须原样输入。\n在scanf函数当中并不是控制符,这里没当成换行符使用。用scanf 不要加入“\n”非输入控制符,系统在运行时会自动换行。

回答2:

scanf里的东西除了%带的格式控制以外,在输入时其余的必须照样输入,所以去掉/n应该就可以了
建议:scanf里除了%和它所带的格式控制字符以外不要有别的东西,之间也不要用任何诸如逗号,空格之类的隔开,因为没有隔开的话输入的时候很自由,可以输一个按回车,也可以输入一个之后用逗号,空格,Tab键将输入的东西隔开,输入完之后用回车结束就可以了

回答3:

把scanf("%lf %lf\n",&x,&e);的\n去掉
改为scanf("%lf %lf",&x,&e);
另外,sat函数不用那么复杂,可改为:
int sat(int n)
{
if (n%2) return -1;
else return 1;
}
qin函数里面应该是q=q+x吧

回答4:

scanf("%lf %lf\n",&x,&e);
里面的\n去掉