C++经典习题--初学者必学的实验题
cout<<\请确定数组大小,输入一个整数n(1 cout<<\这组数的最大值为\ cout<<\这组数的最小值为:\ cout<<\这组数的和为:\ printf(\数组中的数的平均值为:%.2f\\n\ return 0; } 14:数组中最大,最小,平均值 1.编写程序, 输入一个正整数(1 注释:这里要定义数组中的元素个数至少为10个,即int a[10]; #include int k,n,t; int a[10]; cout<<\请确定数组大小,输入一个整数n(1 11 Making by q649568163 C++经典习题--初学者必学的实验题 cin>>n; cout<<\请输入\个整数:\ int j=0; int min; int max; double sum=0; for(k=0;k cout<<\这组数的最大值为\ cout<<\这组数的最小值为:\ cout<<\这组数的和为:\ printf(\数组中的数的平均值为:%.2f\\n\ return 0; } 15:直方图数据的输出 2.餐饮服务质量调查打分 在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来。例如,一个公司的主管可能需要了解一年来公司的营业状况,比较一下各月份的销售收入状况。如果仅给出一大堆数据,这显然太不直观了,如果能将这些数据以条形图(直方图)的形式表示,将会大大增加这些数据的直观性,也便于数据的分析与对比。下面以顾客对餐饮服务打分为例,练习这方面的程序编写方法。假设有40个学生被邀请来给自助餐厅的食品和服务质量打分,分数划分为1~10这10个等级(1表示最低分,10表示最高分),试统计调查结果,并用*打印出如下形式的统计结果直方图。 Grade Count Histogram 1 5 ***** 2 10 ********** 3 7 ******* ... 12 Making by q649568163 C++经典习题--初学者必学的实验题 提示: – 定义数组score存放打的分数 – 定义数组count为计数器(count[0]不用) – 计算统计结果:设置一个循环,依次检查数组元素值score[i],是1则将数组元素count[1]加1,是2则将数组元素count[2]加1,依此类推 for (i=0; i – 打印统计结果,设置一个循环,按count数组元素的值,打印相应个数的符号’*’ 提示:输入40个数据太多,进行测试的时候,可以让计算机生成随机数代替手工输入数据。 由计算机随机自动生成数据,需在程序开始部分加入下面两条语句: #include srand((int)time(0));// 将该语句放在main函数里面变量定义之后的第一条语句。 score[i]=rand()+1;//通过循环语句系统每次会自动给score数组元素随机赋上1-10以内的不同的值。其中rand()会随机产生0——9之间的随机值。程序如下: #include score[i]=rand()+1; count[score[i]]++; } cout<<\ for(z=1;z<11;z++) { cout< 13 Making by q649568163 C++经典习题--初学者必学的实验题 } 16:求阶乘和 (2)求 ,其中n的值由键盘输入。(注:n的值最好在8以内,以防越界!) 要求:定义和调用函数double fact(int a);求取a!并返回结果。 注:此题仅作为自定义函数练习使用,这个程序用函数实现效率会很低。 #include int main() { double a,b,j; double pro=0; cout<<\请输入你所要求阶乘和的最高项的项数a(0>a; for(j=a;j>0;j--) { b=fact(j); pro=pro+b; } cout<<\结果为:\ return 0; } 17:做加法运算的得分与错题数 2.给小学生出加法考试题 编写一个程序,给学生出加法运算题,然后判断学生输入的答案对错与否,可以按下列要求以循序渐进的方式编程。 程序1 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”,程序结束。 程序2 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”,直到做对为止。 程序3 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则提示重做,显示“Not correct! Try again!”,最多给三次机会,如果三次仍未做对,则显示“Not correct! You have tried three times! Test over!”,程序结束。 14 Making by q649568163 C++经典习题--初学者必学的实验题 程序4 连续做10道题,通过计算机随机产生两个1~10之间的加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct!”,不给机会重做,10道题做完后,按每题10分统计总得分,然后打印出总分和做错的题数。 编程要求: 1. 较好的用户输入输出提示 2. 使用子函数实现两个数相加的测试。此函数的输入参数是两个加数,返回值是用户运算的正确与否(用1或者0表示)。在此函数中首先读入用户输入的加法结果,并与正确结果进行比较。 int AddTest(int a, int b) ; 3. 仅仅要求完成程序4的编写调试运行工作,程序1至程序3是对编写程序4的引导。若可以直接编写出程序4,可以直接编写,如果不能一步编写成功,可以根据引导一步步编写。 (一)方法:C++: #include int main() { int i,mark=0,wrong=0; cout<<\请输入运算结果:\ for(i=1;i<=10;i++) { int a,b,answer,d,sum; srand((int)time(0)); a=rand()+1; b=rand()+1; AddTest(a,b); cout<>answer; if(answer==AddTest(a,b)) { int right=0; right=right+1; mark=mark+10; cout<<\ } else if(answer !=AddTest(a,b)) { 15 Making by q649568163