版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、试卷编号:249所属语言:计算机基础试卷方案:冒泡排序、数组元素逆序试卷总分:320分共有题型:3种一、程序填空 共4题 (共计80分)第1题 (20.0分) 题号:34 难度:中 第1章/*-【程序填空】-功能:将s所指字符串的正序和反序进行连接,形成一个新串放在t 所指的数组中。例如:当s串为"ABCD"时,则t串的内容应为"ABCDDCBA"。 -*/#include <conio.h>#include <stdio.h>#include <string.h>void fun (char *s, char *t)
2、 int i, d; /*SPACE*/ d = 【?】; /*SPACE*/ for (i = 0; i<d; 【?】) ti = si; for (i = 0; i<d; i+) /*SPACE*/ t【?】 = sd-1-i; /*SPACE*/ t【?】 ='0'main() char s100, t100; clrscr(); printf("nPlease enter string S:"); scanf("%s", s); fun(s, t); printf("nThe result is: %sn&q
3、uot;, t);答案:=(答案1)=strlen(s)=(答案2)=i+=或=i=i+1=或=i+=1=或=+i=(答案3)=d+i=或=i+d=(答案4)=2*d=或=d*2=或=i+d=或=d+i第2题 (20.0分) 题号:29 难度:难 第1章/*-【程序填空】-功能:用冒泡法对数组a 进行由小到大的排序。-*/void fun(int a,int n) int i,j,t; /*SPACE*/ for (j=0; 【?】;j+) /*SPACE*/ for (i=0; 【?】;i+) /*SPACE*/ if(【?】) t=ai; ai=ai+1; ai+1=t; main() i
4、nt i,a10=3,7,5,1,2,8,6,4,10,9; /*SPACE*/ 【?】; for(i=0;i<10;i+) printf("%3d",ai);答案:=(答案1)=j<=n-1=或=n-1>=j=或=j<=-1+n=或=-1+n>=j=或=j<n=或=n>j=或=j<n-1=(答案2)=i<n-j-1=或=n-j-1>i=或=i<n-1-j=或=n-1-j>i=或=i<=n-j-2=或=i<=n-2-j=(答案3)=ai>a i + 1 =或=a i + 1 <a
5、i=(答案4)=fun(a,10)第3题 (20.0分) 题号:80 难度:中 第2章/*-【程序填空】-功能:先将在字符串s中的字符按正序存放到t串中,然后把s中的 字符按逆序连接到t串的后面。-*/#include <conio.h>#include <stdio.h>#include <string.h> void fun (char *s, char *t) int i, sl; /*SPACE*/ sl = 【?】; for(i=0; i<sl; i+) ti = si; for (i=0; i<sl; i+) /*SPACE*/ ts
6、l+i = 【?】; /*SPACE*/ tsl+i=【?】; main() char s100, t100; clrscr(); /*SPACE*/ printf("nPlease enter string s:"); 【?】("%s",s); fun(s, t); printf("The result is: %sn", t);答案:=(答案1)=strlen(s)=(答案2)=ssl-i-1=或=s sl -i -1 =(答案3)='0'=或=0=(答案4)=scanf第4题 (20.0分) 题号:16 难度:易
7、 第1章/*-【程序填空】-功能:将一个数组中的元素按逆序存放。-*/#define N 7main () static int aN=12,9,16,5,7,2,1,k,s; printf("n the origanal array:n"); for (k=0;k<N;k+) printf("%4d",ak); /*SPACE*/ for (k=0;k<N/2; 【?】 ) s=ak; /*SPACE*/ 【?】 ; /*SPACE*/ 【?】 ; printf("n the changed array:n"); for
8、 (k=0;k<N;k+) /*SPACE*/ 【?】 ("%4d",ak);答案:=(答案1)=k+=或=k= k + 1=或=k+=1=或=+k=(答案2)=ak=aN-k-1=或=ak=aN-1-k=或=ak=a6-k=或=*(a+k)=*(a+N-k-1)=或=*(a+k)=*(a+N-1-k=或=ak=a-1+N-k=或=ak=a-1-k+N=或=ak=a-k-1+N=或=ak=a-k+N-1=或=*(a+k)=*(a+N-k-1)=或=a6-k=s=(答案3)=aN-k-1=s=或=aN-1-k=s=或=a6-k=s=或=aN -k -1=s=或=*(a
9、+N -k -1)=s=(答案4)=printf二、程序改错 共5题 (共计150分)第1题 (30.0分) 题号:35 难度:难 第1章/*- 【程序改错】-功能:用"起泡法"对连续输入的十个字符排序后按从小到大的次序 输出.-*/#define N 10#include <stdio.h>#include <string.h>main( ) int i; char strN; /*FOUND*/ for(i=0;i<N;i+)scanf("%c",stri); /*FOUND*/ sort(strN); for(i=0;
10、i<N;i+) printf("%c",stri); printf("n");sort(char strN) int i,j; char t; for(j=1;j<N;j+) /*FOUND*/ for(i=0;i<N-j;i-) /*FOUND*/ if(stri<stri+1) t=stri; stri=stri+1; stri+1=t; 答案:=(答案1)=for(i=0;i<N;i+)scanf("%c",&stri);=(答案2)=sort(str);=(答案3)=for(i=0;i&l
11、t;N-j;i+)=(答案4)=if(stri>stri+1)=或=if(stri+1<stri)第2题 (30.0分) 题号:48 难度:中 第2章/*- 【程序改错】-功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的 字符按正序连接到t串的后面。例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为: “EDCBAABCDE”。-*/#include <conio.h>#include <stdio.h>#include <string.h> void fun (char s, char t) /*FOUND*/ int i
12、; sl = strlen(s); for (i=0; i<sl; i+) /*FOUND*/ ti = ssl-i; for (i=0; i<sl; i+) tsl+i = si; /*FOUND*/ t2*sl = "0"main() char s100, t100; clrscr(); printf("nPlease enter string s:"); scanf("%s", s); fun(s, t); printf("The result is: %sn", t); getch();答案:=
13、(答案1)=int i,sl;=(答案2)=ti = ssl-i-1;=(答案3)=t2*sl = '0'=或=t2*sl = 0;第3题 (30.0分) 题号:30 难度:易 第1章/*- 【程序改错】-功能:将s所指字符串的反序和正序进行连接形成一个新串放在 t所指的数组中。例如:当s所指的字符串的内容为"ABCD"时,t所指数组中 的内容为"DCBAABCD"。-*/#include <conio.h>#include <stdio.h>#include <string.h>/*FOUND*/vo
14、id fun (char s, char t) int i, d; /*FOUND*/ d = len(s); /*FOUND*/ for (i = 1; i<d; i+) ti = sd - 1 - i ; for (i = 0; i<d; i+) t d + i = si; /*FOUND*/ t2*d = '/0'main() char s100, t100; clrscr(); printf("nPlease enter string S:"); scanf("%s", s); fun(s, t); printf(&q
15、uot;nThe result is: %sn", t);答案:=(答案1)=void fun (char s,char t)=或=void fun (char *s,char *t)=(答案2)=d = strlen(s);=(答案3)=for (i = 0; i<d; i+)=或=for (i = 0; d>i; i+)=或=for (i = 0; i<=d-1; i+)=或=for (i = 0; d-1>=i; i+)=(答案4)=t 2 * d = '0'=或=t i + d = '0'=或=t i + d =NULL
16、;=或=t 2 * d = NULL;=或=t 2 * d = 0;=或=t i + d = 0;第4题 (30.0分) 题号:46 难度:中 第2章/*- 【程序改错】-功能:先将在字符串s中的字符按正序存放到t串中,然后把s中的 字符按逆序连接到t串的后面。例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为: “ABCDEEDCBA”。-*/#include<conio.h>#include<stdio.h>#include<string.h>void fun(char s,char t) int i,sl; sl=strlen(s); for
17、(i=0;i<sl;i+) ti=si; for(i=0;i<sl;i+) /*FOUND*/ tsl+i=ssl-i; /*FOUND*/ tsl='0'main() char s100,t100; clrscr(); printf("nPlease enter string s:");scanf("%s",s); fun(s,t); printf("The result is:%sn",t); getch();答案:=(答案2)=tsl+i=ssl-i-1;=(答案3)=tsl+i='0'
18、;第5题 (30.0分) 题号:3 难度:难 第1章/*- 【程序改错】-功能:用起泡法对10个整数从小到大排序。 -*/*FOUND*/void sort(int x,int n) int i,j,k,t; for(i=0;i<n-1;i+) /*FOUND*/ for(j=0;j<n-i;j+) /*FOUND*/ if(xi>xi+1) t=xj; xj=xj+1; xj+1=t; main() int i,n,a100; printf("please input the length of the array:n"); scanf("%d
19、",&n); for(i=0;i<n;i+) scanf("%d",&ai); /*FOUND*/ sort(n,a); printf("output the sorted array:n"); for(i=0;i<=n-1;i+) printf("%5d",ai); printf("n");答案:=(答案1)=void sort(int *x,int n)=或=void sort(int x,int n)=(答案2)=for(j=0;j< n -1 -i ;j+)=或=
20、for(j=0; n -1 -i >j;j+)=或=for(j=0;j<n-( 1 + i );j+)=或=for(j=0;n-( 1 + i )>j;j+)=或=for(j=0;j<= n -2 -i ;j+)=(答案3)=if(xj>x j + 1 )=或=if(x j + 1 <xj)=(答案4)=sort(a,n);三、程序设计 共3题 (共计90分)第1题 (30.0分) 题号:80 难度:难 第2章/*-【程序设计】-功能:编写函数用冒泡排序法对数组中的数据进行从小到 大的排序。-*/#include <stdlib.h>#inclu
21、de<stdio.h>void sort(int a,int n) /*Program*/ /* End */main() int a16,i; clrscr(); for(i=0;i<16;i+) ai=random(30)+15; for(i=0;i<16;i+) printf("%3d",ai); printf("n-n"); sort(a,16); for(i=0;i<16;i+) printf("%3d",ai); yzj(); getch();yzj() FILE *IN,*OUT; int
22、n; int i10; int o; IN=fopen("in.dat","r"); if(IN=NULL) printf("Read File Error"); OUT=fopen("out.dat","w"); if(OUT=NULL) printf("Write File Error"); for(n=0;n<10;n+) fscanf(IN,"%d",&in); sort(i,10); for(n=0;n<10;n+) fpri
23、ntf(OUT,"%dn",in); fclose(IN); fclose(OUT);答案:-int i,j,t; for(i=0;i<n-1;i+) for(j=0;j<n-1-i;j+) if(aj>aj+1) t=aj; aj=aj+1; aj+1=t; -第2题 (30.0分) 题号:56 难度:中 第2章/*-【程序设计】-功能:对长度为7个字符的字符串,除首、尾字符外,将其 余5个字符按降序排列。例如:原来的字符串为CEAedca,排序后输出为CedcEAa。-*/#include<stdio.h>#include<ctype
24、.h>#include<conio.h> int fun(char *s,int num) /*Program*/ /* End */main() char s10; clrscr(); printf("输入7个字符的字符串:"); gets(s); fun(s,7); printf("n%s",s); getch(); NONO();NONO() int i; char a100; FILE *rf, *wf ; rf = fopen("in.dat", "r") ; wf = fopen(&q
25、uot;out.dat", "w") ; for(i=0;i<3;i+) fscanf(rf, "%s", &a); fun(a,7); fprintf(wf, "%s", a); fprintf(wf, "n"); fclose(rf); fclose(wf); 答案:- int i,j; char t; for(i=0;i<num-3;i+) for(j=1;j<num-2-i;j+) if(sj<sj+1) t=sj;sj=sj+1;sj+1=t;-第3题 (30.0分) 题号:19 难度:中 第2章/*-【程序设计】-功能:将主函数中输入的字符串反序存放。例如:输入字符串“abcdefg”,则应输出“gfedcba”。-*/ #include <stdio.h&
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东广州市越秀区登峰街道办事处招聘辅助人员1人考试参考试题及答案解析
- 北京市顺义区城区社区卫生服务中心招聘编外6人考试备考试题及答案解析
- 2026黄河勘测规划设计研究院有限公司招聘高校毕业生(进站博士后)补充笔试备考试题及答案解析
- 2026中联重科招聘111人笔试模拟试题及答案解析
- 沧州渤海新区中学数字化地理教室项目招标文件
- 2026广西防城港东兴市教育系统公开招聘第二批次中小学临聘教师16人笔试备考试题及答案解析
- 2025年正德职业技术学院单招综合素质考试试题及答案解析
- 2026内蒙古通辽市科左后旗招聘社区残疾人专职委员10人考试备考试题及答案解析
- 2026重庆市长寿区选拔社区工作者后备库人选200人笔试模拟试题及答案解析
- 2026云南省阜外心血管病医院招聘5人考试备考试题及答案解析
- 《中国养老金精算报告2025-2050》原文
- 宫颈癌根治性放疗指南2026
- 2026年春节后复工复产安全培训试题(附答案)
- 塞来昔布课件
- 柱间支撑按拉杆还是压杆计算的浅析
- 温暖医患关系故事集
- 2025年江苏省省直及部分省辖市事业单位招聘考试真题试卷 公共基础知识带答案详解(完整版)
- 规范项目管理执行的方案
- 施工安全防护用品方案
- 电工三级(高级工)复习题库及答案
- 《中医药膳术语标准》
评论
0/150
提交评论