1、10112非电类上机考试第一场试卷_B(2011年1月)学号 姓名 成绩 (考试时间70分钟,卷面分数100分)一、改错题:(50分)【题目】下面程序是求n1与n2(100n1n21000且n2-n1=200)之间符合下列条件的数:该数能被该数的各位数字之和整除且是奇数。其中fun函数的功能是将n1n2范围内符合条件的数据存放在x数组中。如n1=100,n2=200。则该程序运行后的输出结果是:111 117 133 135 153 171 195。【要求】只允许在原语句上进行修改,可以增加个别说明语句,但不能增加或删除整条程序语句或修改算法。【注意】 将源程序以“学号F1.cpp”为文件名存
2、入Z盘自己的目录中。#includevoid fun(int x,int m1,int m2)int i,j=0;for(i=m1;i=m2;i+)int s=0,n;while(n)s=s+n%10;n/=10;if( i/s & i/2 )xj+=i;void main()int i,n1,n2;int a100;coutn1n2;if(n1=1000|n2-n1=200)return;fun(a100,n1,n2);for(i=0;ai;i+)coutait;coutendl;二、编程题:(50分)【程序功能】求级数的前n项之和。【编程要求】1. 编写函数double fun(double x, int n),其功能是对于给定的x计算下列级数前n项的和,函数返回计算结果。其中:2. .编写main函数,接收从键盘输入n的值,调用函数fun计算级数前n项的和,并输出结果。【测试数据与运行结果】测试数据:n=10,x=0.5运行结果:s=0.323713【注意】将源程序以“学号F2.cpp”为文件名存入Z盘自己的目录中。