C语言程序设计: 任意输入n个整数,分别统计奇数的和、奇数的个数、偶数的和、偶数的个数。

题目给了以下提示:
①先输入数据个数n
②利用循环输入n个数;
③定义四个变量存放统计结果,具体统计语句放在循环中。
提示:循环体内必须有输入数据的语句、统计输入数据个数的语句。

程序为:

#include<stdio.h>

void main()

{

int a[100],i,item,sum1,sum2,item1,item2;//sum1,sum2分别储存奇数、偶数之和,item1,item2分别表示奇数、偶数的个数

printf("请输入所要输入整数的个数:");

scanf("%d",&item);

printf("请输入%d个整数:\n",item);

for(i=0;i<item;i++)

scanf("%d",&a[i]);

sum1=sum2=item1=item2=0;

for(i=0;i<item;i++)

{

if(a[i]==0) item2++;//0是特殊偶数

else if(a[i]%2==0)

{

sum2=sum2+a[i];

item2++;

}

else

{

sum1=sum1+a[i];

item1++;

}

}

printf("奇数之和为:%d,偶数之和为:%d\n",sum1,sum2);

}

扩展资料:

for表达式

表达式1:一般为赋值表达式,给控制变量赋初值;

表达式2:关系表达式或逻辑表达式,循环控制条件;

表达式3:一般为赋值表达式,给控制变量增量或减量。

语句:循环体,当有多条语句时,必须使用复合语句。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
#include <stdio.h>
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);//打印
}本回答被提问者采纳
第2个回答  2014-04-01
#include <stdio.h>;

int main(int argc, char **argv) {
    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); //打印

    return 0;
}

第3个回答  2014-06-21
#include<stdio.h> void main() { int n,i,ji=0,ou=0; //ji用来统计奇数的个数,ou用来统计偶数的个数 int input,jihe=0,ouhe=0; //jihe用来统计奇数的和,ouhe用来统计偶数的和,input表示输入的数 scanf("%d\n",&n); //输入数n for(i=0;i<n;i++) { scanf("%d ",&input); //输入n个数 if(input%2==1) { jihe+=input; //求奇数的和 ji+=1; } else { ouhe+=input; //求偶数的和 ou+=1; } } printf("%d,%d,%d,%d\n",ji,jihe,ou,ouhe); }
第4个回答  2011-03-10
#include<iostream>
#define N 1000
using namespace std;
void main()
{
int sum1=0,sum2=0,count1=0,count2=0;
int data[N];
int i=0;
cout<<"input numbers,end by -1"<<endl;//输入-1表示结束
cin>>data[0];
while (data[i]!=-1)
{
while (data[i]<0)
{
cout<<"请输入正整数!\n";
cin>>data[i];
}
i++;
cin>>data[i];
}
i=0;
while(data[i]!=-1)
{
if (data[i]%2==0)//判断是否为偶数
{
sum1+=data[i];//偶数和
count1++;//偶数个数
}
else
{
sum2+=data[i];//奇数和
count2++;//奇数个数
}
i++;
}
cout<<"偶数个数= "<<count1<<" ,偶数和="<<sum1<<endl;
cout<<"奇数个数= "<<count2<<" ,奇数和="<<sum2<<endl;
}
相似回答