计算机二级C上机考试题库2.docx
- 文档编号:17566818
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:13
- 大小:22.52KB
计算机二级C上机考试题库2.docx
《计算机二级C上机考试题库2.docx》由会员分享,可在线阅读,更多相关《计算机二级C上机考试题库2.docx(13页珍藏版)》请在冰点文库上搜索。
计算机二级C上机考试题库2
类型一:
调整一个数的个、十、百、千位
1.请编写函数fun,其功能是:
将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是:
将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。
例如,当a=45,b=12,调用该函数后c=4152。
填空:
STYPEFILEFp
改错:
for(i=0;i<=sl;i++)把s后字母改为小写L
t[2*sl]='\0';
2.c=1524。
填空:
*fwstrstr
改错:
voidfun(longs,long*t)
sl=sl*10;
3.c=2514。
填空:
fpfclose(fp)fname
改错:
for(i=j+1;i<=n-1;i++)
p=i;
4.c=5142。
填空:
"r"fsft
改错:
if(d%2==0)
s/=10;
5.c=5241。
填空:
kN-1temp
改错:
fun(inta[][M],intm)
a[j][k]=(k+1)*(j+1);
6.c=2415。
填空:
structstudent*a->score[i]a
改错:
char*fun(char(*sq)[M])
returnsp;
7.c=1425。
填空:
0xt++
改错:
inti,s1;s后面是小写的L
t[i]=s[sl-i-1];
8.c=4251。
填空:
1si*10
改错:
intfun(intn,intxx[][M])
printf("%d",xx[i][j]);
类型二:
与*号有关的操作
9.请编写函数fun,它的功能是:
将字符串中的前导*号全部删除,中间和尾部的*号不删除。
删除前导*号
填空:
[N]t[i][j]t[j][i]
改错:
#defineFU(m,n)((m)/(n))
return(value);
10.除尾部*号,其余*删除
填空:
t[][N]i=0;i 改错: intfun(inta[],intm) elseif(m>a[mid]) 11.请编写函数fun,它的功能是: 除了字符串前导和尾部的*号之外,将串中其他*号全部删除。 只删除中间*号 intj=0;char*q=a; while(*q&&q while(*h&&*p&&h {if(*h! ='*')a[j++]=*h;h++;} while(*p)a[j++]=*p++; a[j]=0; 填空: sum=0t[i][i]1 改错: doubler; while(fabs(m-n)>0.001) 12. 删除串中所有*号 i 填空: 1j++j 改错: t=a;a=b;b=t; return(b); 13. 删除串尾*号 填空: Ni-1 改错: a2=k/10; returni; 14. 除前导*外其他删除* 填空: Nkss[i] 改错: intk=0; while(*p||*q) 15. 删除前导和尾部* 填空: Nsubstr0 改错: fun(intx,inty,intz) returnj; 16. 串尾部*号不多于n个 填空: a[i]%2a[j]j 改错: fun(intn) if(n==1) 17.前导*不多于n个 填空: MN0 改错: t=1; return(2*s); 18.串前*移至串尾 填空: ab.namescore[i] 改错: s[j++]=s[i]; s[j]=0; 19.编写一个函数,从传入的num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址 (用****作为结束输入的标志)。 inti,k=0,maxlen; maxlen=strlen(a[k]); for(i=1;i {if(strlen(a[i])>maxlen) {maxlen=strlen(a[i]);k=i;}} *max=a[k]; 填空: [N]ii+1 改错: aa[i]=m%k; printf("%d",aa[i-1]); 类型三: 与下标或ASCII码有关 20.请编写一个函数fun,它的功能是: 将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。 下标奇数位置子母改大写 填空: kNa[k][i] 改错: for(i=strlen(t)-1;i;i--) if(t[j]>t[j+1]) 21.请编写—个函数voidfun(char*ss),下标奇数位置子母改大写 c 填空: NULLnhead,ch 改错: for(i=0,t=0;p[i];i++) c[t]='\0'; 22.下标为偶数字符删除 填空: datanexthead 改错: while(*r) *a=*r;a++;r++; 23.除首尾外其余ASCII码降序 填空: ss[i]n+j1 改错: if(*p=='') *(p-1)=toupper(*(p-1)); 24. ASCII码值为偶数删除 填空: STUstd[i].numstd[i] 改错: r++;p++; if(*r==0) 25.ASCII值为奇数删除 填空: s[i]k'\0' 改错: while(*w) if(*r==*p) 26.除下标偶数同时ASCII码值偶数之外其余全部删除 i 填空: *nnexthead 改错: a=NULL; if(*r==*p) 27.除下标奇数同时ASCII码也为奇数外其余字符删除 填空: 0i++2.0*i 改错: voidfun(char*s,char*t) t[2*d]=0; 28.将下标为偶数同时ASCII码为奇数删除 填空: jkp 改错: while(i if(*a) 103.请编写函数fun,函数的功能是查找x在s所指数组中下标的位置作为函数值返回,若x不存在,则返回-1 填空: i%5\na[i] 改错: return t; for(i=0;i x[i+1]=findmid(a,b,c); 类型四: 数组和矩阵操作 29.请编写函数fun,该函数的功能是: 移动一维数组中的内容;若数组中有n个整数,要求把下标从0到p(p小于等于n-1)的数组元素平移到数组的最后。 下标0-p移到数组最后 填空: p->nextqp->next 改错: while(*s) s++; 30.删除一维数组相同的数 填空: FILE*fclose(fp)fp 改错: t=(STU*)calloc(sizeof(STU),m); t[k]=b[j]; 31.找出一维数组最大值及其下标 填空: 12*i(-1) 改错: k++; if(m==k) 32.求数组最大元素及下标 填空: n++0s++ 改错: t+=s[k]; *ave=ave; 33.左下三角元素乘n 填空: STUscore[i]&std 改错: if(k>0) elseif(k==0) 34.右上三角元素同乘m 填空: *avix[j] 改错: floatfun(intn) for(i=2;i<=n;i++) 35.左下三角元素置0 填空: *stdPERSONstd 改错: intk,q,i; pt[i]=str[k][i]; 36.二维数组每列最小元素 填空: *stdstd[i].agemax.name 改错: voidfun(int*a,int*b) t=*b;*b=*a;*a=t; 37.求二维数组中最大元素的值 填空: 3.0>2*i+1 改错: doublefun(intn) s=s+(double)a/b; 38.矩阵转置 填空: Nbreakn 改错: sum=0; scanf("%d",&a[i][j]); 39.按列顺序334455334455 填空: NODE*nextr 改错: if(i%2||s[i]%2==0) t[j]=’\0’; 40.按行顺序3333333344444444 填空: h->nextp->next> 改错: p=h->next; p=p->next; 41.按列顺序wshwshwsh 填空: FILE*fpch 改错: s[j++]=s[i]; s[j]='\0';. 42.数组周边元素的平均值 填空: s/Nj++-1 改错: #include upfst(char*p) 43.二维数组周边元素之和 填空: x[i]/Nj++i++ 改错: num[k]=0; switch(*s) 44.B=A+A’ 填空: &&'\0's[j] 改错: for(i=2;i<=m;i++) y+=1.0/(i*i); 类型五: 学生分数操作 45.请编写一个函数fun,它的功能是: 计算n门课程的平均分,计算结果作为函数值返回。 例如: 若有5门课程的成绩是: 90.5,72,80,61.5,55,则函数的值为71.80。 n门课程平均分71.8 填空: xps 改错: longk=1; num/=10; 46.N名学生的成绩的平均分,78.625 填空: charch<='9''0' 改错: b[k]=*p; b[k++]=‘’; 47.8门课程平均分78.875 填空: a[i]a[j]a[j] 改错: switch(g) case1: case2: return1; 48.找出成绩最高学生纪录(规定只有一个最高分) 填空: std[i].yearstd[i]n 改错: IsPrime(intn) if(! (n%i)) 49.低于平均分的学生数据 填空: *a2i+1 改错: sum=0.0; if((i+1)%5==0) 50.把分数最高学生数据放在b所指数组中,分数最高的学生可能不只一个 填空: 1ia[p+i] 改错: floatk; if(*a<*c) 51 找出学生最高分由函数值返回 填空: fp==fp 改错: n=strlen(aa); ch=aa[i]; 52.低于平均分的人作为函数值返回 填空: j0i++ 改错: for(i=2;i<=m;i++) y-=1.0/(i*i); 53.高于等于平均分的学生数据 填空: ->sno->name&t 改错: doublefun(doublea,doublex0) if(fabs(x1-x0)>0.00001) 54. 分数最低学生数据放在b所指数组 填空: structstudenta.namea.score[i] 改错: if(p==n)return-1; a[i]=a[i+1]; 55.找出成绩最低学生纪录 填空: 0x[i]/Nj++ 改错: doublefun(intm) for(i=100;i<=m;i+=100) 56按分数高低排列学生纪录,高分在前 填空: 999t/10x 改错: voidfun(longs,long*t) while(s>0) 57.返回指定学号学生数据 填空: n/2ia[n-i-1] 改错: n=*p-'0'; n=n*8+*p-'0'; 58.指定分数范围内的数据 填空: structstudent n-1 a[i].name,a[j].name 改错: q=p+i; while(q>p) 类型六: 字符和字符串操作 59.请编写一个函数fun,它的功能是: 比较两个字符串的长度,返回较长的字符串。 若两个字符串长度相同,则返回第一个字符串。 返回较长字符串 填空: nextt->datat 改错: fun(char*a) printf("%c",*a); 60.删除给定的字符 填空: klenss[i][j] 改错: result*=n--; result 61.填空: j++s[i]=t1[i]j 改错: for(j=i+1;j<6;j++) *(pstr+i)=*(pstr+j); 62.统计26个字母出现次数 填空: 1s[k]c 改错: longs=0,t=0; t=t/10; 63.删除指定下标字符 填空: t=ii'\0' 改错: while(fabs(t)>=num) t=s/n; 64.统计一行串中单词个数 填空: filenamefpfp 改错: p=(NODE*)malloc(sizeof(NODE)); returnh; 65.M个字符串合并成新串 填空: next0r 改错: r=t; if(*r==0) 66.回文 填空: doublef1f2 改错: p=h->next; p=p->next; 67实现两个字符串连接 填空: 010*xn/10 改错: *t=0; if(d%2! =0) 68.删除字符串中所有空格 填空: 0||1 改错: t-=1.0/i; returnt; 69.逆置。 字符串逆置 填空: i+1k=jt 改错: voidfun(char*str,charch) if(*str! =ch) str[1]=0; 70数字字符串转换为整数 填空: 100x 改错: if(n==0) result*=n--; 711第m个字符移到串后 填空: doublef1f2 改错: char*fun(char*s,char*t) ss++; tt++; 72.统计子串出现的次数 i 填空: Nlen*n=len 改错: t+=1.0/i; returnt; 101.请编写函数fun,其功能是: 统计s所指字符串中的数字字符个数,并作为函数值返回。 数字字符个数 填空: b[k]N/2< 改错: int t[N] ,i, num=0; t[num++]=b[i]; for(i=0; i 102.请编写函数fun,其功能是将形参s所指的字符串放入形参a所指的字符数组中,使a中存放同样的字符串。 填空: pbp->datap->next 改错: int i, one=0, zero=0; switch( s[i] ) case 0: zero++;break; 104 数字字符串转换为整数 填空: 0t(t-1)*(t+2)/2 改错: b[i]=0; b[a[i]-'a']++; if(b[max] 类型七: 套用公式计算型 73.编写函数fun,函数的功能是: 根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。 s=1+1/(1+2)+1/(1+2+3)+.......+1/(1+2+3+4+......+n), 若n的值为11时,函数的值为1.833333。 填空: '\0'0c 改错: doublesum=0.0; sum/=c; 74. cos(x)-x=0的一个实根0.739085 填空: i++mm 改错: while((high>=2)&&(n<10)) yes=0;break; 75. 若m的值为20,则fun函数值为6.506583。 填空: 0j--j 改错: doublef(doublex) returns; 76.若主函数从键盘给n输入15,则输出为s=2.718282。 填空: 1-1t 改错: for(i=1;i<=3;i++) if(k>=0&&k<=6) 77. 输入0.21后,则输出为s=1.100000。 填空: xnfabs(t) 改错: for(i=1;i<=y;i++) t=t%1000; 78.若输入8后,则输出为S=0.662872。 填空: j=2ij 改错: sum=j=0; if(sum%4==2) 79. 输入20后,则输出为s=534.188884。 填空: aab 改错: c=c+32; c=c+5; 80.m=12,n=8,运行结果为495.000000。 填空: *ss++n 改错: intj,c=0;floatxa=0.; if(x[j])>=xa) 81.n=10时,函数值为0.909091。 填空: *s1k[n] 改错: doublefun(intk) returns; 82.n=10,x=0.3时,函数值为1.349859。 填空: ips[j]tp 改错: doublefun(intn) returnsum; 83.求π的值 填空: 0nt*t 改错: for(i=0;str[i];i++) if(substr[k+1]=='\0') 84.输出下列多项式值 填空: n%10breakbreak 改错: if(t==0) *zero=count; 类型八: 求整除 85.请编写函数fun,它的功能是: 求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数 能被7或11整除,但不能同时被7和11整除 填空: s[i]'9'*t=n 改错: t=*x;*x=y; return(t); 86. 能被7或11整除 填空: qnextnext 改错: p=j; p=i; 87.同时能被3与7整除的所有自然数之和的平方根 填空: '0's++sum 改错: if((k%13==0)||(k%17==0)) } 88.能整除形参x且不是偶数的各整数 填空: t,ss[i]'\0' 改错: if(i%k==0) if(k==i) 89N以内能被5或9整除的所有自然数倒数之和 填空: a[i]a[i]0 改错: y=1; d=a-i; 105去掉一个最高分和一个最低分,然后求平均值 填空: a[i]m%10m/10 改错: b[i]=a[i][0]; for(j=1;j if(b[i]>a[i][j]) 类型九: 其它各类计算 90.请编写函数fun,它的功能是: 求Fibonacci数列中大于t的最小的一个数,结果由函数返回。 fibonacci 填空: NN-10 改错: s=s+(n+1.0)/n; returnt; 91大于1小于m的非素数 填空: M 改错: if((tt[i]>=’a’)&&(tt[i]<='z')) tt[i]-=32; 92.3到n之间所有素数平方根之和 填空: it++count 改错: intfun(inta,intb,intc) elseretrun1; 93.小于或等于lim所有素数 填空: a[0][i] 改错: intfun(int*x,int*y) t=*x;*x=*y;*y=t; 94.大于整数m且紧靠m的k个素数 填空: s--return0 改错: doublefun(intn) c=a;a+=b;b=c; 95.w是一个大于10的无符号整数 5923=〉923 填空: tttt.score[i]std 改错: m=i; if(a[k]>a[m])m=k; 96.方差S=11.730729 填空: 11i 改错: k=i; c=k%10; 97.相邻两元素平均值平方根之和 填空: xnt 改错: d=1;s=0; d=d/10; 98.保留2位小数 填空: 48s++ctod(a)+ctod(b) 改错: voidfun(char*s,int*a,int*b) *a=*a+1; *b=*b+1; 99.整数n的所有因子 填空: &&‘A’ch 改错: voidfun(int*a) a[j]=a[j-1]; 100.各年龄段的人数 填空: “rb”>fwrite 改错: p=s; while(*p++);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 上机 考试 题库