首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于getchar()的有关问题

2012-06-24 
关于getchar()的问题我想请教一下下面程序中getchar()的作用是什么为什么没有getchar()程序运行的结果就不

关于getchar()的问题
我想请教一下下面程序中getchar()的作用是什么
为什么没有getchar()程序运行的结果就不对?
#include<stdio.h>
#include<string.h>
int main()
{
int N,k;
while(scanf("%d",&N)&&(N!=0))
{

char a[1000][15];
int count[1000]={0};
int max=0;
count[0]=1;
getchar();

for(int i=0;i<N;i++)
{
gets(a[i]);
for(int j=0;j<i;j++)
{
if(strcmp(a[i],a[j])==0)
{
count[j]++;
}
}
}

for(int m=0;m<N;m++)
{
if(count[m]>max)
{
max=count[m];
k=m;
}
}

puts(a[k]);

}
return 0;
}

[解决办法]
getchar读取的scanf输入数字后按下的回车

楼主 可以这样看一下

char c = getchar();
printf("C = %c\n",c);
[解决办法]
你的程序中getchar()用于接收回车符。
[解决办法]

C/C++ code
while(getchar() != '\n')    countinue;
[解决办法]
将getchar();改为rewind(stdin);试试。
[解决办法]
最好用fflush
[解决办法]
探讨

将getchar();改为rewind(stdin);试试。

热点排行