This question already has answers here:
How to do scanf for single char in C [duplicate]
(11个答案)
3年前关闭。
只是测试一些代码;在我输入“ n”之前,以下代码应该运行。但是它在一轮后就停止了。谁能解释一下,并帮助我实现我想要的?
谢谢。
我真的很感谢每个人的评论。我确实在网上搜索了GDB,并在以后使用了它。我不得不说,这使发现问题变得容易得多。
非常感谢。
另外最好写
(11个答案)
3年前关闭。
只是测试一些代码;在我输入“ n”之前,以下代码应该运行。但是它在一轮后就停止了。谁能解释一下,并帮助我实现我想要的?
#include <stdio.h>
int main ()
{
char another = 'y';
int num;
while ( another == 'y' )
{
printf ("Enter an number ");
scanf ("%d", &num);
printf ("square of %d is %d", num, num * num);
printf ("\nWant to enter another number y/n\n");
scanf ("%c", &another);
}
}
谢谢。
我真的很感谢每个人的评论。我确实在网上搜索了GDB,并在以后使用了它。我不得不说,这使发现问题变得容易得多。
非常感谢。
最佳答案
采用
scanf (" %c", &another);
^^^^^
另外最好写
printf ("square of %d is %lld", num, ( long long int )num * num);
^^^^ ^^^^^^^^^^^^^^^^^^^^
关于c - 为什么C中的while循环会突然终止,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36012829/
10-10 20:56