二级两套组合.docx
- 文档编号:4891676
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:331
- 大小:204.17KB
二级两套组合.docx
《二级两套组合.docx》由会员分享,可在线阅读,更多相关《二级两套组合.docx(331页珍藏版)》请在冰豆网上搜索。
二级两套组合
二级C语言上机考试复习资料,共有50套题目
一、程序填空题
1、程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。
函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。
例如:
b所指变量t中的学号、姓名、和三门课的成绩依次是:
10002、"ZhangQi"、93、85、87,修改后输出t中的数据应为:
10004、"LiJie"、93、85、87。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
structstudent{
longsno;
charname[10];
floatscore[3];
};
voidfun(structstudent*b)
{
/**********found**********/
b__1__=10004;
/**********found**********/
strcpy(b__2__,"LiJie");
}
main()
{structstudentt={10002,"ZhangQi",93,85,87};
inti;
printf("\n\nTheoriginaldata:
\n");
printf("\nNo:
%ldName:
%s\nScores:
",t.sno,t.name);
for(i=0;i<3;i++)printf("%6.2f",t.score[i]);
printf("\n");
/**********found**********/
fun(__3__);
printf("\nThedataaftermodified:
\n");
printf("\nNo:
%ldName:
%s\nScores:
",t.sno,t.name);
for(i=0;i<3;i++)printf("%6.2f",t.score[i]);
printf("\n");
}
2、给定程序中,函数fun的功能是计算下式
例如,若形参e的值为1e-3,函数的返回值2.985678。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
doublefun(doublee)
{inti;doubles,x;
/**********found**********/
s=0;i=__1__;
x=1.0;
while(x>e){
/**********found**********/
__2__;
/**********found**********/
x=(2.0*i-1)/((__3__)*(2.0*i));
s=s+x;
}
returns;
}
main()
{doublee=1e-3;
printf("\nTheresultis:
%f\n",fun(e));
}
3、给定程序中,函数fun的功能是:
将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。
例如,形参s所指的字符串为:
def35adh3kjsdf7。
执行结果为:
defadhkjsdf3537。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:
源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
voidfun(char*s)
{inti,j=0,k=0;chart1[80],t2[80];
for(i=0;s[i]!
='\0';i++)
if(s[i]>='0'&&s[i]<='9')
{
/**********found**********/
t2[j]=s[i];___1___;
}
elset1[k++]=s[i];
t2[j]=0;t1[k]=0;
/**********found**********/
for(i=0;i /**********found**********/ for(i=0;i<___3___;i++)s[k+i]=t2[i]; } main() {chars[80]="ba3a54j7sd567sdffs"; printf("\nTheoriginalstringis: %s\n",s); fun(s); printf("\nTheresultis: %s\n",s); } 4、给定程序中,函数fun的功能是: 将a所指4×3矩阵中第k行的元素与第0行元素交换。 例如,有下列矩阵: 123 456 789 101112 若k为2,程序执行结果为: 789 456 123 101112 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意: 源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! ****新视野教育内部资料版权所有翻印必究WWW.EOL360.COM**** #include #defineN3 #defineM4 /**********found**********/ voidfun(int(*a)[N],int__1__) {inti,j,temp; /**********found**********/ for(i=0;i<__2__;i++) {temp=a[0][i]; /**********found**********/ a[0][i]=__3__; a[k][i]=temp; } } main() {intx[M][N]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}},i,j; printf("Thearraybeforemoving: \n\n"); for(i=0;i {for(j=0;j printf("\n\n"); } fun(x,2); printf("Thearrayaftermoving: \n\n"); for(i=0;i {for(j=0;j printf("\n\n"); } } 5、给定程序中,函数fun的功能是: 对形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。 例如,形参s所指的字符串为: baawrskjghzlicda,执行后p所指字符数组中的字符串应为: aachjlsw。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意: 源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include voidfun(char*s,char*p) {inti,j,n,x,t; n=0; for(i=0;s[i]! ='\0';i++)n++; for(i=1;i /**********found**********/ ___1___; /**********found**********/ for(j=___2___+2;j if(s[t]>s[j])t=j; if(t! =i) {x=s[i];s[i]=s[t];s[t]=x;} } for(i=1,j=0;i /**********found**********/ p[j]=___3___; } main() {chars[80]="baawrskjghzlicda",p[50]; printf("\nTheoriginalstringis: %s\n",s); fun(s,p); printf("\nTheresultis: %s\n",p); } 6、给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun函数,每调用一次fun函数,输出链表尾部结点中的数据,并释放该结点,使链表缩短。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意: 源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #include #defineN8 typedefstructlist {intdata; structlist*next; }SLIST; voidfun(SLIST*p) {SLIST*t,*s; t=p->next;s=p; while(t->next! =NULL) {s=t; /**********found**********/ t=t->___1___; } /**********found**********/ printf("%d",___2___); s->next=NULL; /**********found**********/ free(___3___); } SLIST*creatlist(int*a) {SLIST*h,*p,*q;inti; h=p=(SLIST*)malloc(sizeof(SLIST)); for(i=0;i {q=(SLIST*)malloc(sizeof(SLIST)); q->data=a[i];p->next=q;p=q; } p->next=0; returnh; } voidoutlist(SLIST*h) {SLIST*p; p=h->next; if(p==NULL)printf("\nThelistisNULL! \n"); else {printf("\nHead"); do{printf("->%d",p->data);p=p->next;}while(p! =NULL); printf("->End\n"); } } main() {SLIST*head; inta[N]={11,12,15,18,19,22,25,29}; head=creatlist(a); printf("\nOutputfromhead: \n");outlist(head); printf("\nOutputfromtail: \n"); while(head->next! =NULL){ fun(head); printf("\n\n"); printf("\nOutputfromheadagain: \n");outlist(head); } } 7、给定程序中,函数fun的功能是: 在3×4的矩阵中找出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。 例如,有下列矩阵: 12134 78106 3597 程序执行结果为: find: a[2][2]=9 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意: 源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include #defineM3 #defineN4 voidfun(int(*a)[N]) {inti=0,j,find=0,rmax,c,k;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 组合
![提示](https://static.bdocx.com/images/bang_tan.gif)