鱼C论坛

 找回密码
 立即注册
查看: 1600|回复: 2

[已解决]问题求助

[复制链接]
发表于 2021-10-26 17:27:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
编写一个程序读取整数,直到输入0为止。 在输入结束后,程序应该报告输入的偶数(不包括0)的总数、偶数的平均值、奇数的总数和奇数的平均值。  
最佳答案
2021-10-26 22:54:50
  1. #include<iostream>
  2. #include<algorithm>
  3. #include<vector>
  4. #include<numeric>
  5. using namespace std;


  6. int main(){
  7.     vector<int> even;
  8.     vector<int> single;
  9.     while(1){
  10.         int tem=0;
  11.         cin>>tem;
  12.         if(tem==0){break;}

  13.         if(tem%2 == 0){
  14.             even.emplace_back(tem);
  15.         }else{
  16.             single.emplace_back(tem);
  17.         }
  18.     }
  19.     double even_avg=(double)accumulate(even.begin(),even.end(),0)/(double)even.size();
  20.     cout<<"偶数总数: "<<even.size()<<" "<<"偶数平均数"<<even_avg<<endl;
  21.     double single_avg=(double)accumulate(single.begin(),single.end(),0)/(double)single.size();
  22.     cout<<"奇数总数"<<single.size()<<"奇数平均数"<<single_avg<<endl;
  23.     return 0;
  24. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-26 19:18:52 | 显示全部楼层
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int num, A = 0, a = 0, B = 0, b = 0;
  5.     while(1){
  6.         scanf("%d", &num);
  7.         if(num == 0) break;
  8.         else{
  9.             if(num%2){
  10.                 A += num;
  11.                 a ++;
  12.             }
  13.             else{
  14.                 B += num;
  15.                 b ++;
  16.             }
  17.         }
  18.     }
  19.     printf("偶数总数:%d\n偶数平均值:%f\n奇数的总数:%d\n奇数平均值:%f", B, (float)B/b, A, (float)A/a);
  20.     return 0;
  21. }
复制代码
输入/输出:
  1. 1 2 3 4 5 6 7 8 9 0
  2. 偶数总数:20
  3. 偶数平均值:5.000000
  4. 奇数的总数:25
  5. 奇数平均值:5.000000
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-26 22:54:50 | 显示全部楼层    本楼为最佳答案   
  1. #include<iostream>
  2. #include<algorithm>
  3. #include<vector>
  4. #include<numeric>
  5. using namespace std;


  6. int main(){
  7.     vector<int> even;
  8.     vector<int> single;
  9.     while(1){
  10.         int tem=0;
  11.         cin>>tem;
  12.         if(tem==0){break;}

  13.         if(tem%2 == 0){
  14.             even.emplace_back(tem);
  15.         }else{
  16.             single.emplace_back(tem);
  17.         }
  18.     }
  19.     double even_avg=(double)accumulate(even.begin(),even.end(),0)/(double)even.size();
  20.     cout<<"偶数总数: "<<even.size()<<" "<<"偶数平均数"<<even_avg<<endl;
  21.     double single_avg=(double)accumulate(single.begin(),single.end(),0)/(double)single.size();
  22.     cout<<"奇数总数"<<single.size()<<"奇数平均数"<<single_avg<<endl;
  23.     return 0;
  24. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-26 00:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表