国家计算机二级C语言上机试题答案.pdf
《国家计算机二级C语言上机试题答案.pdf》由会员分享,可在线阅读,更多相关《国家计算机二级C语言上机试题答案.pdf(144页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、上机题空的位置不变,所以只有题干和答案,方便快捷,考试必备咯第1套上机考试试题一、程序填空题给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位学生的编号、姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。二、程序修改题给定程序MODI1.C中函数fun的功能是:先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆连接到t串的后面。例如:当s中的字符串为:“ABCDE,时,则t中的字符串应为;“ABCDEEDCBA”。请改正程序中的错误,使它能得出正确的结果。三、程序设计题函数fun的功能是:将两个两位
2、数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如,当a=45,b=例 时,调 用 该 函 数 后,c=4152o1、填空题(1)STYPE(2)FILE(3)fp2、修改题(1)for(i=0;i=sl;i+)应改为 for(i=0;i=sl;i+)(2)tsl=0 应改为 t2*sl=、0 或 tsl+sl=0 3、设计题*c=(a/10)*1000+(b/10)*l 00+(a%10)*10+(b%10);第 2 套上机考试试题一、程序填空题,给定程序的功能是:从键盘输入若干行文本t
3、每行不超过80个字符,写到文件myflle4.txt中,用-1,作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数 R.eadText 和 WriteText 实现。二、程序修改题给定程序MODI1.C 中函数fun的功能是:从低位开始取出长整型变量s 中奇数位上的数,依次构成一个新数放在t 中。高位仍在高位,低位仍在低位。例如,当s 中的数为:7654321时,t 中的数为:7531 o请改正程序中的错误,使它能得出正确的结果。三、程序设计题函数fun的功能是:将两个两位数的正整数a、b 合并形成一个整数放在c 中。合并的方式是:将 a 数的十位和个位数依
4、次放在c 数的个位和百位上,b 数的十位和个位数依次放在c 数的千位和十位上。例如,当a=45,b=如时,调用该函数后,c=1524o1、填空题(1)*fw(2)str(3)str2、修改题(1)void fun(long s,long*t)应改为 void fun(long s,long*t)(2)sl=sl*10;应改为 sl=sl*10;3、设计题*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);第 3 套上机考试试题一、程序填空题给定程序中,函数fun的功能是:将自然数110以及它门的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显
5、示在屏幕上。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。二、程序修改题给定程序MODILC中fun函数的功能是:将 n 个无序 整数从小到大排序。请改正程序中的错误,使它能得出正确的结果。三、程序设计题函数fun的功能是:将两个两位数的正整数a、b 合并形成一个整数放在c 中。合并的方式是:将 a 数的十位和个位数依次放在c 数的个位和百位上,b 数的十位和个位数依次放在C数的十位和千位上。例如,当a=45,b=如时,调用该函数后,c=2514o1、填空题(1)fp(2)fclose(fp)(3)fname2、修改题(1)for(i=j+l;in-l;i+)改为 fo
6、r(i=j+1 ;in;i+)(2)t=i;应改为 p=i;3、设计题*c=(b%10)*1000+(a%10)*100+(b/l 0)*10+a/l 0;第4 套上机考试试题一、程序填空题给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,败时返回值为0。在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文 件名放在变量tfname中。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。二、程序修改题给定程序MODI1.C 中函数fun的功能是:将长整型数s 中每一位上为偶数的数依次取出
7、,构成一个新数放在t 中。高位仍在高位,低位仍在低位。例如,当s 中的数为:87653142时,t 中的数为:8642。请改正程序中的错误,使它能得出正确的结果。三、程序设计颍函数fun的功能是:将两个两位数的正整数a,b合并形成一个整数放在 c 中。合并的方式是:将 a 数的十位和个位数依次放在c 数的十位和千位上,b 数的十位和个位数依次放在c 数的百位和个位上。例如,当a=45,b=如时,调用该函数后,c=5142o1、填空题(1)T(2)fs(3)ft2、修改题(1)if(d%2=0)应改为 if(d%2=0)(2)s=10;应改为 s/=10;3、设计题*c=(a%10)*1000+
8、(b/10)*l 00+(a/10)*10+(b%10);第 5 套上机考试试题一、程序填空题给定程序中已建立一个带有头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接,姜。函数fun的功能是:把形参 x 的值放入一个新结点并插入到链表中,插后各结点数据域的值仍保持递增有序。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。二、程序修改题给定程序MODI1.C中函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20o若输入:2 0 2,则输出应该是:0。三、程序设计题请编写一个函数fu n,它的功能是:计算n 门课程的
9、平均分,计算结果作为函数值返回。例如:若有5 门课程的成绩是:90.5,72,80,61.5,5 5 则函数的值为:71.80o1、填空题(1)x(2)p(3)s2、修改题(1)long k=1;(2)num/=10;3、设计题int i;float ave=0.0;for(i=0;in;i+)ave=ave+ai;ave=ave/n;return ave;第 6 套上机考试试题一、程序填空题给定程序中已建立一个带有头结点的单向链表,在 main函数中将多次调用fun函数,每调用一次 fun函数,输出链表尾部结点中的数据,并释放该结点,使链表缩短。二、程序修改题给定程序MODILC中函数fun
10、的功能是:将字符串中的字符按逆序输出,但不改变字符串中的内容。例如,若字符串为abed,则应输出:debao三、程序设计题请编写一个函数fu n,它的功能是:比较两个字符串的长度,(不得调用C 语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。例如,输入beijing shanghai(为回车键),函数将返回 shanghai o1、填空题(1)next(2)t-data(3)t2、修改题(1)void fun(char*a)(2)printf(、%c,*a);3、设计题int i;char*p=s,*q=t;int n=0,m=0;while(*
11、p)计算串s 的长度n,其中p 为临时指针n+;P+;)while(*q)计算串t 的长度m,其中q 为临时指针(m+;q+;)if(n=m)比较m 和 n 的值,设置p 指向较大的指针p=s;elsep=t;return p;第 7 套上机考试试题一、程序填空题给定程序中已建立一个带有头结点酶单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。二、程序修改题给定程序MODILC中函数fun的功能是:用选择法对 数组中的n 个元素按从小到大的顺序进行排序。三、程序设计题请编写一个函数fu n,它的功能是:求出1 到m 之 间(含 m)
12、能被7或 11整除的所有整数放在数组a 中,通过n 返回这些数的个数。例如,若传送给m 的值为50,则程序输出:7 11 14 21 2228 33 35 42 44 491、填空题(1)q(2)next(3)next2、修改题(1)p=j;(2)p=i;3、设计题int i,j=0;*n=0;for(i=1 ;i=m;i+)if(i%7=0lli%ll=0)(aj=i;j+;)*n=j;第 8 套上机考试试题一、程序填空题,给定程序中,函数fun的功能是:在带有头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值回该结点在链表中所处的顺序号;若不存在值为ch的 结,函数返回。值。
13、二、程序修改题给定程序MODI1.C 中函数fun的功能是:删除p 所指字符串中的所有空白字符(包括制表符、回车符及换行符)。输入输入字符串时用,0,结束输入。1、填空题(1)0 或 NULL(2)n(3)head,ch2、修改题(1)for(i=0,t=0;pi;i+)ct=0 ;3、设计题int i;for(i=1 ;i=a&ssi=z )ssi-=32;)第 9 套上机考试试题一、程序填空题给定程序中,函数fun的功能是:统计出带有头结点的单向链表中结点的个数,存放在形参n 所指的存储单元中。二、程序修改题给定程序MODII.C中函数fun的功能是:求出s 所指字符串中最后一次出现的t
14、所指子字符串的地址,通过函数 值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。例如,当字符串中的内容为:“abcdabfabcdx”,t 中的内容为:“曲”时,输出结果应是:abcdxo当字符串中的内容为:“abcdabfabcdx”,t 中内 容为:abd”时,则程序输出未找到信息:not be found!o三、程序设计题函数,fun的功能是:将 8 所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除:串中剩余字符所形成的一个新串放在t 所指的数组中。例如,若 s 所指字符串中的内容为:“ABCDEFG123456,其中字符A 的ASCH
15、码值为奇数,因此应当删除:其中字 符 B 的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2 韵ASCII码值为偶数,所本巽笔1 中的下标也为偶数,因此不应当删除,其他依此类推。最 后 t 所指的数组中的内容应是:“246”。1、填空题(1)*n(2)next(3)head2、修改题(1)a=NULL;(2)if(*r=*p)3、设计题int i,j=0;for(i=0;istrlen(s);i+=2)if(si%2=0)tj+=si;tUl=。;第 1 0 套上机考试试题一、程序填空题,给定程序中,函数fun的功能是:计算出带有头结点的单向链表中各结点数据域中值之和作为
16、函数值返回。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。二、程序修改题给定程序MODII.C中函数fun的功能是:将 s 所指字 符串中出现的与 t l 所指字符串相同的子串全部替换成C 所指字符串,所形成的新串放在w 所指的数组中。在此处,要求t l 和 t2 所指字符串的长度相同。例如,当 s 所指字符串中的内容为:“abcdabfab”,t l 所 指子串中的内容为:“ab”,坦所指子串中的内容为:“99”时,结果在w 所指的数组中的内容应为:“99cd99f99”。三、程序设计题函数fun的功能是:将 s 所指字符串中下标为偶数的字符删除,串中剩余字符形成的新
17、串放在t 所指数组中。例如,当s所指字符串中的内容为:“A B C D E F G H I J K ”,在t所指数组中的内容应是:“B D F H J”。1、填空题(1)d a t a (2)n e x t (3)h e a d2、修改题(1)w h i l e (*r)(2)*a=*r;a+;r+;3、设计题i n t i,f o r (i=l;i s t r l e n (s);i+=2)t u+=S i ;t u =0 ;第1 1套上机考试试题一、程序填空题人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组s t d中,且编号惟一。函 数f u n的功能是:找
18、出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。二、程序修改题给定程序M O D I I.C中函数f u n的功能是:从s所指字 符串中,找出与t所指字符串相同的子串的个数作为函数值返回。例如,当s所指字符串中的内容为:“a b c d a b f a b ,t所字符串的内容为:“a b”,则函数返回整数3。三、程序设计题函数fun的功能是:将 s 所指字符串中ASCH值为偶数的字符删除,串中剩余字符形成一个新串放在t 所指的数组中。例如,若 s 所指字符串中的内容为:“ABCDEFGI2345,中字符B的ASCII码值为偶数、字符2 的ASCII
19、码1 值为偶数、都应当删除,其他依此类推。最 后 t 所指的数组中的内容应是:“ACEG135”。1、填空题(1)STU(2)stdtil.num(3)stdi2、修改题(1)r+;p+;(2)if(*r=0 3、设计题int i,j=0;for(i=0;istrlen(s);i+)if(s i%2)tj+=s i;tj=O;第 12套上机考试试题一、程序填空题人员的记录由编号和出生年、月、日组成,-N 名人员的据已在主函数中存入结构体数组std中。函数fun的功能:找出指定出生年份的人员,将其数据放在形参k 所指的 组中,由主函数输出,同时由函数值返回满足指定条件的人数。二、程序修改题给定程
20、序MODI1.C的功能是:读入一个整数k(2WkWoooo),打印它的所有质因子(即所有为素数的因子)。如,若输入整数:2310,则应输出:2、3、5、7、11。三、程序设计题已知学生的记录由学号和学习成绩构成,N名学生的数己存入结构体数组a中。请编写函数fu n,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。1、填空题(1)stdi.year(2)stdi(3)n2、修改题(1)IsPrime(int n)(2)if(!(n%i)3、设计题int i,for(i=l;iN;i+)if(maxai.sj=i;max=ai.s
21、;)*s=aj;第13套上机考试试题一、程序填空题给定程序通过定义并赋初值的方式,利用结构体变量存了一名学生的学号、姓名和3门课的成绩。函数触的功能是将该学生的各科成绩都乘以一个系数a。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。二、程序修改题给定程序M O D I I.C中函数f u n的功能是:求k!(k0)(2)else if(k=O)3、设计题int i,j;for(i=0:iN;i+)for(j=0;j=i;j+)a i j *=n;第 14套上机考试试题一、程序填空题给定程序中,函数fun的功能是:将形参指针所指结构体数组中的三个元素按num成员进行升序排
22、列。二、程序修改题给定程序MODI1.C中函数fun的功能是:将 m(lWmW10)个字符串连接起来,组成一个新串,放入pt所指存储区中。例如:把 3 个串:“abc”,“CD”,“EF”连接起来,结果是“abcCDEF”。三、程序设计题程序定义了 NXN的二维数组,并在主函数中自动赋值。编写函数Fun(int at)N),函数的功能是:使数组左下三角元素中值全部置成0。例如:a 数组中的值为1 9 7 0 9 7a=2 3 8 则返回主程序后a 数组中的值应为0 0 84 5 60 0 01、填空题(1)*std PERSON(3)std2、修改题(1)int k,q,i;(2)pti=st
23、r k i;3、设计题int i,j,min,k;for(i=0;iN;i+)min=t t0 i;k=0;for(j=l;jttj i)min=ttj ij;k=j;ppi=t tk i;)第 1 5 套上机考试试题一、程序填窜崎给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。二、程序修改题给定程序MODII.C中函数fun的功能是:实现两个整数的交换。例如给a 和 b 分别输入:60和6 5,输出为:a=65b=60三、程序设计题请编一个函数 void fun(int ttMNJ,int ppN),tt 指向一个 M 行
24、N 列的二维数组,求出二维数组每列中最小元素,并依次放入PP所指一维数组中。二维数组中的数已在主函数中赋予。1、填空题(1)*std(2)stdi.age(3)max.name2、修改题(1)void fun(int*a,int*b)(2)t=*b;*b=*a;*a=t;3、设计题int i,j,min,k;for(i=0;iN;i+)min=11 0 ij;k=0;for(j=l;jttji)min=tt j i;k=j;)PP i=t tk i;第 16套上机考试试题一、程序填空题程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息。函数fun的功能是输出这位学生的信息。请在程序
25、的下划线处填入正确的内容并把下划线删除,程序得出正确的结果。二、程序修改题给定程序MODII.C中函数fun的功能是:求出数组中最大数和次最大数,并把最大数和ao中的数对调、次最大数和al中的数对调。三、程序设计题请编写一个函数unsigned fun(unsigned w),w是一个大于10的无符号整数,若w是n(nN2)位的整数,函数求出w的低n-1位的数作为函数值返回。例如:w值 为5923,则函数返回923;w值 为923则函数返回23。1、填空题(1)tt(2)tt.scorei(3)std2、修改题(1)m=i;(2)if(a k a m)m=k;3、设计题unsigned t,s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国家 计算机 二级 语言 上机 试题答案
限制150内