计算机c语言题库.pdf
《计算机c语言题库.pdf》由会员分享,可在线阅读,更多相关《计算机c语言题库.pdf(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机C语言题库 【填空】下列给定程序中,函数fun 的功能是计算如下公式。直到,并且把计算结果作为函数值返回。例如,若形参e的值为l e-3,则函数返回值为0.5 5 1690c【答案】11 3.0 2 3(t+1)【改错】下列给定程序中函数fun 的功能是:求出如下分数序列的前n 项之和。和值通过函数值返回。例如,若n=5,则应输出8.391667。【答案】【1】d o ub l e fun(i n t n)2 s=s+(d o ub l e)a/b;【编程】请编写函数fun,其功能是:找出2 X M 整型二维数组中最大元素的值,并将此值返回调用函数。【答案】i n t i,j,m a x
2、=a 00;fo r(i=0;i 2;i+)fo r(j=0;j M;j+)i f(m a x=e p s)s l=s l*n/(2*n+l);s=s+s l;n+;)R e t ur n 2*s【填空】给定程序中函数fun 的功能是:统计形参s 所指的字符串中数字字符出现的次数,并存放在形参t 所指的变量中,最后在主函数中输出。例如,若形参s 所指的字符串为a b c d e f35 a d gh 3k j s d f7,则输出结果为4o【答案】2 93*t=n【改错】下列给定程序中函数fun 的功能是:实现两个变量值的交换,规定不允许增加语句和表达式。例如,变量a中的值原为8,b中的值原为
3、3,程序运行后a中的值为3,b中的值为8。【答案】【1】t =*x;*x=y;2 r e t ur n(t);【编程】编写函数fun,其功能是:求出1到 1000之间能被7 或 11整除,但不能同时被7 和 11整除的所有整数,并将其放在a 所指的数组中,通过n 返回这些数的个数。【答案】i n t i,j=0;fo r(i=l;i a v e=O.0;fo r(i=0;i a v e=a-a v e+a-s i;7 【填空】下列给定程序中函数fu n 的功能是进行数字字符转换。若形参 ch中是数字字符 0 9,则将 0 转换成 9,1 转换成 8,2 转换成 7,9 转换成 0;若是其它字符
4、则保持不变;并将转换后的结果作为函数值返回。【答案】1 cha r【2】ch n ex t;w hile(p!=N U L L)a v=a v+p-s;p=p-n ex t;r et u r n a v e/N;【填空】下列给定程序中函数fu n的功能是:求s s所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。s s所指字符串数组中共有M个字符串,且串长小于N o【答案】【1】M 2=,a)&(t t i =,zz)2 t t i-=32;【编程】编写函数fu n,其功能是:将所有大于1小于整数m的非素数存入x x所指数组中,非素数的个数通过k返
5、回。例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。【答案】in t i,j,n=0;fo r(i=4;i m;i+)fo r(j=2;j i;j+)if(i%j=0)br ea k;if(j i)x x n+=i;)*k=n;【填空】下列给定程序中函数fu n的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。例如,s所指的字符串为def35a dh3kjs df7,执行后结果为defa dha js df3537o【答案】1 j+2 si=tli3 j【改错】下列给定程序中函数fun的功能是:用冒泡法对6个字符
6、串进行升序排列。【答案】1 for(j=i+l;j 6;j+)2 *(pstr+i)=*(pstr+j);【编程】编写函数fu n,其功能是:求s s所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符为1,则输出3o【答案】int i=0;fo r(;*ss!0;ss+)if(*ss=c)i+;return i;1()【填空】下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形 参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。【答案】【1 x 2 p 3 s【改错
7、】下列给定程序中函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入2 5 2,则输出应该是20。若输入2 0 2,则输出应该是0。【答案】1 long k=l;2 num/=10;【编程】编写函数fu n,其功能是:计算n门课程的平均分,结果作为函数值返回。例如:若有5门课程的成绩是:90.5,72,80,61.5,55,则函数的值为:71.80o【答案】float av=0.0;in t i;fo r(i=0;i n;i+)a v=a v+a i;r et u r n (a v/n);【填空】下列给定程序中函数fu n 的功能是:将形参a 所指数组中的前半部分元素中的值与后半
8、部分元素中的值对换。形参n中存放数组中数据的个数,若 n 为奇数,则中间的元素不动。例如:若 a 所指数组中的数据为:1、2、3、4、5、6、7、8、9,则调换后为:6、7、8、9、5、1、2、3、4 o【答案】11】1 2 i 3 ap+i【改错】下列给定程序中函数f u n 的功能是:把从主函数中输入的3个数,最大的数放在a 中,中间的数放在b 中,最小的数放在c中。例如,若输入的数为:55 1 2 3 4,输出的结果应当是:a=55.0,b=3 4.0,c=1 2.0o【答案】1 f l o at k;2 i f(*a *c)【编程】学生的记录由学号和成绩组成,N 名学生的数据已放入主函
9、数中的结构体数组s中,请编写函数f u n,其功能是:把分数最高的学生数据放在b 所指的数组中。注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。【答案】i n t i,j=0,max=a0.s;f o r(i=0;i N;i+)i f(max ai.s)max=ai.s;f o r(i=0;i N;i+)i f (max=ai.s)bj+=ai;re t u rn j;【填空】下列给定程序中函数f u n 的功能是:从形参s s 所指字符串数组中,删除所有串长超过k的字符串,函数返回剩余字符串的个数。s s 所指字符串数组中共有N个字符串,且串长小于【答案】1 N 2 k 3
10、s s i【改错】下列给定程序中函数f u n 的功能是:逐个比较p、q 所指两个字符串对应位置上的字符,并把A S CH 值大或相等的字符依次存放到 c 所指的数组中,形成一个新的字符串。例如,若主函数中a 字符串为aB CDe F g H,b 字符串为A B c d,则 c中的字符串应为aB c d e F g H。【答案】1 i n t k=0;2 w h i l e (*p I|*q)【编程】规定输入的字符串中只包含字母和*号。请编写函数f u n,其功能是:除了字符串前导的*号之外,将串中其它*号全部删除。在编写函数时,不得使用C 语言提供的字符串函数。例如,字符串中的内容为:*A*
11、B C*DE F*G*,删除后,字符串中的内容应当是:*A B CDE F G。【答案】i n t i=0;c h ar*p=a;w h i l e(*p&*p=*)ai=*p;i+;p+;)w h i l e (*p)(i f(*p!=*,)ai=*p;i+;)p+;)ai =,Q;【填空】下列给定程序中,函数f u n 的功能是:把形参s 所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。例如,形参s 所指字符串为abc d e f g h,执行结果为 ah c be d g f o【答案】
12、11 1 1 1 s k 1 c【改错】下列给定程序中f u n 函数的功能是:求表达式s=aaaa-aaa-aa-a(此处aa aa表示n个a,a 和 n的值在1 至 9 之间)例如,a=3,n=6,则以上表达式为:s=3 3 3 3 3 3-3 3 3 3 3-3 3 3 3-3 3 3-3 3-3其值是2 962 980 a 和 n是 f u n 函数的形参,表达式的值作为函数值传回mai n 函数。【答案】1 l o n g s=0,t=0;1 t=t/1 0;【编程】编写函数v o i d f u n (c h ar*t t,i n t p p),统计在t t 所指的字符串中,/至
13、z 2 6个小写字母各自出现的次数,并依次放在p p所指的数组中。例如,当输入字符串abc d e f g abc d e abc 后,程序的输出结果应该是:33322110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0【答案】i n t i;f o r(i=0;i 2 6;i+)Pp i=0;a&*t t da ta 3 t【改错】下列给定程序中函数f un的功能是:将字符串中的字符逆序输出,但不改变字符串中的内容。例如,若字符串为a b e d,则应输出:dcb ao【答案】【1】vo i d f un (ch a r*a)2 pri n tf(%c ,*a);【编
14、程】编写函数f un,其功能是:比较字符串的长度,(不得使用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符长度相同,则返回第一个字符串。例如,输 入b e i j i n g sh a n g h a iCR(CR 为回车键),函数将返回sh a n g h a i。【答案】i n t i,j;f o r(i=0;s i !=0;i+);f o r(j=0;t j!=0 ;j+);i f(i=j)re turn s;e l sere turn t;【填空】下列给定程序中函数f un的功能是:逆置数组元素中的值。例如:若a所指数组中的数据为:1、2、3、4、5、6、7、8、9
15、,则逆置后依次为:9、8、7、6、5、4、3、2、1。形参n给出数组中数据的个数。【答案】1 n/2 2 i 3 a n-i-l【改错】下列给定程序中函数f un的功能是:将一个由八进制数字字符组成的字符串转换成与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。例如,若输入77777,则输出3 2 767。【答案】【1】n=*p-O ;2 n=n*8+*p-O ;【编程】学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数f un,其功能是:函数返回该学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给
16、成绩置T,作为函数值返回。(用于字符串比较的函数是strcm p)o【答案】i n t i;S T R EC str=0 ,-1);i f(strcm p(a i.n um,b)=0)str=a i;re turn str;【填空】下列给定程序的功能是:调用函数f un 将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回1,失败时返回0。在复制的过程中,把复制的内容输出到屏幕。主函数中源文件名放在变量sf n a m e 中,目标文件名放在变量tf n a m e 中。【答案】【1/2 f s 3 f t【改错】下列给定程序中函数f un 的功能是:将长整型数中各位上为偶数的数依次
17、取出,构成一个新数放在t 中。高位仍在高位,低位仍在低位。例如,当 s 中的数为8765 3 1 4 2 时,t 中的数:864 2。【答案】【1】i f(d%2=0)2 s/=1 0;【编程】编写函数f un,其功能是:将两个两位数的正整数a、b 合并成一个整数放在c 中。合并的方式是:将 a 数的十位和个位数依次放在c 数的十位和千位上,b 数的十位和个位数依次放在c 数的百位和个位上。例如,当a=4 5,b=1 2 时,调用该函数后,c=5 1 4 2。【答案】*c=b%1 0+(a/1 0)*1 0+(b/1 0)*1 0 0+(a%1 0)*1 0 0 0;【填空】下列给定程序中函数
18、f un 的功能是:有 N X N 矩阵,根据给定的m(m =2)&(n=l e-6);r e t u r n xl;【填空】程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数f u n的功能是:将形参a 所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中的学号和姓名,最后输出修改后的数据。例如,a 所指变量中的学号、姓名和三门课的成绩依次是:1 0 0 0 1.Zh a ng Sa n“、9 5、8 0、8 8,则修改后输出b中的数据应为:1 0 0 0 2、L i Si 、9 5、8 0、8 8o【答案】【1 a 2 b.na me3 s c or e i【改错】
19、下列给定程序中函数f u n的功能是:删除s 所指字符中所有的小写字母C O【答案】1 1 s j+=s i;2 s j=(T;【编程】规定输入的字符串中只包含字母和*号。请编写函数f u n,其功能是:将字符串中的前导*号全部移到字符串的尾部。例如,字符串中的内容为:*A*BC*D E F*G*,移动后,字符串中的内容应当是:A*BC*D E F*G*。在编写函数时,不得使用C 语言提供的字符串函数。【答案】i nt i=0,n=0;c h a r *p;P=a;w h i l e (*p=,*)(n+;p+;)w h i l e (*p)(a i=*p;i+;p+;)w h i l e (
20、n!=0)a i =/*;i+;n一;)a i =/0z;2 0.f 【填空】下列给定程序的功能是:从键盘输入若干行字符串(每行不超 过8 0个字符),写入文件my f i l e 4.t xt中,用T作字符串输入结束的标志,然后将文件的内容显示在屏幕上。文件的读写分别由函数Re a d Te xt 和 Wr i t e Te xt 实现。【答案】【1】*f w 2 s t r 3 s t r【改错】下列给定程序中函数f u n的功能是:从低位开始依次取出长整型变量s中奇数位上的数,构成一个新数存放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为7 6 5 4 3 2 1时,t中的数为7
21、 5 3 1。【答案】1 vo i d f u n (l o n g s,l o n g *t)2 s l=s l*1 0【编程】编写函数f u n,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放 在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。例如,当a=4 5,b=1 2时,调 用 该 函 数 后,c=1 5 2 4 o【答案】*c=a/1 0+(b%1 0)*1 0+(a%1 0)*1 0 0+(b/1 0)*1 0 0 0;【填空】下列给定程序中函数f u n的功能是:有N X N矩阵,将矩阵的外围元素做顺时针旋
22、转。操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,再使临时数组中的元素成为最后一列。例如,若N=3,有下列矩阵:1 2 34 5 67 8 9操作后应为:7 4 18 5 29 6 3【答案】1 0 2 j-3 j【改错】下列给定程序中函数f u n 的功能是:计算S=f (-n)+f (-n+1)+-+f (0)+f +f (2)+f (n)的值。例如,当n的值为5 时,函数值应为1 0.4 0 7 1 4 3。f(x)函数定义如下:(x+l)/(x-2)x 0 且 x W 2f (x)=0 x=0 或 x=2(x-l)/(
23、x-2)x 0【答案】【1】d o u b l e f (d o u b l e x)2 r e t u r n s ;【编程】编写函数f u n,其功能是计算:s 作为函数值返回。在 C 语言中可调用l o g(n)函数求l n(n)。l o g 函数的引用说明为:d o u b l el o g(d o u b l e x)。例 如,若 m的值为2 0,则 f u n 函数值为6.5 0 6 5 8 3。【答案】i n t i;d o u b l e s=0.0;f o r(i=l;i=m;i+)s=s+l o g(i);r e t u r n s q r t (s);2 2*f 【填空】
24、下列给定程序中函数f u n 的功能是:在形参s s 所指字符串数组中,查找含有形参s u b s t r 所指子串的所有字符串,并输出,若没找到则输出相应信息。s s 所指字符串数组中共有N 个字符串,且串长小于M。程序中库函数s t r s t r (s i,s 2)的功能是在s i 串中查找s 2 子串,若没有,函数值为0,若有,函数值为非0。【答案】【1 N 2 s u b s t r 3 0【改错】下列给定程序中函数f u n 的功能是:求三个数的最小公倍数。例如,若给主函数中的变量x l、x 2、x 3 分别输入1 5 1 1 2,则输出结果应当是3 3 0。【答案】1 f u n
25、(i n t x,i n t y,i n t z)2 r e t u r n j;【编程】规定输入的字符串中只包含字母和*号。请编写函数f u n,其功能是:只删除字符前导和尾部的*号,串中字母间的*号都不删除。形参n 给出了字符串的长度,形参h 给出了字符串中前导*号的个数,形参e 给出了字符串中尾部*号的个数。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的*A*B C*DE F*G*”,删除后,字符串中的内容应当是“A*B C*DE F*G”。【答案】i n t i,j=0;f o r(i=h;i n-e;i+)a j+=a i ;a j =/0z;【填空】下列给定程序中函
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 语言 题库
限制150内