新手求助!!!!!!!!!!

代码是这样的.
前面省略,有#include
m=getch();
while(m!='\r' || n<100)
{
scanf("%d%d",&xh[i],&sg[i]);
m=getch();
sum+=sg[i];
i++;
n++;
}
我的目的是按回车键的时候退出循环 可是运行之后按回车键没反应 输入一小部分
数据后按回车也没反应。
是哪里出了问题吗?
刚学,不太懂,请赐教。

 while(m!='\r' || n<100)
->
while(m!='\n' || n<100)

\r是将当前位置移到本行的开头;
\n是将当前位置移到下一行的开头,
\n才是enter 键,不过偶尔是兼容的

清空输入缓冲区中的‘\n’

 while((tmp=getch() !=EOF && tmp!='\n')

{
;
}