2011年9月全国计算机等级考试二级C语言上机题库(全)
第九十一套 1程序填空
给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。
第一处 max=*std;
第二处 if(max.age printf(“\\nName:%s,Age:%d\\n”,max.name,max.age); 2 程序修改 给定程序MODI1.C中函数fun的功能是:实现两个整数的交换。例如给a和b分别输入:60和65,输出为:a=65 b=60 /**found**/ void fun(int *a,int *b) /**found**/ t=*b;*b=*a;*a=t; 3程序编写 请编写一个函数void fun(int t t[M] [N],int pp [N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指唯一数组中。二维数组中的数已在主函数中赋予。 void fun(int tt[M][N],int pp[N]) { int i,j,min,k; for(i=0;i min=tt[0][i];k=0; for(j=1;j pp[i]=tt[k][i]; } } 第九十二套 1 程序填空 给定程序中,函数fun的功能是:将a和b所指的两字符串转达换成面值相同的整数,并进行相加作为函数值返回,规定字符串只含9个以下数字字符。 第一处 d=d*10+*s-?0?; 第二处 s++; 第三处 return ctod(a)+ctod(b); 2 程序修改 给定程序MODI1.C中函数fun的功能是:分别统计字符串大写字母和小写字母的个数和。 /**found**/ *a=*a+1; /**found**/ *b=*b+1; 3程序设计 请编写函数fun,函数的功能是:使用实型整数保留2位小数,并对第三位进行四舍五入(规定实型数为正数) float fun(float h) { long w; w=h*100+1.5; return (float)w/100; } 第九十三套 1 程序填空 给定程序中,函数fun的功能是:找出100—x(x<=999)之间各位上的数字之和为15的所有整数,然后输出,符合 46 2011年9月全国计算机等级考试二级C语言上机题库(全) 条件的整数个数作为函数值返回。 第一处 n=0; 第二处 while(t<=x) 第三处 t++; 2 程序修改 给定程序MODI1.C中函数fun的功能是:先将s所指字符串中的字符按逆序放到t所指字符串中,然后把s所指的字符串中的字符按正序连接到t所指串的后面。 /**found**/ int i,s1; /**found**/ t[i]=s[s1-i-1]; 3程序设计 请编写函数fun,函数的功能是:将a、b中的两个两位整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位依次放在变量c的千位和十位上。 void fun(int a,int b,int *c) { *c=(b/10)*1000+(a/10)*100+(b)*10+(a); } 第九十四套 1 程序填空 给定程序中,函数fun的功能是:从三个形参a、b、c中找出中间那个数,作为函数值返回。 第一处 t=a>b?(b>c?b: (a>c?c:a)):((a 给定程序MODI1.C中函数fun的功能是:首先将大写字母转换为对应的小写字母:若小写字母为a—u,则将其转换为其后的第五个字母;若小写字母为v—z,使其值减21。转换后的小写字母作为函数值返回。 /**found**/ c=c+32; /**found**/ c=c+5; 3程序设计 请编写函数fun,函数的功能是:计算并输出??例如,在主函数中从键盘给n输入20后,输出为s=534.188884。注意:要求n的值大于1但不大于100. double fun(int n) { int i; double fac=1.0; double sum=1.0; for(i=2;i<=n;i++) {fac+=sqrt(i); sum+=fac; } return sum; } 第九十五章 1 程序填空 给定程序中函数fun的功能是:调用fun函数建立班级通讯录。通讯录中记录每位同学的编号、姓名和电话号码。班级的人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为mylife5.dat的二进制文件中。 第一处 int fun(STYPE *std) 第二处 FILE *fp;int i; 第三处 fwrite(&std{i},sizeof(STYPE),1,fp); 2 程序修改 给定程序MODI1.C中函数fun的功能是:先将在字符串s中的字符按正顺序放到t串中,然后把s中的字符按逆顺序放到他串后面。 /**found**/ for(i=0;i 47 2011年9月全国计算机等级考试二级C语言上机题库(全) /**found**/ t[2*s1]=0; 3程序设计 请编写函数fun,函数的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a的十位和个位数依次放在c位的千位和十位上,b的十位和个位数依次放在c的百位和个位上。 void fun(int a,int b,long *c) { *c=(a/10)*1000+(b/10)*100+(a)*10+(b); } 第九十六套 1 程序填空 程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。函数fun的功能是:对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。 第一处 b->sno=10004; 第二处 strcpy(b->name,”LiJie”); 第三处 fun(&t); 2 程序修改 给定程序MODI1.C中函数fun的功能是:应用递归算法求形参a的平方根。求平方根的迭代公式如下:例如:a为2时平方根值为1.414214 /**found**/ double fun(double a,double x0) /**found**/ if(fabs(x1-x0)>0.00001) 3 程序设计 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分数的学生数据放在b所指的数组中,并把人数通过形参n传回。 double fun(STREC *a,STREC *b,int *n) { double t=0; int i; *n=0; for(i=0;i for(i=0;i if(a[i].s>t)b[(*n)++]=a[i]; return t; } 第九十七套 1 程序填空 给定程序中函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计其出现的次数。 第一处 ch=tolower(*s); 第二处 k[n]+=1; 第三处 if(max 给定程序MODI1.C中函数fun的功能是:求s的值。例如:当K为10时,函数应为1.533852. /**found**/ float fun(int k) /**found**/ return s; 3程序设计 请编写函数fun,函数fun的功能是:计算并输出下列级数和:例如,当n=10时,函数值为0.909091. double fun(int n) { double s=0.0; 48 2011年9月全国计算机等级考试二级C语言上机题库(全) int i; for(i=1;i<=n;i++) s=s+1.0/(i*(i+1)); rerurn s; } 第九十八套 1 程序填空 给定程序中函数fun的功能是:将形参n中个位上为偶数的取出,并按原来从高位到低位的顺序组成一个新的数。并作为函数值返回。 第一处 i=1; 第二处 while(s) 第三处 x=x+t*i; i=i*10; 2 程序修改 给定程序MODI1.C中函数fun的功能是:输出M行N列的整数方阵,然后求两条对角线上元素之和,返回此和数。 /**found**/ int fun(int n,int xx[][M]) /**found**/ printf(“%d”,xx[i][j]); 3程序设计 请编写函数fun,函数fun的功能是:将a、b中的两位正整数合并形成一个新的整数放在c中。合并的方式为:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的各位和百位上。 void fun(int a,int b,long *c) { *c=(a/10)*1000+(b)*100+(a)*10+(b/10); 第九十九套 1 程序填空 给定程序中函数fun的功能是:求出形参aa所指字符串数组中最长的字符串长度,其余字符串左边用字符*补齐,使其与最长字符串等长。字符串数组中共有M个字符串,且串长 第二处 for(j=len;j>=0;j--) 第三处 ss[i][j]=?*?; 2 程序修改 给定程序MODI1.C中函数fun的功能是:计算整数n的阶乘。请改正程序中错误或在下划线处填上适当内容,删掉下划线,使它能计算出正确结果。 /**found**/ result *=n--; /**found**/ return result; 3程序设计 请编写函数fun,函数fun的功能是:从s所指的字符串删除给定的字符。同一字母的大小写按不同字符处理。 int fun(char s[],char c) { char *p=s; int i=0; while(*p) { if(*p!=c)s[i++]=*p; p++;} s[i]=0; } 第一百套 1程序填空 给定程序通过定义并赋值的方式,利用结构体变量存储了一名学生的学号姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系统a。 第一处 void modify(STU *ss,float a) 49 2011年9月全国计算机等级考试二级C语言上机题库(全) 第二处 ss->score[i]*=a; 第三处 modify(&std,a); 2 程序修改 给定程序MODI1.C中函数fun的功能是:求K<13>,所求阶乘的值作为函数值返回。例如,若 K=10,则应输出3628800 /**found**/ if(k>0) /**found**/ else if(k= =0) 3程序设计 程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int a[ ] [N],int n),函数的功能是:使数组左下三角元素中的值乘以n。 int fun(int a[][N],int n) {int i,j; for(i=0;i 50