各位大神麻烦问下,这是什么情况为啥后面就不能输入了?谢谢

来源:3-7 赋值运算符

qq_慕田峪3350332

2022-05-20 17:52


int fun()

{

double a;

int d1 = 0;

printf("请输入一个大于0小于1000的可以带小数的数字  并用,键结束:\n");

scanf("%lf\n", &a);

if (a > 0 && a < 1000)

{

++d1;

for (; d1 == 1; d1++)

{

int b, c, d;

b = ((int)a / 100);

c = (((int)a % 100) / 10);

d = (((int)a % 100) % 10);

printf("百位:%d\t十位:%d\t个位:%d\n", b, c, d);

}

}

if (d1 == 0)

{

printf("输入有误!\n");

}

return 0;

}

int main()

{

int q;

fun();

printf("是否重新输入:1,是\t0,否\n");

scanf("%d\n", &q);

if (q == 1)

{

fun();

}

if (q == 0)

{

printf("即将退出程序!");

return 0;

}

http://img2.mukewang.com/628765c300017e5504790216.jpg

写回答 关注

1回答

  • Pertty宅特闷
    2022-07-06 22:52:53
    http://img1.mukewang.com/62c5a1c40001963814500660.jpg            
    下载视频          

    Pertty...

    你的for循环条件判断有问题,你应该是想执行死循环把,这种情况建议用while(true)进行死循环

    2022-07-06 22:53:55

    共 1 条回复 >

趣味 C++ 入门

C++ 入门,开启趣味学习之旅,揭开 C++ 的神秘面纱,让你不再望而生畏。

31202 学习 · 189 问题

查看课程

相似问题