全国计算机等级考试二级C语言上机题库试卷五2013年3月

合集下载

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)考试频道小编收集整理计算机等级考试资料,免费提供给大家交流参考。

第二十一套1. 程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串右边的字符删去,只保留左边的k个字符。

ss所指字符串数组中共有N个字符串,且串小于M。

第一处void fun(char (*ss)[M], int k)第二处while (i第三处ss[i][k]=0;i++;}2. 程序修改给定程序MODI1.C中函数fun的功能是:根据以下公式求值,并作为函数值返回。

例如,给指定精度的变量eps输入0.0005时,应当输出Pi=30140578.。

/**found**/t=1;/**found**/return(2*s);3. 程序设计假定输入字符串中只包含字母和*号。

请编写函数fun,它的功能是:将字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。

函数fun中给出的语句仅供参考。

void fun(char*a,int n){int i=0,k=0;while(a[k]= =*)k++;if(kn){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1. 程序填空给定程序中,函数fun的功能是:a所指43矩阵中第k行的元素与第0行元素交换。

例如:有下列矩阵1 2 34 5 67 8 910 11 12若k为2,程序执行结果为7 8 94 5 61 2 310 11 12第一处void fun(int (*a)[N],int k)第二处for(i=0;i第三处a[0][i]=a[k][i];2. 程序修改给定程序MODI1.C中函数fun的功能是:读入一个字符串(长度20),将该字符串中的所有字符串按ASCII码升序排序后输出。

2013年计算机二级C语言上机题库及答案解析(18)

2013年计算机二级C语言上机题库及答案解析(18)

⽆忧考为⼤家收集整理了《2013年计算机⼆级C语⾔上机题库及答案解析(18)》供⼤家参考,希望对⼤家有所帮助填空题 函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把偶数从数组中删除,奇数个数通过函数值返回。

例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a 所指数组中的数据为:9、1、3、5、7,返回值为5。

请在程序的下划线处填⼊正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考⽣⽂件夹下的BLANK1.C中。

不得增⾏或删⾏,也不得更改程序的结构! 给定源程序: #include #define N 9 int fun(int a[], int n) { int i,j; j = 0; for (i=0; i if (a[i]%2==___1___) { a[j] = a[i]; ___2___; } return ___3___; } main() { int b[N]={9,1,4,2,3,6,5,8,7}, i, n; printf("\nThe original data :\n"); for (i=0; i n = fun(b, N); printf("\nThe number of odd : %d \n", n); printf("\nThe odd number :\n"); for (i=0; i } 解题思路: 第⼀处:判断a[i]是否是奇数,若是,则仍保留在原数组中a[j],所以应填:1。

第⼆处:数组a中的元素位置由j来控制,每增加⼀个元素,则j加1,所以应填:j++。

第三处:返回删除偶数后a所指数组中数据的元素j,所以应填:j。

改错题 给定程序MODI1.C中函数fun的功能是:求出两个⾮零正整数的公约数,并作为函数值返回。

2013全国计算机等级考试新大纲二级C语言题库及参考答案-推荐下载

2013全国计算机等级考试新大纲二级C语言题库及参考答案-推荐下载

C
A
D
B
B
C
B
D
C
C
A
B
B
A
A
D
A
B
A
D
if(strcmp(a[i].num, b)==0) { /* 判断学号是否相等 */ strcpy(c.num, a[i].num) ; /* 相等,则对学号进行赋值 */ c.s=a[i].s; /* 相等,则对成绩进行赋值 */ break ; /* 退出循环体 */ } return c ; /* 返回结构体变量 */ }
第三套题
一、选择题
1-10 D
11-20 B
21-30 A
31-40 A
二、程序填空题
解题思路:
D
A
D
A
C
D
D
B
第一处:如果 n 是奇数,则中间的元素不动,所以应填:1。
第二处:使用 for 循环语句来交换数组元素的值,所以应填:i。 第三处:使用中间变量 t 来交换的,所以应填:t。 三、程序修改题
解题思路:
B
A
A
C
第一处:在函数 fun 体中,k 是一个浮点型变量,所以应改为:float k;。
C
D
D
D
第二处:三个数比较大小,第 1 个条件是第 1 个比第 2 个小,则交换。第 3 个条件是第 2
个比第 3 个小,则也交换。第 2 个条件是应该第 1 和第 3 个小,则交换就符合题意了,所
以应改为: if(*a<*c)。
解题思路:
第一处: 试题要求返回字符串的首地址,所以应改为:char *fun(char *s,char *t)
第二处: 取字符串指针 ss 的下一个位置,所以应改为:ss++;。 第三处:取字符串指针 tt 的下一个位置,所以应改为:tt++;。 四、程序设计题

3月全国计算机等级考试二级c语言最新上机考试题库及答案-精品

3月全国计算机等级考试二级c语言最新上机考试题库及答案-精品

3月全国计算机等级考试二级c语言最新上机考试题库及答案-精品一、填空给定函数的功能是调用fun函数建立班级通讯录。

通讯录记录每位学生的编号,姓名和电话号码。

班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为答案yfile5.dat的二进制文件中。

答案:1. STYPE 2. FILE 3. fp二、修改先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串后面。

答案:1. for(i = 0 ; i < sl ; i++) 2. t[2*sl] =` 0`;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式是:将a数的十位和个位数依次放在c 数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(a/10)*1000+(b/10)*100+(a %10)*10+(b%10);第2套一、填空从键盘输入若干行文本(每行不超过80个字符),写到文件答案yfile4.txt中,用-1作为字符串输入结束的标记。

然后将文件的内容读出显示在屏幕上。

文件的读写分别有自定义函数ReadText和WriteText实现。

答案:*fw str str二、修改从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。

答案: long *t sl = sl*10;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(b/10)*1000+(a%10)*100+(b%10)*10 +(a/10);第3套一、填空将自然数1~10以及它们的平方根写到名为答案yfile3txt的文本文档中,然后再顺序读出显示在屏幕上。

答案: (1)fp (2)fclose(fp) (3)fname二、修改将n个无序整数从小到大排序。

2013年计算机二级C语言上机题库及答案解析(10)

2013年计算机二级C语言上机题库及答案解析(10)

填空题 给定程序中已建⽴⼀个带有头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。

函数fun的功能是:把形参x的值放⼊⼀个新结点并插⼊到链表中,插⼊后各结点数据域的值仍保持递增有序。

请在程序的下划线处填⼊正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考⽣⽂件夹下的BLANK1.C中。

不得增⾏或删⾏,也不得更改程序的结构! 给定源程序: #include #include #define N 8 typedef struct list { int data; struct list *next; } SLIST; void fun( SLIST *h, int x) { SLIST *p, *q, *s; s=(SLIST *)malloc(sizeof(SLIST)); s->data=___1___; q=h; p=h->next; while(p!=NULL && x>p->data) { q=___2___; p=p->next; } s->next=p; q->next=___3___; } SLIST *creatlist(int *a) { SLIST *h,*p,*q; int i; 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; return h; } void outlist(SLIST *h) { SLIST *p; p=h->next; if (p==NULL) printf("\nThe list is NULL!\n"); else { printf("\nHead"); do { printf("->%d",p->data); p=p->next; } while(p!=NULL); printf("->End\n"); } } main() { SLIST *head; int x; int a[N]={11,12,15,18,19,22,25,29}; head=creatlist(a); printf("\nThe list before inserting:\n"); outlist(head); printf("\nEnter a number : "); scanf("%d",&x); fun(head,x); printf("\nThe list after inserting:\n"); outlist(head); } 解题思路: 本题是要求在⼀个有序的链表中插⼊⼀个数,插⼊后各结点仍然是有序的。

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)3月全国计算机等级考试二级C语言上机题库(20~30套)考试频道小编收集整理计算机等级考试资料,免费提供给大家交流参考。

第二十一套1. 程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串右边的字符删去,只保留左边的k个字符。

ss所指字符串数组中共有N个字符串,且串小于M。

第一处void fun(char (*ss)[M], int k)第二处while (i第三处ss[i][k]=0;i++;}2. 程序修改给定程序MODI1.C中函数fun的功能是:根据以下公式求值,并作为函数值返回。

例如,给指定精度的变量eps输入0.0005时,应当输出Pi=30140578.。

/**found**/t=1;/**found**/return(2*s);3. 程序设计假定输入字符串中只包含字母和*号。

请编写函数fun,它的功能是:将字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。

函数fun中给出的语句仅供参考。

void fun(char*a,int n){int i=0,k=0;while(a[k]= =*)k++;if(kn){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1. 程序填空给定程序中,函数fun的功能是:a所指43矩阵中第k行的元素与第0行元素交换。

例如:有下列矩阵1 2 34 5 67 8 910 11 12若k为2,程序执行结果为7 8 94 5 61 2 310 11 12第一处void fun(int (*a)[N],int k)第二处for(i=0;i第三处a[0][i]=a[k][i];2. 程序修改给定程序MODI1.C中函数fun的功能是:读入一个字符串(长度20),将该字符串中的所有字符串按ASCII码升序排序后输出。

博文2013年3月二级C课堂笔试试卷 - 含答案版

此只作参考答案.如有问题请到博文办公室咨询解答!第 1题:以下C 语言用户标识符中,不合法的是(D )。

A)_1 B)AaBc C)a_b D)a-b 第2题:以下选项中那一组都是合法的常量( B )。

A )-80 ‟\‟ 0x8g -8e1.0 …\b ‟ ′\"′o115 B) -899 …\007‟ 0xfab -.18e-2 …\t ‟ ‟\\‟ .1e0 C) 1,300 056 …\080‟ …\xfab ‟ "\x7G" main(){ char c1,c2; c1=‟A‟+‟8‟-…4‟; c2=‟A‟+‟8‟-…5‟;printf(“%c,%d \n”,c1,c2);}程序运行后的输出结果是( A )A )E,68B )D,69C )E,D D 第4题:有以下定义:int a ;long b ;double x ,y ;以下正确的表达式是 (D )A) y=x+y=x B) a=x!=y ; C) (a*y)%b D) a%(int)(x-y)第5题:以下定义语句中正确的是 ( B )A)int a=b=0 ; B)char A=65+1,b='b';C)float a=1,*b=&a,*c=&b ; D)double a=0.0;b=1.1;第6题:若有定义:double a=22;int i=0,k=18;则不符合C语言规定的赋值语句是( C ) A)a=a++,i++; B)i=(a+k )<=(i+k); C)i=a%11; D)i=!a ; 第7题:设有定义int x=2;以下表达式中,值不为6的是(D ) A) x*=x+1 B) x++,2*x C) x*=(1+x) D)2*x,x+=2 第8题: 表达式3.6-5/2+1.2+5%2的值是(D ) A)4.3 B)4.8 C)3.3 D)3.8 第9题:如有定义语句:int x=12,y=8,z;,在其后执行语句z=0.9+x/y,则z 的值为 (B ) A.1.9 B.1 C.2 D.2.4第10题:若有定义语句:int x=10;,则表达式x-=x+x 的值为( B )A )-20B )-10C )0D )10第11题: 表达式:(int)((double)9/2)-(9)%2的值是( B ) A )0 B )3 C )4 D )5第12题:有以下程序 main(){int x,y,z; x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z); }程序运行后的输出结果是____C ___。

2013计算机二级C语言上机题库及答案解析(15)

为⼤家收集整理了《2013计算机⼆级C语⾔上机题库及答案解析(15)》供⼤家参考,希望对⼤家有所帮助第⼀题:填空题 请补充fun函数,该函数的功能是:寻找两个整数之间的所有素数(包括这两个整数), 把结果保存在数组bb中,函数返回素数的个数。

例如:输⼊3和17,则输出为3 5 7 11 13 17 请勿改动主函数mian和其他函数中的任何内容,仅在fun函数的横线上填⼊所编写的若⼲表达或语句。

#include #include #define N 1000 int fun(int n, int m, int bb[N]) { int i, j, k = 0, flag; for (j=n; j<=m; j++) { ___1___; for (i=2; i if (___2___) { flag = 0; break; } if (___3___) bb[k++] = j; } return k; } main() { int n = 0, m = 0, i, k; int bb[N]; printf("Input n\n"); scanf("%d", &n); printf("Input m\n"); scanf("%d", &m); for (i=0; i bb[i] = 0; k = fun(n, m, bb); for (i=0; i printf("M", bb[i]); } 填空题答案: 第1处填空:flag=1 第2处填空:j%i==0或0==j%i或!(j%i) 第3处填空:flag==1或1==flag第⼆题:改错题 下列给定程序中,函数fun的功能是:为⼀个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针转会主函数。

请改正函数fun中的错误,使它能得出正确的结果。

2013年3月计算机二级C语言模拟试题-1

2013年3月计算机二级C语言模拟试题-1(总分:105.00,做题时间:90分钟)一、填空题(总题数:8,分数:16.00)1.C语言中基本的数据类型有: 1、 2 、 3 。

(分数:2.00)填空项1:__________________ (正确答案:整型)填空项1:__________________ (正确答案:实型)填空项1:__________________ (正确答案:字符型。

)解析:2.C语言中普通整型变量的类型说明符为 1,在内存中占 2字节,有符号普通整型的数据范围是 3。

(分数:2.00)填空项1:__________________ (正确答案:int , 2 , -32768~ +32767)解析:3.整数-35在机内的补码表示为 1。

(分数:2.00)填空项1:__________________ (正确答案:1111111111011101)解析:4.执行下列语句int a=8; a+=a-=a*a; 后,a的值是 1 。

(分数:2.00)填空项1:__________________ (正确答案:- 112)解析:5.有如下语句:ch ar A[ ]={”I am a student”}; 该字符串的长度是 1,A[3]= 2 。

(分数:2.00)填空项1:__________________ (正确答案:14)填空项1:__________________ (正确答案:’m’)解析:6.符号”a”和’a’的区别是 1。

(分数:2.00)填空项1:__________________ (正确答案:”a”是字符串常量,而’a’是字符常量。

)解析:7.所谓“指针”就是 1 。

“&”运算符的作用是 2。

“*”运算符的作用是 3 。

(分数:2.00)填空项1:__________________ (正确答案:存放地址值的变量或常量)填空项1:__________________ (正确答案:或者答地址。

2013年3月计算机二级C语言模拟试题-2

2013年3月计算机二级C语言模拟试题-2 (总分:100.00,做题时间:90分钟) 一、填空题(总题数:8,分数:16.00) 1.C语言中普通整型变量的类型说明符为 1,在内存中占 2字节,有符号普通整型的数据范围是 3。 (分数:2.00) 填空项1:__________________ (正确答案:int ,2个字节,-32768~ +32767) 解析: 2.C语言中基本的数据类型有: 1 、 2 、 3 。 (分数:2.00) 填空项1:__________________ (正确答案:整型) 填空项1:__________________ (正确答案:实型) 填空项1:__________________ (正确答案:字符型) 解析: 3.设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是 1 。 (分数:2.00) 填空项1:__________________ (正确答案:- 4) 解析: 4.共用体和结构体的定义格式类似,不同点是 1。 (分数:2.00) 填空项1:__________________ (正确答案:结构体的成员占有各自不同的空间,而共用体的各成员放到同一存储空间) 解析: 5.有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是 1 。 (分数:2.00) 填空项1:__________________ (正确答案:a=1,b=3,c=2) 解析: 6.有如下语句:char A[ ]={”I am a student”}; 该字符串的长度是 1,A[3]= 2 。 (分数:2.00) 填空项1:__________________ (正确答案:14) 填空项1:__________________ (正确答案:'m') 解析: 7.符号”a”和’a’的区别 1。 (分数:2.00) 填空项1:__________________ (正确答案:"a"是字符串常量,而'a'是字符常量。) 解析: 8.下列程序的输出结果是 1 。 int ast(int x,int y,int * cp,int * dp) { *cp=x+y; *dp=x-y; } main2 { int a=4,b=3,c,d; ast(a,b,&c,&d); printf("%d,%d/n",c,d); } (分数:2.00) 填空项1:__________________ (正确答案:7,1) 解析: 二、选择题(总题数:20,分数:40.00)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档