为什么要使用getchar?
在这个程序中【基本题】有三个整数a、b、c,由键盘输入,输出其最大的数。
我想问下为什么最后要 使用getchar(),有什么用吗?还是本身就是多余错误的?
#include <stdio.h>
/*
* 返回 3个整数的 最大值
*/
int max(int a, int b, int c)
{
int temp = 0;
a > b ? temp = a : temp = b;
c > temp ? temp = c : temp = temp;
return temp;
}
int main()
{
int a;
int b;
int c;
printf("请输入3个整数(如:3 14 36) : \n");
scanf("%d%d%d", &a, &b, &c);
printf("最大的数为:%d\n", max(a, b, c));
getchar();
getchar(); //??????????????为什么要使用
return 0;
}
[解决办法]
你不加也可以……
[解决办法]
一般是debug调试时不让直接退出,而是按任意建继续。。。
[解决办法]
我感觉没什么用。
[解决办法]
多加了一个
[解决办法]
调试时 让控制台不一闪而过
[解决办法]
第一个getchar() 干掉输入的回车
第二个getchar() 是为了debug时不直接退出 over
[解决办法]
第一个 getchar() 用于“吃”掉输入流中的余留数据
第二个 getchar() 用于暂停程序的执行
参考http://baike.baidu.com/view/1390039.htm
另外,你这两句有问题吧?
a > b ? temp = a : temp = b;
c > temp ? temp = c : temp = temp;
[解决办法]
好像是清空输入缓冲区,以前见过这样的一个例子,不过忘在哪了……
[解决办法]
加一个就行了,不加也可以。就是为了让你在双击exe后,程序不会一闪而过看不到结果。也可以用system("pause")之类的,或者直接命令行里运行。
为什么要使用getchar?该如何解决
为什么要使用getchar?在这个程序中【基本题】有三个整数a、b、c,由键盘输入,输出其最大的数。我想问下为什么最
