c语言考试题库.docx
《c语言考试题库.docx》由会员分享,可在线阅读,更多相关《c语言考试题库.docx(71页珍藏版)》请在冰豆网上搜索。
c语言考试题库
1.编程题
请编写函数fun,其功能是:
将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是:
将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。
例如,当a=16,b=35,调用该函数后,c=5361。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
2.编程题
请编一个函数voidfun(inttt[M][N],intpp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。
二维数组中的数已在主函数中给出。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
3.编程题
请编写函数fun(),对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCII值码升序排列。
编写完程序,运行程序后输入:
字符串为Bdsihad,则排序后输出为应为Badhisd。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
4.编程题
编写函数fun(),它的功能是求n以内(不包括n)同时能被5与11整除的所有自然数之和的平方根s,并作为函数值返回。
例如:
n为1000时,函数值应为s=96.979379。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花
5.编程题
请编写函数fun(),它的功能是求Fibonacci数列中小于t的最大的一个数,结果由函数返回。
其中Fibonacci数列F(n)的定义为
F(0)=0,F
(1)=1
F(n)=F(n-1)+F(n-2)
例如:
t=1000时,函数值为987。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
6.编程题
请编写一个函数fun(),它的功能是计算并输出给定整数n的所有因子(不包括1与自身)的平方和(规定n的值不大于100)。
例如:
主函数从键盘给输入n的值为56,则输出为sum=1113。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
7.编程题
程序定义了N×N的二维数组,并在主函数中自动赋值。
请编写函数fun(inta[][N],intn),该函数的功能是使数组左下半三角元素中的值加上n。
例如:
若n的值为3,a数组中的值为
a=254
169
537
则返回主程序后a数组中的值应为
554
499
8610
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
8.编程题
m个人的成绩存放在score数组中,请编写函数fun(),它的功能是:
将高于平均分的人数作为函数值返回,将高于平均分的分数放在up所指的数组中。
例如,当score数组中的数据为24,35,88,76,90,54,59,66,96时,函数返回的人数应该是5,up中的数据应为88,76,90,66,96。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
9.编程题
请编写函数voidfun(intx,intpp[],int*n),它的功能是:
求出能整除x且不是奇数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。
例如,若x中的值为24,则有6个数符合要求,它们是2,4,6,8,12,24。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
10.编程题
请编写一个函数voidfun(intm,intk,intxx[]),该函数的功能是:
将大于整数m且紧靠m的k个非素数存入所指的数组中。
例如,若输入15,5,则应输出16,18,20,21,22。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
11.编程题
请编写一个函数intfun(int*s,intt,int*k),用来求出数组的最小元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:
234345753134436458100321135760
则输出结果为6,100。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
12.编程题
下列程序定义了N×N的二维数组,并在主函数中自动赋值。
请编写函数fun(inta[][N]),该函数的功能是:
使数组右上半三角元素中的值全部置成0。
例如a数组中的值为
a=456
179
326,
则返回主程序后a数组中的值应为
000
100
320
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
13.编程题
下列程序定义了N×N的二维数组,并在主函数中赋值。
请编写函数fun(),函数的功能是:
求出数组周边元素的平方和并作为函数值返回给主函数中的s。
例如:
若a数组中的值为
a=01279
1112155
2216111
979102
54141
则返回主程序后s的值应为310。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
14.编程题
N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。
请编写函数fun(),它的功能是:
找出学生的最低分,由函数值返回。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
15.编程题
请编写一个函数fun(),它的功能是:
比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较短的字符串。
若两个字符串长度相等,则返回第1个字符串。
例如,输入nanjingnanchang(为回车键),函数将返回nanjing。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
17.编程题
请编写一个函数fun(),它的功能是:
将ss所指字符串中所有下标为偶数位置的字母转换为小写(若该位置上不是字母,则不转换)。
例如,若输入ABC4efG,则应输出aBc4efg。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
18.编程题
请编写一个函数fun(),它的功能是:
求出一个4×M整型二维数组中最小元素的值,并将此值返回调用函数。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
19.编程题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:
把分数最低的学生数据放在h所指的数组中。
注意:
分数低的学生可能不只一个,函数返回分数最低学生的人数。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
20.编程题
请编写函数fun(),该函数的功能是:
移动一维数组中的内容,若数组中有n个整数,要求把下标从p到n-1(p≤n-1)的数组元素平移到数组的前面。
例如,一维数组中的原始内容为1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,p的值为6。
移动后,一维数组中的内容应为7,8,9,10,10,11,12,13,14,15,1,2,3,4,5,6。
21.编程题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:
按分数的高低排列学生的记录,低分在前。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
22.编程题
请编写函数fun(),其功能是:
将所有大于1小于整数m的素数存入xx所指数组中,素数的个数通过k传回。
例如,输入25,则应输出23571113171923。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
23.编程题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:
把指定分数范围之外的学生数据放在b所指的数组中,分数范围之外的学生人数由函数值返回。
例如,输入的分数是80和89,则应当把分数低于80和高于89的学生数据进行输出,不包含80分和89分的学生数据。
主函数中把80放在low中,把89放在heigh中。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
24.编程题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:
函数返回指定成绩的学生数据,指定的成绩在主函数中输入。
若没找到指定的成绩,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
25.编程题
请编写函数fun(),其功能是:
将s所指字符串中下标为奇数的字符删除,串中剩余字符形成的新串放在t所指数组中。
例如,当s所指字符串中的内容为siegAHdied,则在t所指数组中的内容应是seAde。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
26.编程题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),该函数的功能是:
把高于等于平均分的学生数据放在b所指的数组中,低于平均分的学生数据放在c所指的数组中,高于等于平均分的学生人数通过形参n传回,低于平均分的学生人数通过形参m传回,平均分通过函数值返回。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
27.编程题
请编写函数fun(),其功能是:
计算并输出下列多项式值。
S=(1+1/2)+(1/3+1/4)+…+(1/(2n-1)+1/2n)
例如,若主函数从键盘给n输入12后,则输出为S=3.775958。
n的值要求大于1但不大于100。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
28.编程题
请编写函数fun(),它的功能是计算:
s=(1-ln
(1)-ln
(2)-ln(3)-…-ln(m))2
s作为函数值返回。
在C语言中可调用log(n)函数求ln(n)。
log函数的引用说明是doublelog(doublex)。
例如,若m的值为15,则fun()函数值为723.570801。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
29.编程题
请编写函数fun(),其功能是:
将s所指字符串中除了下标为奇数、同时ASCII值为偶数的字符外,其余的全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。
例如,若s所指字符串中的内容为edB2A4Dsdg,其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为偶数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标为奇数,因此不应当删除,其他依此类推。
最后t所指的数组中的内容应是d24。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
30.编程题
请编写函数fun(),它的功能是计算下列级数和,和值由函数值返回。
S=1-x+x2/2!
-x3/3!
+…+(-1*x)n/n!
例如,当n=15,x=0.5时,函数值为0.606531。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
31.编程题
m个人的成绩存放在score数组中,请编写函数fun(),它的功能是:
将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。
例如,当score数组中的数据为10,20,30,40,50,60,70,80,90时,函数返回的人数应该是4,below中的数据应为10,20,30,40。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
32.编程题
请编写函数fun(),它的功能是:
求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并将它们放在a所指的数组中,通过n返回这些数的个数。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
33.编程题
请编写函数voidfun(intx,intpp[],int*n),它的功能是:
求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。
例如,若x中的值为30,则有4个数符合要求,它们是1,3,5,15。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
34.编程题
请编写一个函数voidfun(char*tt,intpp[]),统计在tt字符串中'a'到'z'26个字母各自出现的次数,并依次放在pp所指数组中。
例如:
当输入字符串abcdefgabcdeabc后,程序的输出结果应该是:
333221110000000000000000000
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句
35.编程题
请编写一个函数voidfun(intm,intk,intxx[]),该函数的功能是:
将大于整数m且紧靠m的k个素数存入所指的数组中。
例如,若输入17,5,则应输出19,23,29,31,37。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
36.编程题
请编写一个函数intfun(int*s,intt,int*k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:
876675896101301401980431451777
则输出结果为6,980。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
37.编程题
编写函数fun(),函数的功能是:
根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。
S=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…+n)
例如:
若n的值为11时,函数的值为1.833333。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
38.编程题
编写函数fun(),它的功能是:
根据以下公式求p的值,结果由函数值带回。
m与n为两个正数且要求m>n。
P=m!
/(n!
(m-n)!
),例如:
m=12,n=8时,运行结果为495.000000。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
39.编程题
下列程序定义了N×N的二维数组,并在主函数中自动赋值。
请编写函数fun(inta[][N]),该函数的功能是:
使数组左下半三角元素中的值全部置成0。
例如a数组中的值为
a=197
238
456
则返回主程序后a数组中的值应为
097
008
000
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
40.编程题
下列程序定义了N×N的二维数组,并在主函数中赋值。
请编写函数fun(),函数的功能是:
求出数组周边元素的平均值并作为函数值返回给主函数中的s。
例如:
若a数组中的值为
a=01279
19745
23831
45682
59141
则返回主程序后s的值应为3.375。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
41.编程题
请编写函数fun(),函数的功能是求出二维数组周边元素之和,作为函数值返回。
二维数组中的值在主函数中赋予。
例如:
若二维数组中的值为
13579
29994
69998
13570
则函数值为61。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
42.编程题
编写程序,实现矩阵(3行3列)的转置(即行列互换)。
例如,若输入下面的矩阵:
100200300
400500600
700800900
则程序输出:
100400700
200500800
300600900
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
43.编程题
编写函数intfun(intlim,intaa[MAX]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求出的素数的个数。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
44.编程题
N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。
请编写函数fun(),它的功能是:
找出学生的最高分,由函数值返回。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
45.编程题
请编写一个函数fun(),它的功能是:
将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。
例如,若输入字符串"-1234",则函数把它转换为整数值-1234。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
46.编程题
请编写一个函数fun(),它的功能是:
比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。
若两个字符串长度相等,则返回第1个字符串。
例如,输入beijingshanghai(为回车键),函数将返回shanghai。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
47.编程题
请编写一个函数fun(),它的功能是:
根据以下公式求π的值(要求满足精度0.005,即某项小于0.005时停止迭代)。
π/2=1+1/3+1*2/(3*5)+1*2*3/(3*5*7)+1*2*3*4/(3*5*7*9)+…+1*2*3*…*n/(3*5*7*…*(2n+1))
程序运行后,如果输入精度0.0005,则程序输出3.140578。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句
48.编程题
请编写一个函数fun(),它的功能是:
求出1到m(含m)之内能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。
例如,若传给m的值为50,则程序输出:
711142122283335424449
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
49.编程题
请编写一个函数fun(),它的功能是:
找出一维数组元素中最大的值和它所在的下标,最大值和它所在的下标通过形参传回。
数组元素中的值已在主函数中赋予。
主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
50.编程题
请编写一个函数fun(),它的功能是:
将ss所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。
例如,若输入abc4Efg,则应输出aBc4EFg。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
51.编程题
请编写一个函数fun(),它的功能是:
求出一个2×M整型二维数组中最大元素的值,并将此值返回调用函数。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
52.编程题
请编写函数fun(),其功能是:
将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。
例如,若s所指字符串中的内容为ABCDEFG123456,其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。
最后t所指的数组中的内容应是246。
注意:
部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干