版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
strcpy(b_2_,nLiJie");
二级C语言上机考试温习资料,共有50套问题
一、程序填空题
main()
1、程序通过定义学生结构体变量,存储了学生的学
号、姓名和3门课的成绩.函数fun的功能是对形参b{structstudentt={10002,"ZhangQiH,93,85,87};
所指结构体变量中的数据进行修改,末了在主函数中输出
修改后的数据.
int
例如:b所指变量t中的学号、姓名、和三门课的成绩
printf(n\n\nTheoriginaldata:\nu);
依次是:10002、"ZhangQi“、93、85、87,修改后输出t
中的数据应为:10004、"LiJie"、93、85、87.
printf("\nNo:%ldName:%s\nScores:H,t.sno,Lname);
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.for(i=0;i<3;i++)printf("%6.2fH,t.score[i]);
#include<stdio.h>printf("\nH);
#include<string.h>**********found**********
structstudent{fun(_3_);
longsno;printf("\nThedataaftermodified:\n");
charname[10];printf("\nNo:%ldName:%s\nScores:M,t.sno,);
floatscore[3];for(i=0;i<3;i++)printf(n%6.2fH,t.scoreli]);
};printf(H\n");
voidfun(structstudent*b)
135(2xn-l)
**********^0und**********「算下式
7*尸+&+…+
卜并把计算结果作为函数值返回。
直到IO",
b_l_=10004;
例如,若形参e的值为le-3,函数的返回值2.985678.
请在程序的下划线处填入对的内容并把下划线删除,printf("\nTheresultis:%f\nu,fun(e));
使程序得到对的成果.
3、给定程序中,函数fun的功能是:将s所指字符
#include<stdio.h>串中的所有数字字符移到所有非数字字符之后,并连结
数字字符串和非数字字符串原有的先后次序.例如,形参
s所指的字符串为:def35adh3kjsdO.执行成果为:
doublefun(doublee)
defadhkjsdf3537.
{inti;doubles,x;请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
******************
s=0;i=_1
x=I.O;
#include<stdio.h>
while(x>e){
voidfun(char*s)
**********found**********
{inti,j=0,k=0;chartl[80],t2[80];
2
for(i=0;s[i]!=W;i++)
**********^0und**********
if(s[i]>=,0,&&s[i]<='9,)
x=(2.0*i-l)((_3_)*(2.0*i));
s=s+x;
**********found**********
t2U]=s[i];—1—:
returns;
elsetl[k+4-]=s[i];
main()
t2[j]=0;tl[k]=O;
{doublee=le-3;
101112
for(i=0;i<k;i++)___2.若k为2,程序执行成果为:
**********found**********789
for(i=0;i<_3—;i++)s[k+i]=t2[i];456
123
main()101112
{chars[80]=nba3a54j7sd567sdffs";请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
printf("\nTheoriginalstringis:%s\n",s);
fun(s);
printf(M\nTheresultis:%s\nM,s);
****新视野教诲内部资料版权所有翻印必
究.EOL360.COM****
#include<stdio.h>
#defineN3
#defineM4
voidfun(int(*a)[N],int—1—)
4、给定程序中,函数fun的功能是:将a所指4X3
矩阵中第k行的元素与第0行元素交流.
{inti,j,temp;
例如,有下列矩阵:
**********found**********
123
for(i=0;i<_2—;i++)
456
{temp=a[OJliJ;
789
**********3und**********5、给定程序中,函数fun的功能是:对形参s所指
字符串中下标为奇数的字符按ASCII码大小递增排序,并
将排序后下标为奇数的字符取出,存入形参p所指字符数
a[0JliJ=_3_;
组中,形成一个新串.
a[k][i]=temp;
例如,形参s所指的字符串为:baawrskjghzlicda,执
行后p所指字符数组中的字符串应为:aachjlsw.
)
请在程序的下划线处填入对的内容并把下划线删除,
)使程序得到对的成果.
main()
{intx[M][N]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}},i,j;
printf("Thearraybeforemoving:\n\n");#include<stdio.h>
for(i=0;i<M;i++)voidfun(char*s,char*p)
{forO=0;j<N;j++)printf(n%3d\x[i][j]);{inti,j,n,x,t;
printf("\n\nu);n=0;
,,
)for(i=0;s[i]!=\0;i++)n++;
fun(x,2);for(i=l;i<n-2;i=i+2){
********************
printf(*'Thearrayaftermoving:\n\nM);
for(i=0;i<M;i++)
{for(j=0;j<N;j++)printf("%3d';x[i][j]);**********found**********
printf("\n\nH);for(j=一2—+2;j<n;j=j+2)
)if(s[t]>s|j])t=j;
)if(t!=i)
{x=s[i];s[i]=s[t];s[t]=x;}
typedefstructlist
for(i=l,j=0;i<n;i=i+2,j++)p[j]=s[i];{intdata;
**********found**********structlist*next;
p[j]=一3一;}SLIST;
voidfun(SLIST*p)
main(){SLIST九,*s;
{chars[80]=',baawrskjghzlicdan,p[50];t=p->next;s=p;
printf("\nTheoriginalstringis:%s\n",s);while(t->next!=NULL)
fun(s,p);{s=t;
printf(M\nTheresultis:%s\nn,p);**********found**********
t=t->1
6、给定程序中已创立一个带有头结点的单向链表,**********found**********
在main函数中将多次调用fun函数,每调用一次fun函数,
输出链表尾部结点中的数据,并释放该结点,使链表缩
printf("%d=—2—);
短.
请在程序的下划线处填入对的内容并把下划线删除,s->next=NULL;
使程序得到对的成果.
**********found**********
free(-3-);
#include<stdio.h>
SLIST*creatlist(int*a)
#include<stdlib.h>
{SLIST*h,*p,*q;int
#defineN8
h=p=(SLIST*)malloc(sizeof(SLIST));inta[N]={11,12,15,18,19,22,25,29);
for(i=0;i<N;i++)head=creatlist(a);
{q=(SLIST*)maUoc(sizeof(SLIST));printf(n\nOutputfromhead:\nu);outlist(head)
q->data=a[il;p->next=q;p=q;printf("\nOutputfromtail:\n");
)while(head->next!=NULL){
p->next=O;fun(head);
returnh;printf("\n\n");
printf(n\nOutputfromheadagain:\nH);outlist(head);
voidoutlist(SLIST*h)
{SLIST*p;
p=h->next;
if(p==NULL)printf("\nThelistisNULL!\n");7、给定程序中,函数fun的功能是:在3X4的矩阵中
找出在行上最大、在列上最小的那个元素,若没有吻合前
提的元素则输出相应信息.
else
例如,有下列矩阵:
{printf(n\nHeadn);
12134
do{printf(u->%dn,p->data);p=p->next;}
while(p!=NULL);
78106
printf(,,->End\nH);
3597
)
程序执行成果为:find:a⑵⑵=9
)
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
main()
{SLIST*head;
3.
#include<stdio.h>
#defineM3if(!find)printf("notfound!\nH);
#defineN4)
voidfun(int(*a)[N])main()
{inti=O,j,find=O,rmax,c,k;{intx[M][N],i,j;
while((i<M)&&(!find))printf(HEnternumberforarray:\nn);
{rmax=a[i]fO];c=0;for(i=0;i<M;i++)
for(j=l;j<N;j++)for(j=0;j<N;j++)scanf(,'%d',,&x[i][j]);
if(rmax<a[i][j]){printf(HThearray:\n");
**********]ound**********for(i=0;i<M;i++)
rmax=a[i][j];c=_1{for(j=0;j<N;j++)printf(n%3d",x[i]rj]);
find=l;k=0;printf(n\n\n");
while(k<M&&find){)
fun(x);
if(k!=i&&a[kl[c]<=rmax)find=_2_;
k++;
8、给定程序中,函数fun的功能是:找出100〜999
之间(含100和999)所有整数中列位上数字之和为x(x
为一正整数)的整数,然后输出;吻合前提的整数个数作
Mn
if(find)printf(find:a[%d][%d]=%d\n,i,c,a[i][c]);为函数值返回.
******************
例如,当x值为5时,100〜999之间列位上数字之和
为5的整数有:104、113、122、131、140、203、212、221、
230、302、311、320、401、410、500.共有15个.当xt++;
值为27时,列位数字之和为27的整数是:999.只有1
个.
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
main()
****新视野教诲内部资料版权所有翻印必{intx=-l;
究.EOL360.COM****
while(x<0)
#include<stdio.h>
{printf(HPleaseinput(x>0):");scanf(n%d",&x);
intfun(intx)
printf("\nTheresultis:%d\n",fun(x));
{intn,si,s2,s3,t;
n=0;
t=100;
9、给定程序中,函数fun的功能是:将形参n所指
**********found**********变量中,列位上为偶数的数去除,剩余的数按原来从高位
到低位的次序组成一个新的数,并通过形参指针-n传回所
指变量.
while(t<=_1_){
例如,输入一个数:27638496,新的数:为739.
**********und**********
请在程序的下划线处填入对的内容并把下划线删除,
sl=t%l0;s2=(_2_)%10;s3=tl00;使程序得到对的成果.
if(s1+s2+s3==—3—)
{printf(M%d1);#include<stdio.h>
n++;voidfun(unsignedlong*n)
{unsignedlongx=0,i;intt;
i=l;10、给定程序中,函数fun的功能是:将形参n中,列
位上为偶数的数取出,并按原来从高位到低位相反的次
序组成一个新的数,并作为函数值返回.
while(*n)
例如,输入一个整数:27638496,函数返回值为:
**********]bun(j**********
64862.
{t=*n%_1_;
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
**********3und**********
if(t%2!=_2_)
{x=x+t*i;i=i*10;}
#include<stdio.h>
*n=*n10;
unsignedlongfun(unsignedlongn)
{unsignedlongx=0;intt;
**********治und**********
while(n)
*n=_3.
{t=n%10;
**********Sund**********
main()
if(t%2==_l_)
{unsignedlongn="l;
**********found**********
while(n>99999999||n<0)
x=—2_+t;
{printf(nPleaseinput(0<n<100000000):");
scanf(u%Id",&n);}
**********於und**********
fun(&n);
n=3
printf("\nTheresultis:%ld\nH,n);
returnx;
main()
{unsignedlongn=-l;if(n>=len)strcpy(—1一);
while(n>99999999||n<0)else{
{printf(MPleaseinput(0<n<100000000):");
scanf(n%ldu,&n);}
for(i=len-n;i<=len-l;i++)t|j4-+]=_2_;
printf("\nTheresultis:%ld\n",fun(n));
**********found**********
)
11、给定程序中,函数fun的功能是:把形参s所指
字符串中最右边的n个字符复制到形参t所指字符数组中,
形成一个新串.若s所指字符串的长度小于n,则将整个}
字符串复制到形参t所指字符数组中.
main()
例如,形参s所指的字符串为:abcdefgh,n的值为5,
程序执行后t所指字符数组中的字符串应为:defgh.{chars[N],t[N];intn;
请在程序的下划线处填入对的内容并把下划线删除,printf("Enterastring:n);gets(s);
使程序得到对的成果.
printf(nEntern:H);scanf(H%d",&n);
fun(s,n,t);
printf(HThestringt:");puts(t);
#include<stdio.h>
#include<string.h>
#defineN80
12、给定程序中,函数fun的功能是:求ss所指字符
voidfun(char*s,intn,char*t)串数组中长度最短的字符串所在的行下标,作为函数值返
回,并把其串长放在形参n所指变量中.ss所指字符串数
组中共有M个字符串,且串长<N.
{intlen,i,j=0;
请在程序的下划线处填入对的内容并把下划线删除,
len=strlen(s);
使程序得到对的成果.
return(___3___);
****新视野教诲内部资料版权所有翻印必main()
究.EOL360.COM****
{char
#include<stdio.h>ss[M][N]={"shanghai'1,"guangzhou",',beijing",,'tianjing","ch
ongqing11);
#include<string.h>
intn,k,i;
#defineM5
printf("\nTheoriginalstringsare:\n");
#defineN20
for(i=0;i<M;i++)puts(ss[i]);
intfun(char(*ss)[N],int*n)
k=fun(ss,&n);
{inti,k=0,len=N;
printf("\nThelengthofshorteststringis:%d\n",n);
**********found**********
printf("\nTheshorteststringis:%s\n",ss[k]);
for(i=0;i<_1—;i++)
{len=strlen(ss[i]);
if(i==0)*n=len;
13、给定程序的功能是:从键盘输入若干行文本(每
行不超过80个字符),写到文件myfile4.txt中,用-1作为
**********^0und**********
字符串输入结束的标记.然后将文件的内容读出表此刻
屏幕上.文件的读写分别由自定义函数ReadText和
if(len___2___*n)WriteText实现.
{*n=len;请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
k=i;
#include<stdio.h>
*******¥不不nd不*********
#include<string.h>
#include<stdlib.h>
voidWriteText(FILE*);fputs(___2___,fw);fputs("\nn,fw);
voidReadText(FILE*);gets(str);
main()
{FILE*fp;
if((fp=fopen(umyfile4.txtn,Mw',))==NULL)voidReadText(FILE*fr)
{printfCopenfail!!\nn);exit(O);}{charstr[81];
WriteText(fp);printf("\nReadfileandoutputtoscreen:\n");
fclose(fp);fgets(str,81,fr);
if((fp=fopen(',myfile4.txt,,,,,r',))==NULL)while(!feof(fr)){
{printf("openfail!!\n");exit(O);}**********found**********
ReadText(fp);printf("%s",___3___);
fclose(fp);fgets(str,81,fr);
)
******************
voidWriteText(FILE___1___)
{charstr[81];14、给定程序中,函数fun的功能是:将形参s所指
字符串中的数字字符转换成对应的数值,计算出这些数
值的累加和作为函数值返回.
printf(*'\nEnterstringwith-1toend:\nu);
导例如,形参s所指的字符串为:abs5defl26jkm8,程
gets(str);
序执行后的输出成果为:22.
while(strcmp(str,"-l")!=O){
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
printf(H\nTheresultis:%d\n\n'*,n);
#include<stdio.h>
#include<string.h>
#include<ctype.h>15^给定程序中,函数fun的功能是:在形参ss所指
字符串数组中,删除所有串长超过k的字符串,函数返回
所剩字符串的个数.ss所指字符串数组中共有N个字符串,
intfun(char*s)
且串长小于M.
{intsum=O;请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
while(*s){
******字*字不*********
if(isdigit(*s))sum+=*s-—1—
#include<stdio.h>
**********]ound**********
#include<string.h>
2
#defineN5
#defineM10
**********^0und**********
intfun(char(*ss)[MJ,intk)
return_3_;
{intij=0,len;
)
**********found**********
main()
for(i=0;i<_1—;i++)
{chars[81];intn;
{len=strlen(ss[i]);
printf("\nEnterastring:\n\n");gets(s);
**********found**********
n=fun(s);
if(len<=_2_)
使程序得到对的成果.
strcpy(ss|j++],_3_);
)
returnj;****新视野教诲内部资料版权所有翻印必
究.EOL360.COM****
)
#include<stdio.h>
main()
doublefun(doublee)
{char
,,,,
x[N][Ml={"Beijing,'Shanghai'V'Tianjing\"Nanjing","Wuh{inti,k;doubles,t,x;
an");
s=0;k=l;i=2;
inti,f;
**********found*字字字******
printf("\nTheoriginalstring\n\n");
x=_l_4;
for(i=0;i<N;i++)puts(x[i]);printf(^'\n^,);
**********found**********
f=fun(x,7);
while(x_2_e)
printf("Thestringwitchlengthislessthanorequalto
7:\n)
{s=s+k*x;
for(i=0;i<f;i++)puts(x[i]);printf(H\nn);
k=k*(-1);
)
t=2*i;
严舒计算下式
x=_3_(t*t);
直到I需¥|"°咏并把计算结果作为函数值返回。
i++;
例如:若形参e的值为le-3,函数的返回值为
0.551690.
returns;
请在程序的下划线处填入对的内容并把下划线删除,
3
main()
{doublee=le-3;main()
printf(n\nTheresultis:%f\n",fun(e));chars[80]="abcdefi5adgh3kjsdf7n;
intt;
printf(n\nTheoriginalstringis:%s\nn,s);
17、给定程序中,函数fun的功能是:统计形参s所fun(s,&t);
指字符串中数字字符出现的次数,并存放在形参t所指的
变量中,末了在主函数中输出.例如,形参s所指的字符
printf("\nTheresultis:%d\n",t);
串为:abcdef35adgh3kjsdf7.输出成果为:4.
请在程序的下划线处填入对的内容并把下划线删除,
使程序得到对的成果.
18、给定程序中,函数fun的功能是:计算出形参s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025四川长虹智能机器人公司招聘机器人系统架构师等岗位笔试历年难易错考点试卷带答案解析
- 2024-2025学年度火电电力职业鉴定模拟题库含答案详解(突破训练)
- 2024-2025学年度监理工程师高分题库附参考答案详解(基础题)
- 2025四川九洲防控科技有限责任公司招聘整机调试测试笔试历年典型考点题库附带答案详解
- 2025吉林辽源东丰鹿业投资发展(集团)有限公司及下属子公司招聘工作人员笔试及笔试历年备考题库附带答案详解
- 2025北京北方长鹰无人机科技有限公司招聘2人笔试历年难易错考点试卷带答案解析
- 2026贵州黔南州贵定县招聘公益性岗位人员5人笔试备考试题及答案解析
- 2025云南昆明元朔建设发展有限公司第二批收费员招聘9人笔试历年常考点试题专练附带答案详解
- 2025中国资源循环集团机动车有限公司岗位招聘【社招】笔试历年难易错考点试卷带答案解析
- 2025上海黄浦科创集团招聘7人笔试历年备考题库附带答案详解
- 2026年2月时政题库(附答案)
- 2026江苏无锡江阴水韵新城建设投资有限公司招聘工作人员7人笔试备考试题及答案解析
- 2026年河南林业职业学院单招职业适应性测试题库带答案详解
- 2026年内蒙古商贸职业学院单招职业技能考试题库附答案详解
- 2026年安徽城市管理职业学院单招职业适应性测试题库带答案详解(新)
- T/CECS 10181-2022消防排烟通风天窗
- 传承雷锋精神弘扬时代新风心得体会优推四篇
- 2023年苍南县姜立夫杯数学竞赛高一试卷浙江省
- 2023年嘉兴平湖市特殊教育岗位教师招聘考试笔试题库及答案解析
- 高压电器及成套配电装置
- 秘书科工作规范
评论
0/150
提交评论