10-11-2 非电类上机考试第一场试卷_B(2011 年 1 月)
学号 姓名 成绩
(考试时间 70 分钟,卷面分数 100 分)
一、改错题:(50 分)
【题目】下面程序是求 n1 与 n2(100<n1<n2<1000 且 n2-n1<=200)之间
符合下列条件的数:该数能被该数的各位数字之和整除且是奇数。其中 fun 函数
的功能是将 n1~n2 范围内符合条件的数据存放在 x 数组中。如 n1=100,
n2=200。则该程序运行后的输出结果是: 111 117 133 135 153 171
195。
【要求】只允许在原语句上进行修改,可以增加个别说明语句,但不能增加或删
除整条程序语句或修改算法。
【注意】 将源程序以“学号 F1.cpp”为文件名存入 Z 盘自己的目录中。
#include<iostream.h>
void 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 )
x[j++]=i;
}
}
void main()
{
int i,n1,n2;
int a[100];
cout<<"请输入起始范围:";
cin>>n1>>n2;
if(n1<100||n1>=1000||n2-n1>=200)
return;
fun(a[100],n1,n2);
for(i=0;a[i];i++)
cout<<a[i]<<' ';
cout<<endl;
}
评论0
最新资源