2 u012732182 u012732182 于 2013.11.29 11:39 提问

c语言输入如何通过回车键结束

c语言中输入一组数据后用空格键隔开并用回车键结束输入,并统计输入数据中奇数和偶数的个数

3个回答

yu_xiaofei
yu_xiaofei   2013.11.29 12:04

#include
void main()
{
int i,n,m,jh=0,oh=0,jg=0,og=0;
printf("请输入n的值:\n");
scanf("%d",&n);//先输入数据个数n
printf("请输入%d个数,按空格键隔开:\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&m);
if(m%2!=0)
{
jh=jh+m;
jg++;
}
else
{
oh=oh+m;
og++;
}
}//利用循环输入n个数并计算
printf("\n奇数的个数:%d\n奇数的和为:%d\n偶数的个数:%d\n偶数的和为:%d\n",jg,jh,og,oh);//打印
}

u011003200
u011003200   2013.11.29 14:58

提问的版主你好:你的问题,不怎么清楚,上面这个scanf也是在回车的时候进行结束的,还有一种就是一个一个字符的接收,只有按下回车的时候你才输入停止。
你可有用malloc() 这个函数在循环接收stdin的字符,但输入‘\n’ 时whie(!n)这样就行了。

u012887301
u012887301   2013.11.29 15:01

#include
void main()
{
int count1=0;
int count2=0;
int num;
char ch;
while((ch=getchar())!='\n')
{

scanf("%d",&num);
if((num%2)==0)
count2++;

if((num%2)==1)
count1++;
}
printf("奇数个数为%d,偶数个数为%d\n",count1,count2);
}
在输入数据前,要加空格

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!