ImageVerifierCode 换一换
格式:DOCX , 页数:60 ,大小:41.12KB ,
资源ID:13054824      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-13054824.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机二级考试c程序设计语言上机题库.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

计算机二级考试c程序设计语言上机题库.docx

1、计算机二级考试c程序设计语言上机题库第一套填空:给定程序的功能是调用fun函数建立班级通顺录。通讯录中记录每位学生的编号、姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。1、STYPE 2、FILE 3、fp改错:先将在字符串S中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面。例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为:“ABCDEEDCBA”.1、将s1改为sl 2、将1倍数组长度给位2倍的数组长度程序设计:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的侍

2、卫和各位数一次放在c数的千位和十位上,b数的十位和个位数一次放在c数的百位和个位上。例如:当a=45,b=12时,调用该函数后,c=4152.该题有两种方法:1、*c=a/10*1000+a%10*10+b/10*100+b%10; 2、用in、out文件。第二套填空:从键盘输入若干行文本,写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别有自定义函数TeadText和WriteText实现。1、*fw 2、str 3、str改错:从低位开始取出长整型变量s中奇数位上的数,一次构成一个新数放在t中。高位仍在高位,低位仍在低位。例如

3、:当s中的数为:7654321时,t中的数为:7531。1、将long t改为long *t 2、将sl=sl*100改为sl=sl*10第三套填空:将自然数110以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。1、fp 2、fclose(fp) 3、fname改错:将n个无序整数从小到大排序。1、将范围改为n 2、将t改为p程序设计:将a、b数拆开重新组合。第四套填空:将指定的内容复制到指定的目标文件中,复制成功时返回1,失败时返回0。1、“r” 2、fs 3、ft改错:将一个数中的每一位上位偶数的数依次取出放到新数t中。高位和地位不变。1、=与=的使

4、用2、与/的使用第五套填空:把形参x的值放入一个新结点并插入到递增有序链表中,插入后仍保持有序。1、x 2、p 3、s改错:计算一个正整数的各位上的数字之积。1、使用变量先赋值(k=1) 2、和/的使用程序设计:计算几门课程的平均分。1、int i;float aver=0.0;2、用in、out文件for(i=0;inext 2、t-data 3、t改错:将一个字符串逆序输出。1、注意形参的定义类型(*a) 2、输出函数的书写格式(添,)程序设计:比较两个字符串的长度,返回较长的字符串;若字符串的长度相同,则返回第一个字符串。1、用in、out文件第七套填空:删除有序递增链表中内容相同的结点

5、。1、q 2、p-next 3、p-next改错:用选择法对数组中的n个元素按从小到大的顺序进行排序。1、一条语句后面要有分号(加;) 2、p应该记录最小元素的下标i程序设计:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。1、int i; 2、不能用in、out文件*n=0;for(i=7;i=m;i+)if(i%7=0|i%11=0)a(*n)+=i;第八套填空:在带有头结点的单向链表中查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在则返回0值。1、NULL 2、return n; 3、fun(head,ch)改错:

6、删除p所指字符串中的所有空白字符(包括制表符、回车符及换行符),输入的字符串用#结束输入。1、注意关键词的大小写(将For改为for) 2、注意转义字符的使用(用单引号)程序设计:将数组中的字符串下标为奇数的字母转换为大写(若该位置上不是字母,则不转换)。1、用in、out文件 2、int i ; for(i = 1 ; i = a & ssi next 3、head改错:求出字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。1、空值在计算机中用大写的NULL表示 2、注意*号的使用(*r=*p)程序设计题:将s所指字

7、符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全部删除;串中剩余字符所形成的一个新串放在t所指的数组中。1、int i,k=0; 2、不能用in、out文件for(i=0;idata 2、p-next 3、head改错:将s所指字符串中出现的与t1所指字符串相同的子串全部替换成t2所指字符串,所形成的新串放在w所指的数组中(t1与t2所指的字符串的长度应该相同)。1、注意变量的类型(加*r) 2、一条语句后应该有分号(;)程序设计题:将下标为偶数的字符删除,将剩余的字符串放在t所指的数组中。1、int i,k=0; 2、用in、out文件for(i=1;istrlen(s);i

8、+=2)tk+=si;tk=0;第十一套填空:找出指定编号人员的数据,作为函数值返回,若指定编号不存在,返回数据中的编号为空串。1、STU 2、std【i】.num 3、std【i】改错:从s所指字符串中,找出与t所指字符串相同的子串的个数作为函数值返回。1、语句后面要有分号 (;) 2、注意变量的类型(加*)程序设计题:将字符串中ASCII值为偶数的字符串删除,剩余的字符形成一个新串放在t所指的数组中。1、int i,k=0; 2、用in、out文件for(i=0;istrlen(s);i+)if(si%2!=0)tk+=si;tk=0;第十二套填空:找出指定出生年份的人员,将其数据放在形参

9、k所指的数组中,同时由函数值返回满足指定条件的人数。1、std【i】.year 2、std【i】 3、n改错:读入一个整数k,打印它所有质因子。1、子函数定义时后面无; 2、if语句后面有()程序设计题:找出成绩最高的学生记录,通过形参指针传回主函数。用in、out文件。第十三套填空:将结构体变量中存储的学生成绩都同时乘以一个系数a。1、STU 2、score【i】 3、&std改错:求k!(k13),所求阶乘的值作为函数值返回。1、注意if语句的结构(加() 2、注意if后面的判断语句(=与=的使用)程序设计题:将给定数组左下三角元素中的值乘以给定的值n。1、用in、out文件第十四套填空:

10、将形参指针所指结构体数组中的三个元素按num成员进行升序排列。1、*std 2、PERSON 3、&std改错:将m个字符串连接起来,组成一个新串,放入pt所指的存储区中。1、注意关键字的大小写(Int改为int) 2、二维数组元素的引用方式(kij)程序设计题:将数组左下三角元素中的值全部置成0。用in、out文件第十五套填空:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,变在main函数中输出。1、std【0】 2、std【i】.age 3、max.name改错:实现两个整数的交换。1子函数的定义要分开,并且要观察调用时传递过来的是地址还是数值(fun(int *a,int

11、*b)2通过指针交换内容时,指针变量前面要有内容符号*程序设计题:求出二维数组每列中最小元素,并依次放入另一个一维数组中。1、用in、out文件。2、int i,j,min4;for(i=0;iN;i+)mini=tt0i;for(j=1;jttji)mini=ttji;ppi=mini;第十六套填空:利用结构体变量存储了一名学生的信息,通过函数输出这位学生的信息。1、tt 2、tt.score【i】 3、std改错:求出数组中最大数和次最大数,并把最大数和a【0】中数对调、次最大数和a【1】中的数对调。1、当看不出来有语法上的错误时,就要根据上下程序段入手,找出突破口。(m=i)2、m应该存

12、储最大值的下标。(m=k)程序设计题:给定一个n位无符号整数,求出低n-1位的数返回。用in、out文件。第十七套填空:对形参ss所指字符串数组中的M个字符串按长度由短到长进行排序。1、i+1 2、k=j 3、t改错:判断ch中的字符是否与str所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后。1、注意变量的类型(加*) 2、注意if语句的判断条件(*str!=ch)3、注意字符串结束标志的使用(0与0是相同的)程序设计题:将所给字符串中的内容逆置。用in、out文件。第十八套填空:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符

13、串等长。1、k 2、len 3、ss【i】【j】改错:计算整数n的阶乘。1、注意自增自减运算符的使用(将n改为n-) 2 return result;程序设计题:将s所指的字符串中删除给定的字符。用in、out文件。第十九套填空:求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。1、ss【i】 2、n+j 3、+1改错:将p所指字符串中每个单词的最后一个字母改成大写。1、注意变量的类型(在p前加*) 2、一条语句后面要有分号程序设计题:对一个字符串除首、尾字符外,将其余5个字符按ASCII码降序排列。用in、out文件。第二十套填空:求ss所指

14、字符串数组中长度最长的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。1、(*ss)【N】 2、len 3、*n=len改错:根据形参m,计算如下公式的值。t=1+1/2+1/3+1/4+1/m1、将k改为i 2、将-该为程序设计题:统计一个长度为2的字符串在另一个字符串中出现的次数。用in、out文件。第二十一套填空:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。1、iM 2、 3、k改错:将tt所指字符串中的小写字母都改为对应的大写字母,其它字符不变。1、判断一个字符是否为字母用&2、将小写字母转换为大写字母需减去3

15、2,;反之加32程序设计题:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。由于程序本身较为复杂,同学们较难理解,所以建议用in、out文件。第二十二套:填空:将一个字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。1、j+ 2、s【i】=t1【i】 3、ij改错:用冒泡法对6个字符串按由小到大的顺序进行排序。1、for语句内的表达式用;隔开 2、交换的是内容(*(pstr+j)程序设计题:求出ss所指字符串中指定字符的个数。用in、out文件。第二十三套填空:在一个字符串中的每个数字字符之后插入一个*号。1、& 2、0 3、

16、s【j】改错:计算如下公式的值:y=1+1/2*2+1/3*3+1/4*4+1/m*m.1、注意变量的变化范围(i=m) 2、因为我们得到的结果是一个浮点数,所以应该将分子1改为1.0,/的结果跟着精度高的类型走。程序设计题:我们要得到一个矩阵加上他转置后的矩阵后的矩阵。用in、out文件。第二十四套:填空:统计一个字符串中出现数字字符的次数。1、s【i】 2、s【i】=9 3、*t=n改错:实现两个变量值的交换。1、注意x的类型(交换内容时要有*) 2、返回的值作为b的值,所以应该返回t程序设计题:求出1到1000之间能被7或11整除、但不能同时被7和11整除的所有整数。1、不能用in、ou

17、t文件。2、int i ;*n = 0 ;for(i = 7 ; i 1000 ; i+)if(i % 7) = 0 | (i % 11) = 0) & (i % 77) != 0) a(*n)+ = i ;第二十五套填空:将一个字符串中下标为奇数的字符右移到下一个奇数位,最右边被移除字符串的字符绕回放到第一个奇数位,下标为偶数的字符不动。1、k=n-1 2、c=s【k】 3、s【1】=c改错:求s=aaaa-aaa-aa-a(此处aaaa表示n个a,a和n的值在1至9之间)1、t的初始值应为0 2、t每次都应除以10而不是取余(将/改为%)程序设计题:统计在一个字符串中a到z26个小写字母各

18、出现的次数。用in、out文件。第二十六套填空:对一个字符串中小标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入另一个数组当中,形成一个新串。1、t=i 2、j=i+2 3、p【j】=0;改错:利用公式求出的近似值。1、t的绝对值用fabs这个函数 2、将%改为/程序设计题:删除一个字符串中指定下标的字符。用in、out文件。第二十七套:填空:在一个给定字符串中寻找一个与给出的字符相同的字符,并在其后面插入该字符。1、 0 2、 0 3、c改错:计算数组元素中值为正数的平均值(不包括0)。1、注意变量类型(int改为double) 2、注意和/的含义程序设计题:利

19、用如下公式求s的值:S=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+n)1、float s=1.0; 2、不能用in、out文件。int i,t=1;for(i=2;i=n;i+) t+=i; s+=1.0/t;return s;第二十八套填空:有一个N*N矩阵,根据给定的m(m0.000001); return x1;第二十九套填空:将N*N矩阵中元素的值按列右移1个位置,右边被移出矩阵的元素绕回左边。1、iN 2、x=t【i】【N-1】 3、t【i】【0】=x改错:计算并输出下列级数的前N项之和SN,直到SN+1大于q为止。SN=2/1+3/2+4/3+(N+1)/N1、返回

20、类型应该为小数,所以将(n+1)改为(n+1.0)或前加一个强制类型转换(float)2、应该返回t程序设计题:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为:F(0)=0,F(1)=1F(n)=F(n-1)+F(n-2)1、int f0 = 0, f1 = 1, f ;2、不能用in、out do f = f0 + f1 ; f0 = f1 ; f1 = f ; while(f t) ; return f ;第三十套填空:有N*N矩阵,将矩阵的外围元素顺时针旋转。1、t【j】【0】 2、j- 3、r【j】改错:计算S=f(-n)+f

21、(-n+1)+f(0)+f(1)+f(2)+f(n)的值。1、应定义函数的返回类型(double)2、一条语句后面要有分号程序设计题:1、double t=0.0; 2、不能用in、out文件。int i;for(i=1;i=m;i+)t+=log(i*1.0);return (sqrt(t);第三十一套填空:有一个N*N的矩阵,以对角线为对称线,对称元素相加并将结果存放在下三角元素中,右上三角元素置为0。1、(*t)【N】 2、t【i】【j】 3、t【j】【i】改错:计算函数F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。1、将m和n

22、分别用括号括起来2、return value;程序设计题:关于*号的问题。用in、out文件。第三十二套填空:将N*N矩阵主对角线元素中的值域反向对角线对应位置上元素中的值进行交换。1、(*t)【N】或者t【】【N】 2、i=0;in; 3、s改错:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回-1。1、函数值为void时不应有return,所以将函数类型改为int2、注意关键词的大小写问题(If改为if)程序设计题:关于*号的,用in、out文件。第三十三套填空:计算N*N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。1、sum=0; 2、t【i】【i

23、】 3、-1改错:用二分法求方程2x3-4x2+3x-6=0的一个跟,并要求绝对误差不超过0.001。1、将int改为double 2、将程序设计题:关于*号的问题,用in、out文件。第三十四套填空:把形参a所指数组中的奇数按原顺序一次存放到a【0】、a【1】中,把偶数从数组中删除,奇数个数通过函数值返回。1、1(这个地方要注意,平时都判断是否等于0,而在这里是要将奇数放到一个数组中去,所以要判断余数是否为1)2、j(j为奇数的个数)改错:求出两个非零正整数的最大公约数,并作为函数值返回。1、交换变量时注意交换顺序,交换语句为t=a;a=b;b=t; 2、返回值应改为b程序设计题:关于*号的

24、问题,用in、out文件。第三十五套填空:把形参a所指数组中的偶数按原顺序一次存放到a【0】、a【1】中,把奇数从数组中删除,偶数个数通过函数值返回。1、a【i】%2 2、a【j】 3、j改错:按以下递归公式求函数值。fun(n)=fun(n-1)+2(n1)或者10(n=1)1、1 形参要定义类型(int n) 2、2、注意判断条件(=)程序设计题:关于*号的问题用in、out文件。第三十六套填空:把形参a所指数组中的最小值放在元素a【0】中,接着把形参a所指数组中的最大值放在a【1】元素中;在把a所指数组中元素的次小值放在a【2】中,把a所指数组元素中的次大值放在a【3】;其余以此类推。1

25、、a【i】 2、a【j】 3、a【j】改错:用递归算法计算斐波拉契数列中第n项的值。1、switch语句后面没有分号 2、case后面直接跟:程序设计题:某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出。求出该学生的平均分放在记录的ave成员中。1、int i; 2、无in、out文件。double sum=0;for(i=0;isi;a-ave=sum/N;第三十七套填空:把形参a所指数组中的最大值放在元素a【0】中,接着把形参a所指数组中的最小值放在a【1】元素中;在把a所指数组中元素的次大值放在a【2】中,把a所指数组元素中的次小值放在a【3】;其余以此

26、类推。1、a【N】或者*a 2、i+=2 3、j=i+1 改错:按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每五个元素求一个平均值,并将这些值一次存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数多余部分忽略不计。1、将sun改为sum 2、将i+1括起来程序设计题:学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中。现要求把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。1、int i ; double ave = 0.0 ; *n = 0 ; for(i = 0 ; i N ; i+) ave = ave + ai.s ; ave /= N ; for(i = 0 ; i N ; i+) if(ai.s 改为程序设计题:学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中。现要求把分数最高的学生数据放在b所指的数组中,并返回分数最高的学生的人数。1、int i, max = a0.s, n=0; for(i = 1; i N; i+) if(max ai.s) max = ai.s ; for(i = 0; i N; i+) if(max=ai.s) bn+ = ai ; return n;第三十九套填空:逆置数组元素中的值。1、

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2