logo资料库

全国计算机等级考试二级C语言最全上机题库.doc

第1页 / 共45页
第2页 / 共45页
第3页 / 共45页
第4页 / 共45页
第5页 / 共45页
第6页 / 共45页
第7页 / 共45页
第8页 / 共45页
资料共45页,剩余部分请下载后查看
1程序修改
给定程序MODI1.C中函数fun的功能是:读入一个整数k(2≤k≤10000)打印它的所有质因子(
{ int i,j=0; 定程序MODI1.C中函数fun的功能是:读入一个整数k(2≤k≤1000
}定程序MODI1.C中函数fun的功能是:读入一个整数k(2≤k≤10000)打印它的所有质因子(
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
5程序修改
给定程序MODI1.C中函数fun的功能是:读入一个整数k(2≤k≤10000)打印它的所有质因子(
3 程序设计
2 程序修改
3 程序设计题
2 程序修改
1. 程序填空
2. 程序修改
3. 程序设计
1. 程序填空
2. 程序修改
最新最全的题库,刚买的光盘 全国计算机等级考试 二级 C 语言上机题库 100 套 (从光碟拷贝出来的最完整版) (可以拷贝在 U 盘里,然后 ctrl+F 搜索,百分百 有答案,祝考试成功) 第一套 1. 程序填空 给定程序中,函数 fun 的功能是:计算下式前 n 项的和作为函数值返回。例如:当形参 n 的值为 10 的 时,函数返回:9.6125588。 第一处 s=0; 第二处 for(i=1;i<=n;i++) 第三处 s=s+(2.0*i-1)*(2.0*i+1)/(t*t); 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:统计 substr 所指字符串在 str 所指字符串中出现伯次数。 /**found**/ for(i=0;str[i];i++) /**found**/ if(substr[k+1]==’\0’) 3. 程序设计 请编写一个函数 fun,它的功能是:根据以下公 式求 JI 的值(要求满足精度 0.0005,即某项小于 0.0005 时停止送代):程序运行后,如果输入精度为 0.0005,则 程序输出为 3.14…。 double fun(double eps) { double s=1,t=1./3; int n=1; while(t>=eps) {s+=t;n++;t=t*n/(2.0*n+1) ;} return(s*2.0); } 第二套 1. 程序填空 给定程序中已建立一个带有头结点的单向链表, 链表中的各结点按数据域递增有序连接。函数 fun 的功 能是:删除链表中数据域值相同的结点,使之只保留一 个。 第一处 free(q); 第二处 q=p->next; 第三处 q=q->next; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:用选 择法对数组中的 n 各元素按从小到大的顺序进行排序。 /**found**/ p=j; /**found**/ p=i; 3. 程序设计 请编写一个 fun 函数,它的功能是:求出 1 到 m 之间 (含 m)能被 7 或 11 整除的所有整数放在数组 a 中, 通过 n 返回这些数的个数。 void fun(int m,int *a,int *n) { int i; *n=0; for(i=7;i<=m;i++) if((i%7==0)||(i%11==0)) a[(*n)++]=i; } 第三套 1. 程序填空 函数 fun 的功能是:逆置数组元素是的值。例如:若 a 所指数组中的数据依次为:1、2、3、4、5、6、7、8、 9,则逆置后依次为:9、8、7、6、5、4、3、2、1。形 参 n 给出数组中数组中数据的个数。 第一处 for(i=0;i
3. 程序设计 学生的记录由学号和成绩组成,N 名学生的数据 已在主函数中放入结构体数组 s 中,请编写了函数 fun, 它的功能是:函数返回指定学号的学生数据,指定的学 生号在主函数中输入,若没有找到指定学号,在结构体 变量中给学号置空串,给成绩置-1,作为函数值返回。(用 于字符串比较的函数是 strcmp)。 STREC fun(STREC*a,char *b) { STREC c; Int i; c.num[0]=’\0’; c.s=-1; for(i=0;ia[j]) 2 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:用递归算法计 算列中第 n 项的值。从第一项起,斐波拉契数列为:1、 1、2、3、5、8、13、21、 …… /**found**/ switch(g) /**found**/ case 1:return 1; case 2:return 1; 3 程序设计 某学生的记录由学号、8 门课程和平均分组成,学号和 8 门课程成绩已在主函数中给出。请编写函数 fun,它的功 能是;求出该学生的平均分放在记录的 ave 成员中。 2 void fun(STREC *a) { for(i=0;iave=a->ave+a->s[i]; a->ave/=N } 第六十套 1 程序填空 给定程序中,函数 fun 的功能是:有 N×N 矩阵,以主对 角线为对称线,对称元素相加并将结果存放在左下三角 元素中,右上三角元素来。 第 1 处 void fun (int) (*t)[N] 第 2 处 t[i][j]=t[i][j]+t[j][i]; 第 3 处 t[j][i]=0; 2 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:计算函数值, F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)其中 x 和 y 的值不等, z 和 y 的值不等。例如,当 x 的值为 9、y 的值为 11、z 的值为 15 时,函数值为-3.50。 /**found**/ #define FU(m,n) ((m)/(n)) /**found**/ return (value); } 3 程序设计 规定输入的字符串中只包含字母和*号。请编写函数 fun , 它的功能是:将字符串中的前导*号全部删除,中间和尾 部的*号不删除。 void fun (char *a) { int j=0; char *p=a; while (*p=='*')p++; while (*p){ a[j++]=*p; p++; } a[j]=0; } 第六十一套
1 程序填空 人员的记录由编号和出生年、月、日组成,N 名人员的 数据已在主函数中存入结构体数组 std 中。函数 fun 的 功能是:找出指定出生年份的人员,将其数据放在形参 k 所指出的数组中,由主函数输出,同时由函数值返回满 足指定条件的人数。 第 1 处 if (std[i].year==year) 1 4 7 2 5 8 3 6 9 交换后: 第 2 处 k[n++]=std[i]; 第 3 处 return (n); 1 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:读入一个整数 k(2≤k≤10000)打印它的所有质因子(即所有为素数的 因子)。 /**found**/ IsPrime (int n) /**found**/ if (!(n%i)) 2 程序设计 已知学生的记录由学号和学习成绩构成,N 名学生的数 据已存入结构体数组 a 中。请编写给函数 fun,函数的功 能是:找出成绩最高的学生的记录,通过形参指针传回 主函数(规定只有一个最高分),已给出函数的首部,请 完成函数。 fun(STU a[],STU *s) { int for (i=1; idata==ch)return n; 第三处 k=fun(head,ch); 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:删除 p 所指字符串的所有空白字符(包括制表符、回车符及 换行符)。输入字符串时用‘#’结束输入。 /**found**/ for(i=0,t=0;p[i];i++) /**found**/ c[t]=’\0’; 3. 程序设计 请编写一个函数 fun,将 ss 所指字符串中所有 下标为奇数位置上的字母转换为大写(若该位置上不是 字母,则不转换)。 void fun(char *ss) { int i; for(i=1;i=’a’&&ss[i]<=’z’) ss[i]-=32; } } 第五套 1. 程序填空 程序通过定义学生结构体数组,存储了若干个学生的学 号、姓名和三门课的成绩。函数 fun 的功能是将存放学 生数据的结构体数组,按照姓名的字典序(从小到大排 序)。请在程序的下划线处填入正确的内容并把下划线删 除,使程序得出正确的结果。 第一处 struct student t; 第二处 for(i=0;i0) 2 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:在 p 所指字符
串中找出 ASCII 码值最大的字符,将其放在第一个位置 上;并将该字符前的原字符向上顺序移动。 /**found**/ q=p+i; /**found**/ while(q>p) 3 程序设计 学生的记录由学号和成绩组成,N 名学生的数据 已在主函数中放入结构体数组 s 中,请编写了函数 fun, 它的功能是:把指定分数范围内的学生数据放在 b 所指 的数组中,分数范围内的学生人数由函数值返回。 int fun(STREC *a,STREC *b,int l,int h) {int i,j=0; for(i=0;i=1&&a[i].s<=h) b[j++]=a[i]; return j; } 第六套 1. 程序填空 给定程序中,函数 fun 的功能是:将形参 s 所指 定字符串中所有的字母字符顺序前移,其他字母顺序后 移,处理后字符串的首地址作为函数值返回。 第一处 t[j]=s[i];j++; 第二处 for(i=0;iscore[i]+=1; 第三处 return a; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:从 N 个字符串中找出最长的那个串,并将其地址作为函数值 返回。各字符串在主函数中输入,并放在一个字符串数 组中。 /**found**/ char *fun(char (*sq)[M]) /**found**/ return sp; 3. 程序设计 4
函数 fun 的功能是:将 a、b 中的两位正整数合 并形成一个新的整数放在 c 中。合并的方式是:将 a 中 的十位和个位依次放在变量 c 的百位和个位上,b 中的 十位和个位数依次放在变量 c 的十位和千位上。 #include void fun(int a,int b,long *c) { *c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10; } 第八套 1. 程序填空 函数 fun 的功能是:将形参观者工所指数组中的 前半部分元素中的值和后半部分元素中的值对换。形参 n 中存放数组中数据的个数,若 n 为奇书,则中间元素不 动。 第一处 p=(n%2==0)?n/2:n/2+1; 第二处 a[i]=a[p+i]; 第三处 a[p+i]=t; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:把主 函数中输入的三个数,最大的放在 a 中,最小的放在 c 中,中间的放在 b 中。 /**found**/ float k; /**found**/ if(*a<*c) 3. 程序设计 学生的记录由学号和成绩组成,N 名学生的数据 已在主函数中放入结构体数组 s 中,请编写了函数 fun, 它的功能是:把分数最高的学生数据放在 b 所指的数组 中,注意:分数最高的学生可能不止一个,函数返回分 数最高的学生的人数。 int fun(STREC *a,STREC *b) { int i,max=a[0].s,n=0; for(i=1;i
主函数(规定只有一个最高分),已给出函数的首部,请 完成函数。 fun(STU a[],STU *s) for(i=1;ia[i].s){ j=0; b[j++]=a[i];min=a[i].s; 6 } else if(min==a[i].s) b[j++]=a[i]; } return j; } 第十一套 1. 程序填空 给定程序中,函数 fun 的功能是:计算形参 x 所 指数组中 N 个数的平均值,(规定所有数均为正数),将 所指数组中大于平均值的数据移至数据的前部,小于等 于平均数的移至 x 所指数组的后部,平均值作为函数值 返回,在主函数中输出平均值和移动后的数据。 第一处 av=s/N; 第二处 y[j++]=x[i];x[i]=-1;} 第三处 if(x[i]!=-1) 仅供参考。 #include #define MAX100 int fun(int lim,int aa[MAX]) {int i,j,k=0; for(i=2;i<=lim;i++) { for(j=2;j<=(i/2);j++) if(i%j==0)break; if(j>(i/2))aa[k++]=i; } return k;} 第十四套 1. 程序填空 函数 fun 的功能是进行字母转换。若形参 ch 中 小写英文字母,则转换成相应的大写英文字母;若形参 ch 中是大写英文字母,则转换成相应的小写英文字母; 并将转换的结果作为函数值返回。 第一处 if((ch>=’a’)&&(ch<=’z’)) 第二处 return ch+’a’-‘A’ 第三处 return ch; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:给一 维数组 a 输入任意四个整数并按下列的规律输出。例如 输出 1、2、3、4,程序输出一下方阵。
a) 3 4 2 1 1 2 3 1 2 3 4 1 3 4 2 /**found**/ void fun(int *a) /**found**/ a[j]=a[ j-1]; 3. 程序设计 请编写函数 fun,函数的功能是:计算并输出给 定整数 n 的所有因子(不包过 1 和 n 本身)之和。规定 n 的值不大于 1000. int fun(int n) { int s=0,i; for(i=2;i=’a’&&*p<=’z’) pp[*p-‘a’]+=1; p++; } } 第十六套 1. 程序填空 人员的记录由编号和出生年、月、日组成,N 名人员的 数据已在主函数中存入结构体数组 std 中,且编号唯一。 函数 fun 的功能是:找出指定编号人员数据,作为函数 值返回,由主函数输出,若指定编号不存在,返回数据 中编号为空串。 第 1 处 STU fun(STU *std, char *num) 第 2 处 if(strcmp (std[i].num, num) = =0) 第 3 处 return (std[i]); 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:从 s 所指字符串中,找出与 t 所指字符串相同的子串的个数 作为函数值返回。 /**found**/ r++; p++; /**found**/ if(*r= =0) 3. 程序设计 函数 fun 的功能是:将 s 所指字符串中 ASCII 值 为偶数的字符删除,串中剩余字符形成一个新串放在 t 所指数组中。 #include #include void fun (char*s, char t[]) { int i, j=0;
for(i=0;i=’0’&&s[i]<=’9’) n++; 第 3 处 *t=n; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:通过 某种方式实现两个变量的交换,规定不允许增加语句和 表达式。例如变量 a 中的值原为 8,b 中的值原为 3,程 序运行后 a 中值为 3,b 中的值为 8. /**found**/ t=*x;*x=y; /**found**/ return(t); 3. 程序设计 请编写函数 fun,函数的功能是:求出 1 到 1000 之间能被 7 或 11 整除,但不能同时被 7 和 11 整除的所 有整数并将它们放在 a 所指的数组中,通过 n 返回这些 数的个数。 #include viod fun (int *a,int *n) {int i; *n=0; for(i=7;i<1000;i++) if(((i%7)= =0││(i%11)= =0 &&(i%77)!=0) a[(*n)++]=i; } 第十八套 1. 程序填空 给定程序中,函数 fun 的功能是:有 N×N 矩阵, 根据给定的 m(m<=n)值,将每行元素中的值均右移 m 个位置,左边值为 0. 8 第 1 处 for(i=0;i0.000001); return x1; } 第十九套 1. 程序填空 给定程序中,函数 fun 的功能是:将 a 所指的 3 ×5 矩阵中第 k 列的元素左移到第 0 列,第 k 列以后的每 列元素行依次左移,原来左边的各列依次绕到右边。 第 1 处 for(p=1;p<=k;p++) 第 2 处 for(j=0;j
分享到:
收藏