【数组】14周项目三。(正版)
2013-11-27 16:39
274 查看
上机内容:C++程序的编写和运行
上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程
我的程序:
运行结果:
心得体会: 一开始把max和min的赋值弄到for循环里面去了,导致每次循环都是重新赋值,师哥就是棒!
学号那里的也根据王颖的做出来了,当时想的太复杂,其实很简单的。。。
知识点总结:一些细节
上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程
我的程序:
/* Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 作 者:赵玲玲 * 完成日期:2013 年 11 月 27 日 * 版 本 号:v1.0 * 输入描述: 略 * 问题描述:成绩处理 * 程序输出: 略 * 问题分析:数组应用,循环应用,不同功能的函数调用 */ #include <iostream> #include <cmath> //用到开方 using namespace std; int cin_gra(int); //输入成绩 void cout_gra(); //输出最高最低和平均数 void cout_s(); //输出标准偏差 int a[100],n,i,ave; //定义外部变量a[100](不会超过100名同学),输入的个数n,后面用到的i,ave int main() { cout<<"小组共有多少名同学?"; cin>>n; cin_gra(n); //调用函数 cout_gra(); cout_s(); return 0; } //输入成绩 int cin_gra(int n) { cout<<"请输入同学的成绩(1-100):"<<endl; for(i=1;i<=n;i++) //车轮式的输入成绩 { cout<<"输入第"<<i<<"位同学的成绩:"; //freopen("input.txt","r",stdin);这里没法用。。。 cin>>a[i]; if(a[i]>100||a[i]<0) { cout<<"输入第"<<i<<"位同学的成绩:"; //如果输入的成绩大于100,提示错误 i--; } } return 0; } void cout_gra() { int max=0,min=100,num1=0,num2=0,sum=0;//给max赋值为0,肯定都比他大;同理给min赋值为100 for(i=1;i<=n;i++) { if(max<a[i]) //如果有比max还大的数,就将最大值的值给max { max=a[i]; } if(min>a[i]) //同理求min { min=a[i]; } sum+=a[i]; //求出总和ave=sum/n; } ave=sum/n; //求平均数 for(i=1;i<=n;i++) { if(max==a[i]) //求得最高分的人数 { num1++; } if(min==a[i]) //求得最低分的人数 { num2++; } } cout<<"最高成绩为:"<<max<<" "<<"最低成绩为:"<<min<<" "<<"平均成绩为:"<<ave<<endl; cout<<"取得最高成绩"<<max<<"分的共"<<num1<<"人,";cout<<"他们的学号是:"; for(i=1;i<=n;i++) { if(max==a[i]) { cout<<i<<" "; //学号 } } cout<<endl; cout<<"取得最低成绩"<<min<<"分的共"<<num2<<"人,";cout<<"他们的学号是:"; for(i=1;i<=n;i++) { if(min==a[i]) { cout<<i<<" "; } } cout<<endl; return ; } //标准偏差 void cout_s() { double s1=0,s; for(i=1;i<=n;i++) { s1+=(a[i]-ave)*(a[i]-ave); //先在循环里面讲平方根里面的除数求出 } s=sqrt(s1/(n-1)); //求出标准偏差 cout<<"标准偏差是:"<<s<<endl; return ; }
运行结果:
心得体会: 一开始把max和min的赋值弄到for循环里面去了,导致每次循环都是重新赋值,师哥就是棒!
学号那里的也根据王颖的做出来了,当时想的太复杂,其实很简单的。。。
知识点总结:一些细节
相关文章推荐
- 远程用户不能访问IIS发布成功的网站
- Android加载器Loader使用
- JMS API中各个概念的定义
- while((ch1=getchar())!=EOF) 是什么意思
- 数位DP:不要62(第一道题,主要是弄懂数位DP是啥意思)
- python 多线程
- 根据IP获取省市 .
- 【Android Developers Training】 9. 覆盖于布局之上的Action Bar
- GridView实现自动编号;GridView实现自定义时间货币等字符串格式;GridView实现用“...”代替超长字符串;GridView一般换行与强制换行;GridView显示隐藏某一列;
- centos6 下安装星际译王stardict3.0
- C#事件(event)解析
- Lucene使用IKAnalyzer分词实例 及 IKAnalyzer扩展词库
- richTextBox设置选中的字体属性
- 实战BULK COLLECT(成批聚合类型)和数组集合type类型is table of 表%rowtype index by binary_integer
- ROS on ARM pcduino
- 使用libxml2创建和解析xml文件
- PLSQL 连接不上64位ORACLE数据库解决办法
- SQL SERVER 2005数据库还原的方法
- vmware workstation虚拟机中的虚拟网络简介
- Oracle 动态性能表 v$session & v$process