
C语言上机题库5.pdf
81页2 0 1 2 年年年年 3月全国计算机等级考试二级1 第一套1 .程序填空程序通过定义学生结构体数组,存储了若干个学生的学号、姓名和三门课的成绩函数fu n的功能是将存放学生数据的结构体数组,按照姓名的字典序( 从小到大排序 ) 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果第一处 stru ct stu dent t;第二处 for ( i= 0 ; i< n- l; i+ + )第三处 if ( strcmp ( a[ i] . name, a[ j] . name) > 0 )2程序修改给定程序M O D H . C 中函数fu n的功能是:在 p 所指字符串中找出A S C H 码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向上顺序移动/ * * fou nd* * /q= p+ i;/ * * fou nd* * /w hile( q> p)3 程序设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s 中,请编写了函数fu n,它的功能是:把指定分数范围内的学生数据放在b 所指的数组中,分数范围内的学生人数由函数值返回。
int fu n( S T R EC * a, S T R EC * b, int 1 , int h){int i , j= 0 ;for( i= 0 ; i< N ; i+ + )if( ( a[ i] . s> = l& & a[ i] . s< = h)b[ j+ + ] = a[ i] ;retu rn j;)第二套1 .程序填空给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序连接函数fu n的功能是:删除链表中数据域值相同的结点,使之只保留一个第一处 free( q) ;第二处 q= p- > next;第三处 q= q- > next;2 . 程序修改给定程序M 0 D I 1 . C中函数fu n的功能是:用选择法对数组中的n 各元素按从小到大的顺序进行排序/ * * fou nd* * /P = j;/ * * fou nd* * /P = i ;3.程序设计请编写一个fu n函数,它的功能是:求出1 到 m 之间( 含m ) 能被7 或 1 1 整除的所有整数放在数组a 中,通过n返回这些数的个数v oid fu n( int m, int * a, int * n){int i;* n= 0 ;for( i= 7 ; i< = m; i+ + )if( ( i% 7 = = 0 ) | | ( i% U = = 0 ) )a[ ( * n) + + ] = i;)第三套1.程序填空函数fu n的功能是:逆置数组元素是的值。
例如:若 a所指数组中的数据依次为:1 、2 、3 、4 、5 、6 、7、8、9,则逆置后依次为:9、8、7、6 、5 、4 、3 、2 、1 形参n给出数组中数组中数据的个数第一处 for ( i= 0 ; i< n/ 2 ; i+ + )第二处 a[ i] = a[ n- l- i] ;第三处 a[ n- i- l] - t;2 程序修改给定程序M 0 D I 1 . C中函数fu n的功能是:将一个由八进制数字字符串组成的字符串转换为与其面值相等的十进制整数规定输入的字符串最多只能包含5 位八进制数字字符/ * * fou nd* * /n= * p- ' O ' ;/ * * fou nd* * /n= n* 8+ * p- ' O ' ;3.程序设计学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s 中,请编写了函数fu n,它的功能是:函数返回指定学号的学生数据,指定的学生号在主函数中输入,若没有找到指定学号,在结构体变量中给学号置空串,给成绩置T,作为函数值返回 ( 用于字符串比较的函数是s t r cm p )S T R E C f u n (S T R E C *a, char *b )S T R E C c;I n t i;c.n u m [ O ]= > \0 ' ;c. s = -l ;f o r (i= 0; i< N ; i++)if (s t r cm p (a[ i] . n u m , b )= = 0){ s t r cp y (c. n u m , a[ i] . n u m );c. s = a[ i] . s ; b r eak ; }r et u r n c ;第四套1 .程序填空给定程序中,函数f u n的功能是:在带有头结点的单向链表中,查找数据域中值为c h的结点。
找到后通过函数值返回该结点在链表中所处的顺序号:若不存在值为c h的结点,函数值返回0.第一处 w hil e(p != 0)第二处 if (p -> d at a= = ch)r et u r n n ;第三处 k = f u n (head , ch);2 .程序修改给定程序M O D H . C中函数f u n的功能是:删除p所指字符串的所有空白字符(包括制表符、回车符及换行 符 )输 入 字 符 串 时 用 结 束 输 入 /**f o u n d **/f o r (i= 0, t = O ; p [ i] ; i++) 2 012 年年年年3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全)) ))2 /**f o u n d **/c[ t ]= > \ 0J ;3 .程序设计请编写一个函数f u n ,将s s所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)v o id f u n (char *s s )in t i;f o r (i= l ; i< s t r l en (s s ); i+= 2 ){ if (s s [ i] >= > a' &&s s [ i] <= , z' )s s [ i] -= 3 2 ;))第五套1 .程序填空给定程序中,函数f u n的功能是:计算下式前n项的和作为函数值返回。
例如:当形参n的值为1 0的时,函数返回:9 . 6 12 558 8 c第一处s = 0;第二处 f o r (i= l ; i< = n ; i++)第三处 s = s +(2 . 0*i-l )*(2 . 0*i+l )/(t *t );2 .程序修改给定程序M 0D H .C中函数f u n的功能是:统计s u b s t r所指字符串在s t r所指字符串中出现伯次数/**f o u n d **/f o r (i= 0; s t r [ i] ; i++)/**f o u n d **/if (s u b s t r [ k +l ] == > \ 0 ' )3 .程序设计请编写一个函数f u n ,它的功能是:根据以下公式求J I的值(要求满足精度0. 0005,即某项小于0. 0005时停止送代):程序运行后,如果输入精度为0.0005,则程序输出为3 . 14…d o u b l e f u n (d o u b l e ep s ){ d o u b l e s = l , t = l . /3 ;in t n = l ;w hil e(t > = ep s ){ s += t ; n ++; t = t *n /⑵ 0*n +l ); )r et u r n (s *2 .0);)第六套1 .程序填空给定程序中,函数f u n的功能是:将形参s所指定字符串中所有的字母字符顺序前移,其他字母顺序后移,处理后字符串的首地址作为函数值返回。
第一处 t [ j] = s [ i] ; j++;第二处 f o r (i= 0; i< k ; i++)t [ j+i] = p [ i] ;第三处t [ j+k ] = O ;2. 程序修改给定程序M 0D I 1. C中函数f u n 的功能是:将 s所指字符串中最后一次出现的与t l 所指字符串相同的子串替换成t 2 所指定字符串,所形成的新串放在w 所指的数组中在此处,要求t l 和 t 2 所指字符串的长度相同/**f o u n d **/w hil e(*w )/**f o u n d **/if (*r = = *p )3. 程序设计函数f u n 的功能是:将 s 所指字符串中A S C H 值为奇数的字符删除,串中剩余字符形成一个新串放在t所指定的数组中v o id f u n (char *s ,char t [ ] ){ in t i,j= 0;f o r (i= 0; i< s t r l en (s ); i++)if (s [ i] %2 = = 0)t [ j++] = s [ i] ;t [ j] = O ;)第七套1 . 程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。
函数f u n 的功能是将形参a所指结构体变量s 中的数据进行修改,并把a 中地址作为函数值返回主函数,在主函数中输出修改后的数据第一处 s t r u ct s t u d en t *f u n (s t r u ct s t u d en t *a)第二处 f o r (i= 0; i< 3 ; i++)a-> s co r e[ i] += l ;第三处 r et u r n a;2 .程序修改给定程序M O D H .C 中函数f u n 的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回各字符串在主函数中输入,并放在一个字符串数组中/ * * f o u n d * * /c h a r * f u n (c h a r (* s q )[ M] )/ * * f o u n d * * /r e t u r n s p ;3 . 程序设计函数f u n 的功能是:将 a 、b 中的两位正整数合并形成一个新的整数放在c中合并的方式是:将 a中的十位和个位依次放在变量C的百位和个位上,b中的十位和个位数依次放在变量C的十位和千位上Si n c l u d e < s t d i o . h >v o i d f u n (i n t a , i n t b , l o n g * c ){ * c = (b %1 0 )* 1 0 0 0 + (a / 1 0 )* 1 0 0 + (b / 1 0 )* 1 0 + a %1 0 ;)第八套1 . 程序填空函数f u n 的功能是:将形参观者工所指数组中的前半部分元素中的值和后半部分元素中的值对换。
形参n中存放数组中数据的个数,若 n为奇书,则中间元素不动第一处 p = (n %2 = = 0 ) ? n / 2 : n / 2 + 1 ;第二处 a [ i ] = a [ p + i ] ;第三处a [ p + i ] = t ;2 . 程序修改2 0 1 2 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))3给定程序M0 D I LC 中函数f u n 的功能是:把主函数中输入的三个数,最大的放在a中,最小的放在c中,中间的放在b中/ * * f o u n d * * /f l o a t k ;/ * * f o u n d * * /i f (* a < * c )3 . 程序设计学生的记录由学号和成绩组成,N 名学生的数据已在主函数中放入结构体数组s 中,请编写了函数f u n ,它的功能是:把分数最高的学生数据放在b 所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数i n t f u n (STRE C * a , STRE C * b )i n t i , m a x= a [ O] . s , n = 0 ;f o r (i = l ; i < N; i + + )i f (m a x< a [ i ] . s )m a x= a [ i ] . s ;f o r (i = 0 ; i < N; i + + )i f (m a x= = a [ i ] . s )b [ n + + ] = a [ i ] ;r e t u r n n ;)第九套1 .程序填空给定程序中,函数f u n的功能是:计算形参x所指数组中N个数的平均值, (规定所有数均为正数),将所指数组中小于平均值的数据移至数据的前部,大于等于平均数的移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。
第一处 f o r (i = 0 ; i < N; i + + )a v + = x[ i ] / N第二处 y[ j > x[ i ] ;x[ i ] = - l ; j + + ; }第三处i + + ;2 .程序修改给定程序M0 D I 1 . C中函数f u n的功能是:统计字符串各元音字母(即:A、E、I、0、U )的个数注意字母不分大小写/ * * f o u n d * * /n u m [ k ] = 0 ;/ * * f o u n d * * /s w i t c h (* s )3.程序设计请编写函数f u n ,函数的功能是:求出二级数组周边元素之和,作为函数值返回二维数组中的值在主函数中赋予i n t f u n (i n t a [ M] [ N] ){i n t t o t = 0 , i , j ;f o r (i = 0 ; i < N; i + + )(t o t + = a [ 0 ] [ i ] ;t o t + = a [ M- l ] [ i ] ;)f o r (i = l ; i < M- l ; i + + ) {t o t + = a [ i ] [ 0 ] ;t o t + = a [ i ] [ N- l ] ;r e t u r n t o t ;第十套1 . 程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。
函数f u n 的功能是将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出第 一 ■ 处 s t r u c t s t u d e n tf u n (s t r u c t s t u d e n t a )第二处 s t r c p y (a . n a m e , " Li Si " );第三处 a . s c o r e [ i ] + = l :2 程序修改假定整数数列中的数不重复,并存放在数组中给定程序MOD I 1 . C中函数f u n 的功能是:删除数列中值为x 的元素N 中存放的是数列中元素的个数/ * * f o u n d * * /i f (p = = n ) r e t u r n - 1?/ * * f o u n d * * /a [ i ] = a [ i + l ] ;3.程序设计学生的记录由学号和成绩组成,N 名学生的数据已在主函数中放入结构体数组s 中,请编写了函数f u n ,它的功能是:把分数最低的学生数据放在b 所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生的人数i n t f u n (STRE C * a , STRE C * b )(i n t i , j = 0 , m i n = a [ 0 ] . s ;f o r (i = 0 ; i < N; i + + ){ i f (m i n > a [ i ] . s ){j = 0 ;b [ j + + ] = a [ i ] ; m i n = a [ i ] . s ;)e l s e i f (m i n = = a [ i ] . s )b [ j + + ] = a [ i ] ;)r e t u r n j ;)第十一套1.程序填空给定程序中,函数f u n 的功能是:计算形参x 所指数组中N 个数的平均值, (规定所有数均为正数),将所指数组中大于平均值的数据移至数据的前部,小于等于平均数的移至x 所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。
第一处 a v = s / N;第二处 y[ j + + ] - x[ i ] ; x[ i ] = - l ; }第三处 i f (x[ i ] != - l )y[ j + + ] = x[ i ] ;2 . 程序修改给定程序M0 D I 1 . C中函数f u n 的功能是:读入一行英文文本行,将其中每个单词的第一个字母改成大2 0 1 2 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))4 写,然后输出次文本行(这里的“ 单词”是指由空格隔开的字符串)/ * * f o u n d * * /#i n c l u d e < s t d i o . h >/ * * f o u n d * * /u p f s t (c h a r * p )3 . 程序设计程序定义了 N X N 的二级数组,并在主函数中赋值,请编写函数f u n , 函数的功能是:求出数组周边元素的平均值并作出函数值饭给主函数中的Sod o u b l e f u n (i n t w [ ] [ N] ){ i n t i , j , n = 0 ;d o u b l e s u m = 0 ;f o r (i = 0 ; i < N; i + + ){ s u m + = w [ 0 ] [ i ] + w [ N- l ] [ i ] ;n + = 2 ; }f o r (i = l ; i < N- l ; i + + ){ s u m + = w [ i ] [ 0 ] + w [ i ] [ N- l ] ;n + = 2 ;)r e t u r n s u m / n ;第十二套1.程序填空给定程序中,函数f u n 的功能是:将自然数1 —1 0 以及它们的平方根写到名为m yf i l e 3. t xt 的文本文件中,然后再顺序读出显示在屏幕上。
第一处 f p r i n t f ( f p , " % d % f \n; , , i , s q r t ( ( d o u b l e ) i ));第二处 f c l o s e ( f p );第三处 i f ( ( f p =f o p e n ( f n a m e , n r" )) ==N U L L )2 .程序修改给定程序M O D H.C 中函数f u n 的功能是:将 n个无序整数从小到大排序/**f o u n d **/f o r ( i =j +l ; i
第一处 b [i ]=a [0] [i ];第二处 i f ( b [i ]# d e f i n e M AX 100i n t f u n ( i n t l i m ,i n t a a [M AX ]){i n t i , j , k =0;f o r ( i =2; i <=l i m ; i ++)(f o r ( j =2; j <=( i /2) ; j ++)i f ( i % j ==0)b r e a k ;i f ( j > ( i /2) )a a [k ++]=i ;} r e t u r n k ; }第十四套1 .程序填空函数f u n 的功能是进行字母转换。
若形参c h 中小写英文字母,则转换成相应的大写英文字母;若形参c h 中是大写英文字母,则转换成相应的小写英文字母;并将转换的结果作为函数值返回第一处 i f ( ( c h >=' a ' )& & ( c h <=, z ' ))第二处 r e t u r nc h +' a ' - ' A'第三处 r e t u r n c h ;2 .程序修改给定程序M O D H.C 中函数f u n 的功能是:给一维数组a 输入任意四个整数并按下列的规律输出例如输出1、2、3、4 , 程序输出一下方阵a ) 1 2 33 4 1 22 3 4 11 2 3 4/**f o u n d **/vo i d f u n ( i n t *a )/**f o u n d **/a [j ]=a [j -l ];3 .程序设计请编写函数f u n ,函数的功能是:计算并输出给定整数n的所有因子( 不包过1和 n 本身)之和规定n的值不大于1000.i n t f u n ( i n t n )(i n t s =0, i ;f o r ( i =2; i 例如,形参s 所指的字符串为:a b c d e f g h ,执行结果为:a h c b e d g 第一处 i f ( n % 2==0) k =n -l ;第二处 c =s [k ];第三处s [l ]=c ;2 .程序修改给定程序M O D H.C 中函数f u n 的功能是:求s =a a …a a ——…——a a a ——a a ——a ( 止 匕 处 a a …a a 表示 n 个 a , a和 n的值在1至 9 之 间 )/**f o u n d **/l o n g s =0, t =0;/**f o u n d **/t =t /10;3 .程序设计请编写一个函数 vo i d f u n ( c h a r *t t , i n t p p [] ) , 统计在t t 所指字符串中‘ a ' 至 ' z' 26个小写字母各自出现在的次数,并依次放在P P 数组中vo i d f u n ( c h a r *t t , i n t p p [])(c h a r *p =t t ;i n t i ;f o r ( i =0; i <26; i ++)p p [i ]=o ;wh i l e ( *p ){i f ( *p >=, a ' & & *p <=' z ' )p p [*p - ' a ' ]+=l ;p ++;第十六套1 .程序填空人员的记录由编号和出生年、月、日组成,N 名人员的数据已在主函数中存入结构体数组s t d 中,且编号唯一。 函数fu n的功能是:找出指定编号人员数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中编号为空串第 1 处 S T U fu n( S T U * s t d , c ha r * nu m)第 2 处 if( s t r c mp ( s t d [i] . nu m, nu m)= =0 )第 3 处 r e t u r n ( s t d [i] ) :2 . 程序修改给定程序MODH. C中函数fu n的功能是:从 s所指字符串中,找出与t 所指字符串相同的子串的个数作为函数值返回/ * * fo u nd * * /r + + ; p + + ;/ * * fo u nd * * /if( * r = =0 )3.程序设计函数fu n的功能是:将 s 所指字符串中AS CII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指数组中 inc l u d e < s t d io . h>S inc l u d e < s t r ing. h>v o id fu n ( c ha r * s , c ha r t [] )(int i, j =0 ;fo r ( i=0 ;i< s t r l e n( s ) ;i+ + )if ( s [i] %2 ) t [j + + ] =s [i] ;t [j ] =O;}第十七套1 . 程序填空给定程序中,函数fu n的功能是:统计形参s 所指字符串中数字字符出现的次数,并存放在形参t 所指的变量中,最后在主函数中输出。 例如,形参s 所指的字符串为:a b c d e f3 5 a d gh3 k j s d f7 o 输出结果为:40第 1 处 fo r ( i=0 ;s [i] ! =NU LL;i+ + )第 2 处 if( s [i] >=, O' &&s [i] < =, 9 ' )n+ + ;第 3 处 * t =n;2 . 程序修改给定程序MODH. C中函数fu n的功能是:通过某种方式实现两个变量的交换,规定不允许增加语句和表达式例如变量a 中的值原为8, b 中的值原为3 , 程序运行后a 中值为3, b 中的值为8./**found**/t=*x;*x=y;/**found**/return (t);3. 程序设计请编写函数fu n ,函数的功能是:求出1到 1000之间能被7 或 11整除,但不能同时被7 和 11整除的所有整数并将它们放在a 所指的数组中,通过n 返回这些数的个数Sinclude high的值由主函数传给fun函数/**found**/while((2<=high)&&(n<10)) 2012 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库(1全全,I1全全) ))6 / * * fo u nd * * /ye s =O;b r e a k ;3.程序设计请编写函数fu n, 函数的功能是:利用一下所示的简单迭代方法求方程求方程:c o s ( x) - x=0 的一个实根xn+ l =c o s( xn) 迭代步骤如下: ( 1 ) 取 xl 的初值为0 . 0 ; ( 2 ) x0 =xl , 把 xl 的值赋给 x0 ; ( 3 ) xl =c o s ( x0 ) ,求出一个新的xl ; ( 4 ) 若 xO- xl 的绝对值小于0 . 0 0 0 0 0 1执行步骤( 5 ) 否则执行步骤( 2 ) ; ( 5 ) 所求xl 就是方程 c o s ( x) - x=0 的一个实根作为函数值返回程序将输出结果为:Ro o t =0 . 7 3 9 0 5 8 ofl o a t fu n( )(fl o a t xO, xl =0 . 0 ;d o {x0 =xl ;xl =c o s ( xO) ;}wh i l e ( f ab s ( x O-x l ) > 0 . 0 0 0 0 0 1 ) ;r e tur n x l ;)第十九套1. 程序填空给定程序中,函数f un 的功能是:将 a 所指的3X 5 矩阵中第k列的元素左移到第0 歹 U ,第k 列以后的每列元素行依次左移,原来左边的各列依次绕到右边。 第 1 处 f o r ( p = l ; p < = k ; p + + )第 2 处 f o r ( j = 0 ; j 〈 N-l ; j + + )a[ i ] [ j j = a[ i ] [ j + 1 ] ;第 3 处 a[ i ] [ N-l ] = te m p ;2 .程序修改给定程序M0 D I1 .C 中函数f un 的功能是:根据形参m的 值 ( 2< = m < = 9 ) ,在m行 m列的二维数组中存放如下所示规律的数据,由m ai n 函数输出例如,若输入 2 则输出:1 22 4/* * f o un d * * /f un ( i n t a[ ] [ M] , i n t m )/* * f o un d * * /a[ j ] [ k Xk + l ) * ( j + l ) ;3 .程序设计函数fun的功能是:将 a、b 中的两位正整数合并形成一个新的整数放在c 中合并的方式是:将 a 中的十位和个位依次放在变量c 的十位和千位上,b 中的十位和个位数依次放在变量c 的个位和百位上void fun(int a, int b, int*c)(*c=(a%10)*1000+(b%10)*100+ (a/10)*10+(b/10);)第二十套1 .程序填空给定程序中,函数fun的功能是:对形参s 所指字符串中下标为奇数的字符ASCII码大小递增排序,并将排序后的下标为奇数的字符取出,形成一个新串。 第 1 处 t= i;第 2 处 fo r(j=i+2;j 例如,给指定精度的变量e p s 输入0 . 0 0 0 5 时 , 应当输出P i = 3 0 1 4 0 5 7 8 . 0/* * f o un d * * /t= l ;/* * f o un d * * /r e tur n ( 2* s ) ;3 .程序设计假定输入字符串中只包含字母和* 号请编写函数 f un , 它的功能是:将字符串的前导* 号不得多于n个;若多于n 个,则删除多余的* 号;若少于或等于n 个,则什么也不做,字符串中间和尾部的* 号不删除函数f un中给出的语句仅供参考vo i d f un ( c h ar * a, i n t n ){i n t i = 0 , k = 0 ;wh i l e ( a[ k ] = = ' * ' ) k + + ;i f ( k > n ){i = n ; j = k ;f o r ( ; a[ j ] ! = 0 ; j + + ) 20 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))7 a[ i + + ] = a[ j ] ;a[ i ] = 0 ;} )第二十二套1. 程序填空给定程序中,函数f un 的功能是:a 所指4 X 3 矩阵中第k 行的元素与第0 行元素交换。 例如:有下列矩阵1 2 34 5 67 8 91 0 1 1 1 2若 k 为 2 , 程序执行结果为7 8 94 5 61 2 31 0 1 1 1 2第一处 vo i d f un ( i n t ( * a) [ N] , i n t k )第二处 f o r ( i = 0 ; i < N; i + + )第三处 a[ 0 ] [ i ] = a[ k ] [ i ]:2 .程序修改给定程序M0 D I1 . C中函数f un 的功能是:读入一个字符串( 长度< 20 ) , 将该字符串中的所有字符串按A S C H 码升序排序后输出例如,若输入e d c b a ,则应输出:a b c d e / **f o u n d **/f o r (i = s t r l e n (t )-1 ; i ; i 一)/ **f o u n d **/i f (t [ j ] > t [ j +l ] )3 . 程序设计请编写函数f u n ,函数的功能是:将 s s 所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。 v o i d f u n (c h a r *s s ){c h a r *p = s s ;i n r i = 0 ;w h i l e (*p ){i f ((设2 )& & (*p 〉 = ' a ' & & *p 〈 = ' z ' ))*p -= 3 2 ;p ++;i ++;))第二十三套1.程序填空给定程序的功能是:调用函数f u n 将指定源文件中的内容复制到指定的目标文件中,复制成功时函数的返回值是1 ,失败是返回值是0 . 在复制的过程中,把复制的内容输出到终端屏幕主函数源文件名放在变量s f n a m e 中,目标文件放在变量t f n a m e 中第一处i f ((f s = f o p e n (s o u r c e , r " ))= = N UL L )第二处 w h i l e (!f e o f (f s ))第三处 f p u t c (c h , f t );2 . 程序修改给定程序M OD I 1 . C 中函数f u n 的功能是:将长整型中每一位上为偶数的数依次取出,构成一个新数放在 t 中高位仍在高位,低位仍在低位/ **f o u n d **/i f (d %2 = = 0 )/ **f o u n d **/s / = 1 0 ;3 . 程序设计函数f u n 的功能是:将两位正整数a 、b 合并形成一个新的整数放在c中。 合并的方式是:将 a中的十位和个位依次放在变量c的十位和千位上,b中的十位和个位数依次放在变量c的百位和个位上v o i d f u n (i n t a , i n t b ,l o n g *c ){*c = (a %l 0 )*1 0 0 0 +(b / 1 0 )*1 0 0 +(a / 1 0 )*1 0 +(b %1 0 );第二十四套1 .程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩函数f u n 的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b , 并修改b中的学号和姓名,最后输出修改后的数据第一处b = a ;第二处 s t r c p y (b . n a m e , " L i Si " )第三处 f o r (i = 0 ; i < 3 ; i ++)p r i n t f ( u%6 . 2 f ” , b . s c o r e [ i ] );2 . 程序修改给定程序M OD H . C 中函数f u n 的功能是:从 s所指字符串中删除所有小写字母C o 请改正程序中的错误,使它能计算出正确的结果。 / **f o u n d **/s [ j ++] = s [ i ] ;/ **f o u n d **/s [ j ] = ' \ 0 ' ;3 . 程序设计假定输入的字符串中只包含字母和*号请编写函数f u n ,它的功能是:将字符串的前导*号全部移到字符串的尾部函数f u n 中给出的函数仅供参考v o i d f u n (c h a r *a ){ c h a r *p , *q ;i n t n = 0 ;P= a ;w h i l e (*p == , *,){ n ++; p ++; }q = a ;w h i l e (*p ){*q = *p ;p ++; q ++;f o r (; n > 0 ; n - )*q ++= ' *,;*q = ' \ 0 ' ;第二十五套1 . 程序填空用筛选法可得到2 —n (n < 1 0 0 0 0 )之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))8 从数表中删去(把数表中相应位置的值置成0 ) ;接着从数表中找下一个非0 数,并从数表中删去该数的所有倍数,依此类推,直到所找的下一个数等于n为止。 这样会得到一个序列: 2 、3 、5 、7 、11、13 、17 、19 、2 3 ……函数f un 用筛选法找出所有小于等于n的素数,并统计素数的个数作为函数值返回第一处 f o r ( j = a [ i ]*2 ; j < = n ; j += a [ i ])第二处 w h i l e ( a [ i ]= = 0)第三处 i f ( a [ i ]! = 0)2 .程序修改给定程序M0DI1. C 中函数f un 的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数/ **f o un d **/y = l ;/ **f o un e **/d = a -i ;3.程序设计请编写函数f un ,它的功能是:计算并输出n ( 包括n)以内能被5或9整除的所有自然数的倒数之和d o ub l e f un ( i n t n )(i n t i ;d o ub l e sum = 0. 0;f o r ( i = l ; i < n ; i ++)i f ( i % 5 = = 0| | i % 9 = = 0)sum += l . 0/ i ;r e tur n sum ;)第二十六套1 .程序填空给定程序中,函数f un的功能是建立一个N X N的矩阵。 矩阵元素的构成规律是:最外层元素的值全部是1 ;从外向内第二层元素的值全部为2 ;第三层元素的值全部是3,…依此类推第一处 vo i d f un ( i n t ( *a ) [ N])第二处 f o r ( j = i ; j < N-i ; j ++)第二处 a [ k ] [ i ]= a [ k ] [ N-i -l ] = i +l ;2 .程序修改给定程序MODH.C中函数f un的功能是:将十进制正整数m转换成k ( 2 < = k< = 9 )进制数,并按高位到低位顺序输出/ **f o un d **/a a [ i ]= m % k ;/ **f o un d **/p r i n tf ( " % d ” , a a [ i T]);3 .程序设计编写一个函数,从n um个字符串中找出最长的一个字符串,并通过形参指针m a x传回该串地址 ( 注意:主函数中用****作为结束输入的标志,函数f un中给出的语句仅供参考)f un ( c h a r ( *a )[ 8 1], i n t n um , c h a r **m a x )(i n t i ,k = 0, m a x l e n ;m a x l e n = str l e n ( a [ k ]);f o r ( i = l ; i < n um ; i ++)i f ( str l e n ( a [ i ])> m a x l e n ){m a x l e n = str l e n ( a [ i ]);k = i ;*m a x = a [ k ];)第二十七套1 .程序填空函数f un的功能是计算f ( x ) = l +x -2 / 2 ! +3 / 3 !-4 / 4 ! +……的前n项和。 若x = 2 .5 ,n = 15时,函数值为1.9 17 9 14 c第一处f = l ;第二处 t*= ( T)*x / i ;第三处f += t;2 .程序修改给定程序MODH.C中函数f un的功能是:从三个红球,5个白球,6个黑球中任意取出8个作为一组,进行输出在没组中,可以没有黑球,但必须要有红球和白球组合数作为函数值返回正确的组合数应该是15.程序中i的值代表红球数,j代表白球数,k代表黑球数/ **f o un d **/f o r ( i = l ; i < = 3 ; i ++)/ **f o un d **/i f ( k > = 0&&k < = 6 )3.程序设计请编写函数f un ,它的功能是:计算并输出下列多项式的值:sn = l +l / l! +1/ 2 ! +1/ 3 ! +1/ 4 ! +....l / n ! » 例如:在主函数中从键盘给n输入1 5 ,则输出为:s= 2 . 7 18 2 8 2注意:要求n的值大于1但不大于100d o ub l e f un ( i n t n ){d o ub l e s= l 'l o n g t= l ;i n t i ;f o r ( i = l ; i < = n ; i ++){t= t*i ;s+= l . 0/ t; }r e tur n s;)第二十八套1 .程序填空给定程序中,函数f un的功能是:计算N*N矩阵的主对角线元素和方向对角线元素之和,并作为函数值返回。 注意:要求先累加主对角线元素中的值,然后累加反响对角线元素的值第一处 s u m = O ;第二处 s u m += t [ i] [ i] ;第三处 s u m += t [ i] [ n -i-1 ] ;2 . 程序修改2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))9给定程序M O DI 1 . C 中函数fu n 和 fu n x 的功能是:用二分法求方程2 x 3 -4 x 2 +3 x -6 = 0的一个根,并要求绝对误差不超过0 . 0 0 1 o/ * * fo u n d* * /do u bl e r ;/ * * fo u n d* * /w hil e( fabs ( n -m ) >0 . 0 0 1 )3 . 程序设计假定输入的字符串中只包含字母和* 号请编写函数fu n , 它的功能是:除了字符串前导和尾部的* 号之外,将串中其他* 号全部删除形参h 已指向字符串中的第一个字母,形参p已指向字符串中最后一个字母。 在编写函数时,不得使用c 语言提供的字符串函数v o id fu n ( char * a, char * h, char * p )(in t j= 0 ;char * q = a;w hil e( * q &&q < h) a[ j++] = * q ++;w hil e( * h&&* p &&h〈 p ){if( * h! = ' * ' ) a[ j++] = * h;h++;w hil e( * p ) a[ j++] = * p ++;a[ j] = O ;)第二十九套1 . 程序填空给定程序中,函数fu n 的功能是:有 N * N 矩阵,将矩阵的外围元素顺时针旋转操作的顺序是:首先将第一行元素的值存入临时数组r , 然后使第一列成为第一行,最后一行成为第一列,最后一列成为第一行,临时数组中和元素成为最后一列第一处 t [ 0 ] [ N -j-l ] = t [ j] [ 0 ] :第二处 fo r ( j= N -l ; j>= 0 ; j—)第三处 t [ j] [ N -l ] = r [ j] ;2 . 程序修改给定程序M 0 DI 1 . C 中函数fu n 的功能是:计算s = f ( -n ) +f ( -n +1 ) +. . .+f ( 0 ) +f ( 1 ) +f ( 2 ) +. . .f( n ) 的值。 例如,当n为5时,函数值应该是:1 0 . 4 0 7 1 4 3 / * * fo u n d* * /do u bl e f ( do u bl e x )/ * * fo u n d* * /r et u r n s ;3 . 程序设计编写一个函数fu n , 它的功能是计算:s = 根号下( I n ( 1 ) +l n ( 2 ) +l n ( 3 ) +……I n ( m ) ) S 作为函数返回,在 C 语言中可以调用l o g ( n ) 求 I n ( n ) l o g函数引用说明是:Do u bl e l o g ( do u bl e x ) 例如,若 m的值为:2 0 , fu n 函数值为:6 0 5 0 6 5 83 cdo u bl e fu n ( in t m )(do u bl e s = 0 . 0 ;in t i;fo r ( i= 0 ; i< = m ; i++)s += l o g( l . 0 * i) ;s = s q r t ( s ) ;r et u r n s ;)第三十套1.程序填空函数fu n 的功能是:反形参a 所指数组中的奇数按原顺序依次存放到a[ 0 ] 、a[ l ] 、a[ 2 ] ……中,把偶数从数组中删除,奇数个数通过函数值返回。 例如:若 a 所指数组中的数据最初排列为:9 、1 、4 、2 、3 、6 、5 、8、7 , 删除偶数后a 所指数组中的数据为:9 、1 、3 、5 、7 , 返回值为5 第一处 if( a[ i] %2 = = l )第二处j++;第三处r et u r n j;2 . 程序修改给定程序M O DH. C中函数fu n 的功能是:求出两个非零正整数的最大公约数,并作为函数值返回/ * * fo u n d* * /t = a; a= b; b= t ;/ * * fo u n d* * /r et u r n ( b) ;3 . 程序设计假定输入的字符串中只包含字母和* 号请编写函数fu n , 它的功能是:删除字符串中所有的* 号在编写函数时,不得使用C 语言提供的字符串函数v o id fu n ( char * a)(in t j= 0 ;char * p = a;w hil e( * p ) {if( * p ! = ' * ' )a[ j++] = * p ;p ++;)a[ j] = 0 ;)第三十一套1 . 程序填空给定程序中,函数fu n 的功能是:在形参s s 所指字符串数组中,删除所有串长超过k 的字符串,函数返回所剩字符串的个数。 S s 所指字符串数组中共有N个字符串,且串长小于M 第一处 fo r ( i= 0 ; i< N ; i++)第二处 if ( l en < = k)第三处 s t r cp y ( s s [ j++] , s s [ i] ) ;2 . 程序修改给定程序M O DH. C中函数fu n 的功能是:逐个比较P 、q 所指两个字符串对应位置中的字符,把 A S CH2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))1 0 值或相等的字符依次存放在c 所指数组中,形成一个新的字符串/ * * fo u n d* * /in t k= 0 ;/ * * fo u n d* * /w hil e( * p | | * q )3.程序设计假定输入的字符串中只包含字母和* 号请编写函数fu n , 它的功能是:除了字符串前导* 号之外,将串中其它* 号全部删除在编写函数时,不得使用C 语言提供的字符串函数函数fu n 中给出的语句仅供参考。 vo id fun( char *a){int i= 0 , k ;w hil e ( a[ i] !== , *' ) i++;k = i;w hil e ( a[ i] != > \ 0 ' ){if( a[ i] != ' *' )a[ k ++] = a[ i] ;i++;)a[ k ] = ' \ 0 ' ;)第三十二套1 . 程序填空给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接函数fun的功能是:把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序第一处 s - > d ata= x ;第二处q = p ;第三处 q - > ne x t= s ;2 . 程序修改给定程序M 0 D I 1 . C中函数fun的功能是:计算正整数num 的各位上的数字之积/ **fo und **/l o ng k = l ;/ **fo und **/num / = 1 03.程序设计请编写函数fun, 它的功能是:计算n 门课程的平均分,计算结果作为函数返回fl o at fun( fl o at *a, int n)(int i;fl o at ave = 0 . 0 ;fo r ( i= 0 ; i< n; i++)ave = ave +a[ i] ;ave = ave / n;r e tur n ave ;)第三十三套1 . 程序填空给定程序中,函数fun的功能是:在形参s s 所指字符串数组中,查找含有形参s ubs tr 所指子串的所有字符串并输出,若没找到输出相应信息。 S s 所指字符串数组中共有N个字符,且串长小于M 程序中库函数s tr s tr( s i、s 2 ) 的功能是早s i串中查找s 2 子串,若没有,函数值为0 ,若有,为非0 第一处 fo r ( i= 0 ; i< N ; i++)第二处 if ( s tr s tr ( s s [ i] , s ubs tr ) != N U L L )第三处 if( find = = 0 )2 . 程序修改给定程序M 0 D I 1 . C中函数fun的功能是:求三个数的最小公倍数/ **fo und **/fun( int x , int y , int z )/ **fo und **/r e tur n j ;3 . 程序设计假定输入的字符串中只包含字母和*号请编写函数fun, 它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除形参n 给出了字符串的长度,形参h 给出了字符串中前导*号的个数在编写函数时,不得使用C 语言提供的字符串函数vo id fun ( char *a, int n, int h, int e ){char *p = a;int j = 0 , l e n= 0 ;w hil e ( *p ) ( p ++; l e n++; }w hil e ( j < l e n- h- e ) {a[ j ] = a[ h+j ] ;j ++;)a[ j ] = O ;)第三十四套1 . 程序填空给定程序中,函数fun的功能是:在形参s s 所指字符串数组中查找与形参t 所指字符串相同的串,找到后返回该串在字符串中的位置( 下标值) ,未找到则返回- 1 。 s s 所指字符串数组中共有N个内容不同的字符串,且串长小于M o第一处 fo r ( i= 0 ; i< N ; i++)第二处if( s tr cm p s s [ i] , t) = = 0r e tur n i;第三处if( n= = - l )p r intf( “ \ nD o n‘ t fo und !\ nw ) ;2 . 程序修改给定程序M 0 D I 1 . C中函数fun的功能是:从整数 1 到 5 5 之间,选出能被3 整除、且有一位上的数是5的那些事,并且把这些数放在b 所指的数组中,这些数2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))1 1 作为函数值返回规定,函数中al 放个位数,a2 放十位数/ **fo und **/a2 = k / 1 0 ;/ **fo und **/r e tur n i;3 . 程序设计假定输入的字符串中只包含字母和*号请编写函数fun, 它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。 vo id fun( char *a)char *p = a;w hil e ( *p ) p ++; p 一;w hil e ( *p == , *, ) p -;p ++;*p = 0 ;)第三十五套1.程序填空给定程序中,函数fun的功能是:统计出带有头结点的单向链表中结点的个数,存放在形参n 所指的存储单元中第一处*n= 0 ;第二处 p = p - > ne x t;第三处 fun ( he ad , & num ) ;2.程序修改给定程序M 0 D H . C 中函数fun的功能是:求出s 所指字符串最后一次出现的t 所指字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值N U L L / **fo und **/a= N U L L ;/ **fo und **/if( *r = = *p )3.程序设计函数fun的功能是:将 s 所指字符串中除了下标为偶数,同时A S C H 指也为偶数的字符外,其余的全部都删除:串中剩余字符所形成的一个新串放在t 所指的数组中v oid f u n(c ha r *s, c ha r t [ ] )(int i,j =0;f or (i=0; i< st rl e n(s); i+=2)if (s[ i] %2==0)t [ j ++] =s[ i] ;t [ j ] =O;)第三十六套1 . 程序填空函数f u n的功能是:进行数字字符转换。 若形参 c h中是数字字符‘ 0' — '9 ', 则 '0'转 换 成 '9 ','1'转 换 成 '8 ' , '2'转 换 成 '7', …… '9 '转换成'O';若是其他字符则保持不变,并将转换后的结果做函数值返回第一处 c ha r f u n(c ha r c h)第二处 if (c h>=, O' &&c h< =' 9 ' )第三处 re t u rn '9 ' -(c h- 'O');2 .程序修改给定程序MOD I L C 中函数f u n的功能是:将 p所指字符串中所有字符复制到b中,要求复制第三个字符之后插入一个空格/**f ou nd **/b [ k ] =*p;/**f ou nd **/b [ k ++] = '3 .程序设计N 名学生的成绩已在主函数中放入一个带头结点的链表结构中,h 指向链表的头结点请编写函数f u n,它的功能是:求出平均分,有函数值返回d ou b l e f u n(STRE C *h){STRE C *p=h->ne xt ;d ou b l e a v =0. 0;int n=o;w hil e (p!=NU L L ){a v =a v +p->s;p=p->ne xt ;n++;)a v /=n;re t u rn a v ;)第三十七套1 .程序填空函数f u n的功能是:把形参a 所指数组中的偶数按原顺序依次存放a [ 0] 、a [ l ] 、a [ 2] ... 中,把奇数从数组中删除,偶数个数通过函数值返回。 第一处 if (a [ i] %2==0) {第二处 a [ j ] =a [ i] ; j ++;第三处re t u rn j ;2 .程序修改给定程序M0D I 1. C中函数f u n的功能是:按以下递推公式求函数值例如,当给n 输出5 时,函数值为 18 ;当给n 输入3 时,函数值为14./**f ou nd **/f u n(int n)/**f ou nd **/if (n==l )3 . 程序设计假定输入的字符串中只包含字母和*号请编写函数f u n,它的功能是:使字符串中尾部的*号不得多于n 个;若多于n 个则删除多余的*号;若少于或等于n 个,则什么也不做,字符串中间和前面的*号不删除 2012年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))12v oid f u n(c ha r *a , int n)(c ha r *p=a ;int j =0;w hil e (*p)p++; p- ;w hil e (*p==' *' )p一;p++;w hil e (j 〈 n&&*p){p++;j ++;)*p=0;第三十八套1 . 程序填空给定程序中,函数f u n的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排列,并输入排序结果。 ss所指定字符串数组中共有N 个字符串,且串长小于M第一处k =i第二if (st rl e n(ps[ k ] )< st rl e n(ps[ j ] ))k =j ;第三处 t p=ps[ i] ; ps[ i] =ps[ k ] ; ps[ k ] =t p;2 .程序修改已知一个数列从第0 项开始的前三项分别是0、0、1 以后的各项都是它相邻的前三项之和给定程序M0D I 1. C中函数f u n的功能是:计算并输出该数列前n 项的平方根之和n 的值通过形参传入/**f ou nd **/d ou b l e f u n(int n)/**f ou nd **/re t u rn su m ;3 .程序设计请编写函数f u n,它的功能是:计算下列级数和,和值由函数值返回例如,当n=10, x=0. 3 时,函数值为 1.349 8 59 cd ou b l e f u n(d ou b l e x,int n){ d ou b l e s=l . 0, y =x;int i;f or(i=l ; i< =n; i++){s+=y /(d ou b l e )j c (i);y *=x;)re t u rn s;)第三十九套1 .程序填空给定程序中,函数f u n的功能是:计算x 所指数组中N 个数的平均值(规定所有数均为正数),平均值通过形参返回主函数,将小于平均值且最接近平均值的数作为函数值返回I,在主函数中输出。 第 " —处 *av =s /N ;第二处 d=*av -x [ i ] ; j =i ;}第三处 r et u r n x [ j ] ;2 .程序修改给定程序M 0 D I1. C中函数fu n 的功能是:根据整型形参n 计算如下公式的值例如:若 n =10 ,则应输出 :0 . 6179 77./**fo u n d**/fl o at fu n (i n t n )/**fo u n d**/fo r (i =2;i <=n ;i ++)3 . 程序设计程序定义了 N X N 的二维数组,并在主函数中自动赋值,请编写函数fu n ,它的功能是:使数组右上三角元素中的值乘以m i n t fu n (i n t a[ ] [ N ] , i n t m ){i n t i , j ;fo r (i =0 ;i 第一处j ++;第二处 s [ i ] =t l [ i ] ;第三处 fo r (i =0 ;i 第 1处i f(i s di gi t (*s ))s u m +=*s -48;第 2 处 s ++;第 3 处 r et u r n s u m ;2 .程序修改给定程序M O D H.C 中函数fu n 的功能是:计算小于形参k 的最大的10 个能被13或 17整除的自然数之和K 的值由主函数传入,若 K 的值为50 0 .则主函数为4622 o/**fo u n d**/i f ((k%13= =0 | | (k%17= =0 ))/**fo u n d**/)3 .程序设计请编写函数fu n ,它的功能是:求小于形参n同时能被3 和 7 整除的所有自然数之和的平方根,并作函数的返回值do u bl e fu n (i n t n )(do u bl e s u m =0 . 0 ;i n t i ;fo r (i =21;i <=n ;i ++)i f ((i %3= =0 )& & (i %7= =0 )) s u m+=i ;r et u r n s q r t (s u m );)第四十二套1 程序填空给定程序中,函数fu n 的功能是:将不带头结点的单向链表结点数据域中的数据从小到大排序。 即若原链表节点数据域从头到位的数据为10 、4、2、8、6 , 排序后链表结点数据域从头至尾的数据为2、4、6、8. 10 .第 1 处 q =p ->n ex t ;第 2 处 w h i l e(q )第 3 处 p =p ->n ex t ;2 程序修改给定程序M 0 D I1. C中函数fu n 的功能是:将 s 所指字符串中的字母转换为按字母顺序的后续字母(但Z 转化成A ,z 转换为a ) , 其它字符不变/**fo u n d**/w h i l e(*s )/**fo u n d**/s ++;3 程序设计v o i d fu n (i n t *w , i n t p , i n t n ){i n t i , j =0 , b[ N ] ;fo r (i =p +l ;i 第 1 处 r o w =co l u m =0 ;第 2 处i f((r o w ! =co l u m ) | | (r o w ! =m l ))r et u r n 0 ;第 3 处 r et u r n 1;2 程序修改给定程序M 0 D H.C 中函数fu n 的功能是:根据整型形参m计算如下公式的值/**fo u n d**/t =t -l . 0 /i ;/**fo u n d**/r et u r n t ;3 程序设计请编写一个函数,函数的功能是:删除字符串中所有的空格i n t f u n ( c ha r * s t r ){c ha r * p = s t r ;i n t i = 0 ;whi l e ( * p ) {i f ( * p != ' ' ) s t r [i + + ]= * p ;p + + ;)s t r [i ]= O ;)第四十四套1程序填空给定程序中,函数f u n 的功能是:将 N乘以N 矩阵中元素的值按列右移一个位置,右边被移出矩阵的元素绕同左边第 1 处 f o r ( i = 0 ; i 〈 N ; i + + )第 2 处 x = t [i ][N - l ];第 3 处 t [i ][0 ]= x ;2程序修改给定程序M 0 D H . C 中函数f u n 的功能是:计算并输出下列级数的前n 项的和Sn ,直到Sn + 1 大于q为止,q的值通过形参传入。 / * * f o u n d * * /s = s + ( n + l . 0 ) / n ;/ * * f o u n d * * /r e t u r n t ;3 程序编写编写函数f u n ,它的功能是:求 F i b o n a c c i 数列中大于t的最小一个数,结果由函数返回其中F i b o n a c c i 数列F( n ) 定义为 F ( 0 ) = 0 ,F ( l ) = l ,F ( n )o 0 0i n t f u n ( i n t t ){i n t f 0 = 0 , f l = l , f ;d o 2 0 1 2 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))1 4 { f = f 0 + f l ;f O = f 1 ;f l = f ;}whi l e ( f < t ) ;r e t u r n f ;)第四十五套1程序填空给定程序中,函数f u n 的功能是将带头结点的单向链表逆置。 即若原链表中从头至尾结点数据域依次为:2 、4 、6 、8 、1 0 ,逆置后,从头至尾结点数据域依次为:1 0 、8 、6 、 4 、 2 . o第 1 处 p = h- > n e x t :第 2 处 i f ( p = = 0 ) r e t u r n ;第 3 处 p = q ; q = r ;2程序修改给定M O D H . C f u n 函数的功能是:计算s 所指字符串中含有t 所指字符串的数目,并作为函数值返回请改正函数f u n 中指定部位的错误,使它能得出正确的结果/ * * f o u n d * * /r = t ;/ * * f o u n d * * /i f ( * r = = 0 )3程序设计请编写函数f u n ,函数的功能是:将放在字符串数组中的M 个字符串( 每串的长度不超过N ) ,按顺序合并组成一个新的字符串,函数f u n 中给出的语句提供参考vo i d f u n ( c ha r a [M ][N ]) , c ha r * b ){ i n t i ; * b = 0 ;f o r ( i = 0 ; i < M ; i + + ) s t r c a t ( b , a [i ]) ;)第四十六套1程序填空给定程序中,函数f u n 的功能是:将形参s 所指字符串所有 A SC I I 码小于9 7 的字符存入形第 1 处 * ( t + n ) = * s ; n + + ; }第 2 处 s + + ;第 3 处 r e t u r n n ;2程序修改给定程序M 0 D I L C 中函数f u n 的功能是:由形参给定n个实数,输出平均值以上( 含平均值) 的实数个数。 / * * f o u n d * * /i n t j ,c = 0 ; f l o a t x a = 0 . 0 ;/ * * f o u n d * * /i f ( x [j ]> = x a )3程序设计编写函数f u n ,其功能是:根据以下公式求p的值,结果由函数值带回m 与n为两个正整数且要求m〉 n p = m!/ ( n !* ( m- n ) !)f l o a t f u n ( i n t m, i n t n )(f l o a t p ;p = l . 0 * j c ( m) / j c ( n ) / j c ( m- n ) ;r e t u r n p ;)第四十七套1程序填空函数 f u n 的功能是:计算 f ( x ) = l + x - x 2 / 2 !+ x 3 / 3 !- X 4 / 4 !直到 | x n / n ! ! < 1 0 - 6 若 x = 2 . 5 , 函数值为:1 . 9 1 7 9 1 5 第 1 处 t = x第 2 处 t * = ( - 1 . 0 ) * x / n ;第 3 处 whi l e ( f a b s ( t ) > = l e - 6 )2程序修改给定程序M 0 D H . C 中函数f u n 的功能是:求整数x的y次方的低3 位值。 例如,整数5 的6次方为1 5 6 2 5 ,此值的低3 位值为6 2 50/ * * f o u n d * * /f o r ( i = l ; i < = y ; i + + )/ * * f o u n d * * /t = t %1 0 0 0 ;3 程序设计请编写函数f u n ,其功能是:计算并输出当x < 0 . 9 7 时下列多项式的值,直到Sn - Sn - l < 0 . 0 0 0 0 0 1 为止d o u b l e f u n ( d o u b l e x )(i n t n = l ;d o u b l e s n = l ;d o u b l e x n = l ,x n l = 0 ;whi l e ( f a b s ( x n - x n l ) > = 0 . 0 0 0 0 0 1 ){x n = x n * x * ( 0 . 5 - n + l ) / n ;n + = l ;s n + = x n ;}r e t u r n ( s n ) ;)第四十八套1程序填空给定程序中,函数f u n 的功能是:计算出带有头节点的单向链表中各节点数据域中值之和作为函数值带回。 第 1 处 s + = p - > d a t a ;第 2 处 p = p - > n e x t ;第 3 处 p r i n t f ( "\n s u m= %d \n ” , f u n ( he a d ) ) ;2程序修改给定程序M 0 D I 1 . C中函数f u n 的功能是:将 s 所指字符串中出现的与t l 所指字符串相同的子串全部替换成t 2 所指字符串,所形成的新串放在w 所指的数组中在此处,要求t l 和 t 2 所指字符串的长度相同/ * * f o u n d * * /whi l e ( * r )/ * * f o u n d * * /* a = * r ; a + + ; r + + ;3程序设计函数f u n 的功能是:将 s 所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t 所指数组中v oi d f un(c h a r *s, c h a r t[ ] ){i nt i ,j = 0;f or(i = l; i < strle n(s); i + = 2)t[ j + + ] = s[ i ] ; 2012 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))1 5 t m = 0;)第四十九套1 程序填空给定程序中, 函数f un的功能是:把形参s 所知字符串中最左边的n 个字符复制到形参t 所指字符数组中,形成一个新串,若 s 所指字符串的长度小于n , 则将整个字符串复制到形参t 所指字符数组中。 第 1 处 i f (n> = le n)strc p y (t, s);第 2 处 t[ j + + ] = s[ i ] ;第 3 处 t[ j ] = O ;2 程序修改给定程序M 0D I 1. C中函数f un的功能是:找出一个大于形参m且紧随m的素数,并作为函数值带回/**f ound **/i f (i %k = = 0)/**f ound **/i f (k > = i )3程序设计编写函数f un,它的功能是:求出能整除形参x切不是偶数的各整数,并按从小到大的顺序放在p p所指的数组中,这些除数的个数通过形参n返回v oi d f un(i nt x , i nt p p [ ] , i nt*n){i nt i ;*n= 0;f or(i = l; i < = x ; i + + )i f ((x %i = = 0)&&(i %2))p p E (*n)+ + ] = i ;)第五十套1程序填空给定程序中,函数f un的功能是:将形参s所知字符串中的所有数字字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回第 1 处 p [ j ] = s[ i ] ; j + + ; }第 2 处 f or (i = 0; i〈k ; i + + )p [ j + i ] = t[ i ] ;第 3 处 re turn p ;2程序修改给定程序M 0D I 1. C中函数f un的功能是:首先把b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。 /**f ound **/w h i le (i < j )/**f ound **/i f (*a )3程序设计函数f un的功能是:将s所指字符串中下标为偶数同时A S C H值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中v oi d f un(c h a r *s, c h a r t[ ] )i nt i ,j = 0;f or(i = 0; i < strle n(s); i + + )i f (! ((i %2)= = 0&&(s[ i ] %2)))t[ j + + ] = s[ i ] ;t[ j ] = O ;)第五十一套1 程序填空给定程序中,函数f un的功能是:计算下式s= l/22+ 3 /42+ 5 /6 2…+ (2X n-l)/(2X n)2 直到 | (2Xn T) /(2X n) 2 |《 10-3 并把计算结果作为函数值返回例如,若形参e的值le -3 , 函数值的返回值为2.7 3 5 6 7 8 c第 1 处 i = 0;第 2 处 i + + ;第 3 处 x = (2. 0*i T ) / ((2. 0*i )* (2. 0*i ));2 程序修改给定程序M O D H .C 中函数f un的功能是:将 s 所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。 /**f ound **/v oi d f un(c h a rts, c h a r *t)/**f ound **/t[ 2*d ] =, \ 0 ' ;3程序设计函数f un的功能是:将 s 所指字符串中除了下标为奇数、同时A S C H 值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t 所指的数组中v i od f un(c h a r*s, c h a t t [ ] )(i nt i ,j = 0;f or(i = l; i < strle n(s); i + = 2)i f (s[ i ] %2)t[ j + + ] = s[ i ] ;t[ j ] = O ;)第五十二套1 程序填空给定程序中,函数f un的功能是:在 3 X 4 的矩阵中找出在行上最大,列上最小的那个元素,若没有符合条件的元素则输出相应信息第 1 处 ma x = a [ i ] [ j ] ; c = j ; }第 2 处 f i nd = 0;第 3 处 i + + ;2 程序修改给定程序M O D H .C 中函数f un的功能是:根据整形形参m的值:计算如下公式的值? ……例如: 若m 中的值为5 , 则应输出: 0. 5 3 6 3 8 9 o/**f ound **/f or(i = 2; i < = m; i + + )/**f ound **/y -= l. 0/ (i *i );3程序设计m 个人的成绩存放在sc ore 数组中,请编写函数f un,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在b e low 所指的数组中。 2012年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))16 i nt f un(i nt sc ore [ ] ,i nt m, i nt b e low [ ] ){f loa t a v = 0. 0;i nt i , j = 0;f or(i = 0; i < m; i + + )a v + = sc ore [ i ] ;a v /= m;f or(i = 0; i < m; i + + )i f (a v > sc ore [ i ] )b e low [ j + + ] = sc ore [ i ] ;re turn j ;)第五十三套1 程序填空给定程序中,函数f un的功能是将形参指针所指结构体数组中的三个元素按num成员进行升序排列第 1 处 v oi d f un(P E R S O N *std )第 2 处 P E R S O N te mp ;第 3 处 f un(std );2 程序修改给定程序M O D H .C 中函数f un的功能是:将 m (l^ m W1 0 )个字符串连接起来,组成一个新串,放入p t所指存储区中。 /**found**/int k, q, i ;/**found**/p t[i> str[k ] [ i];3 程序设计程序定义了 NXN的二维数组,并在主函数中自动赋值请编写函数fun (int a[ ][N ]), 函数的功能是:使数组左下三角元素中的值全部置成0int fun(int a[][N]){int i, j;for(i=0;i 第 1 处 l p = s ;第 2 处 l p + + ; r p —; }第 3 处 i f ( l p < r p ) r e t u r n 0 ;2程序修改给定程序M 0 D H . C 中函数f u n 的功能是:求出以下分数序列的前n 项之和2 / 1 + 3 / 2 + 5 / 3 + 8 / 5 + 1 3 / 8 + 2 1 / 1 3 + ……和值通过函数值返回m a i n 函数例如n = 5 , 则应输出:8 . 3 9 1 6 6 70/ * * f o u n d * * /d o u b l e f u n ( i n t n )/ * * f o u n d * * /c = a ; a + = b ; b = c ;3 程序设计请编写函数f u n , 函数的功能是:将大于形参m且紧靠m的k 个素数存入x x 所指的数组中1 9 , 2 3 , 2 9 , 3 1 , 3 7 ,函数f u n 中给出的语句仅供参考v o i d f u n ( i n t m , i n t k , i n t x x [ ] ){i n t i , j = l , t = m + l ;w h i l e ( j < = k ){f o r ( i = 2 ; i < t ; i + + )i f ( t % i = = 0 ) b r e a k ;i f ( i = = t ) {x x [ j - l ] = i ;j + + ;)t + + ;))第五十六套1程序填空给定程序的功能是:从键盘输入若干行文本( 每行不得超过8 0 个字符) ,写到文件m y f i l e 4 . t x t 中,用T 作为字符串输入结束的标志。 然后将文件的内容读出显示在屏幕上文件的读写分别由自定义函数R e a d T e x t 和W r i t e T e x t 实现 2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))1 7 第1 处 v o i d W r i t e T e x t ( F I L E * f w )第 2 处 f p u t s ( s t r , f w ) ; f p u t s ( " \ n " , f w ) ;第 3 处 p r i n t f ( " % s " , s t r ) ;2程序修改给定程序M 0 D I 1 . C中函数f u n 的功能是:从低位开始取出长整形变量s 中奇数位上的数,依次构成一个新数t中高位仍在高位,低位仍在低位/**f o u n d **/v o i d f u n (l o n g s ,l o n g *t )/**f o u n d **/s l =s l *1 0;3程序设计函数f u n 的功能是:将两个两位数的正整数a、b 合并形成一个整数放在c中。 合并的方式是:将 a 数的十位和个位数依次放在c数的十位和百位上,b 数的十位和个位数依次放在c 数的千位和十位上v o i d f u n (i n t a , i n t b ,l o n g *c )(*c =(b /1 0)*1 000+(a %1 0)*1 00+(b %1 0)*1 0+(a /1 0);)第五十七套1程序填空给定程序中,函数f u n 的功能是:计算出形参s 所指字符串中包含的单词个数,作为函数值返回为便于统计,规定各单词之间用空格隔开第 1 处 n ++; f l a g =l ; }第 2 处 i f (*s ==' ' )f l a g =0;第 3 处 s ++;2 程序修改给定程序MODH.C中函数fun的功能是:从 n (形参)个学生的成绩中统计出低于平均分的学生人数,此人数由函数值返回,平均分存放在形参a v e r所指的存储单元中/**found**/t+=s[k];/**found**/*aver=ave;3 程序设计请编写函数fu n ,其功能是求出数组的最大元素在数组中的下标并存放在k 所指的存储单元int fun(int *s, int t, int *k)(int i,pos=0, max=*s;for(i= l;i< t;i++){if(max<*(s+i)) {max=*(s+i);pos=i;})*k=pos;)第五十八套1 程序填空给定程序中,函数fun的功能是计算下式s=3/22— 5/42 +7/62-----+(T)nT(2X nT)/(2X n)2 直到 I (2X n-l) /(2Xn2) | W10-3并把计算结果作为函数值返回,例如:若形参e 的值为T e-3 ,函数的返回值为0. 551690。 第 1 处 x=3. 0/4;第 2 处 while(x>e)第 3 处 x= (2*i+ l)/(t*t);2 程序修改给定程序M0DH.C中函数fun的功能是:求出以下分数序列的前n 项之和2/1, 3/2, 5/2, 8/5, 13/8, 31/13…和值通过函数值返回到main函数/**found**/double fun(int n)/**found**/s=s+(double)a/b;3 程序设计请编写函数fu n ,它的功能是:求出一个2XM整型二维数组中最大元素的值,并将此值返回调有函数fun(int a 口 [M])i n t i , j , m a x =a [ O ] [ 0] ;f o r(i =0; i < 2 ; i ++)f o r(j =0; j < M ; j ++)i f (m a x < a [ i ] [ j ] )m a x =a [ i ] [ j ] ;re t u rn m a x ;)第五十九套1程序填空函数f u n 的功能是:把形参a 所指数组中的的最小值放在元素a [ 0] ,接着把形参a 所指数组中的最大值放a [ l ] 元素中;再把a 所指数组中的次小值放在a [ 2 ] 中,把 a 所指数组元素中的次大值放在a [ 3 ] ;其余以此类推。 第 1 处 m a x =m i n =a [ i ] ;第 2 处 i f (m a x < a [ j ] )第 3 处 i f (m i n > a [ j ] )2程序修改给定程序M O D I 1 . C 中函数f u n 的功能是:用递归算法计算列中第n 项的值从第一项起,斐波拉契数列为:1 、1 > 2 、 3 、 5 、 8 、 1 3 > 2 1 、 .../**f o u n d **/s w i t c h (g )/**f o u n d **/c a s e 1 : re t u rn 1 ;c a s e 2 : re t u rn 1 ;3程序设计某学生的记录由学号、8门课程和平均分组成,学号和8门课程成绩已在主函数中给出请编写函数f u n ,它的功能是; 求出该学生的平均分放在记录的a v e 成员中v o i d f u n (S T R E C *a ){ i n t i ;f o r(i =0; i < N ; i ++)a -> a v e =a -> a v e +a -> s [ i ] ;a -> a v e /=N)第六十套1程序填空2 01 2 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库((全全全全))))1 8 给定程序中,函数f u n 的功能是:有N X N 矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素来。 第 1 处 v o i d f u n (i n t ) (*t )[ N ]第 2 处 t [ i H j ] =t [ i ] [ j ] 4 -t [ j ] [ i ] :第 3 处 t [ j ] [ i ] =0;2 程序修改给定程序M 0D H .C中函数f u n 的功能是:计算函数值,F(x , y , z ) =(x +y )/(x -y ) + (z +y )/(z -y )其中 x 和 y 的值不等,z和 y 的值不等例如,当X的值为9 、y 的值为1 1 、Z的值为1 5 时,函数值为-3 . 5 0/**f o u n d **/#d e f i n e FU ( m , n ) ( ( m ) / ( n ) )/ * * f o u n d * * /r e t u r n ( v al u e ) ;)3 程序设计规定输入的字符串中只包含字母和* 号请编写函数f u n ,它的功能是:将字符串中的前导* 号全部删除,中间和尾部的* 号不删除v o i d f u n ( c h ar * a)(i n t j = 0 ;c h ar * p = a;w h i l e ( * p = = , * , ) p + + ;w h i l e ( * p ) {a[ j + + ] = * p ;p + + ;)a[ j ] = 0 ;)第六十一套1程序填空人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组st d 中。 函数f u n 的功能是:找出指定出生年份的人员,将其数据放在形参k所指出的数组中,由主函数输出,同时由函数值返回满足指定条件的人数第 1 处 i f ( st d [ i ] . y e ar = = y e ar )第 2 处 k[ n + + ] = st d [ i ] ;第 3 处 r e t u r n ( n ) ;2程序修改给定程序M 0 DI1 . C 中函数f u n 的功能是:读入一个整数k( 2 < k近1 0 0 0 0 ) 打印它的所有质因子( 即所有为素数的因 子 ) / * * f o u n d * * /IsP r i m e ( i n t n )/ * * f o u n d * * /i f ( ! ( n % i ) )3程序设计已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a 中请编写给函数f u n , 函数的功能是:找出成绩最高的学生的记录,通过形参指针传回主函数( 规定只有一个最高分) ,已给出函数的首部,请完成函数f u n ( S T U a[ ] , S T U * s)(i n t i , m ax = a[ 0 ] . s, j = 0 ;f o r ( i = l ; i < N ; i + + ){ i f ( m ax < a [ i ] . s) {j = i ;m ax = a[ i ] . s;)* s= a[ j ] ;)第六十二套1 程序填空给定程序中,函数f u n 的功能是:将 N X N 矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。 例如:若 N = 3 有下列矩阵:1 2 34 5 67 8 9交换后:3 2 14 5 69 8 7第 1 处 v o i d f u n ( i n t t [ ] [ N ] , i n t n )第 2 处 f o r ( i = 0 ; i < n : i + + )第 3 处 t [ i ] [ n - i - l ] = s;2程序修改由N个有序整数组成的数列已放在一维数组中,给定程序 M 0 DI1 . C 中函数f u n 的功能是:利用折半查找算法查找整数m 在数组中的位置若找到,返回其下标值;反之,返回T. 折半查找的基本算法是:每次查找前先确定数组中待查的范围:l o w 和 h i g h ( l o w < h i g h ) ,然后把m的值大于中间位置元素中的值,则下一次的查找范围落在中间位置之前的元素中直到l o w > h i g h , 查找结束/ * * f o u n d * * /f u n ( i n t a [ ] , i n t m )/ * * f o u n d * * /e l se i f ( m > a [ m i d ] )3程序设计假定输入的字符串中只包含字母和* 号,请编写函数f u n ,它的的功能是:除了尾部的* 号之外,将字符串中其他*全部删除。 形参p已指向字符串中最后一个字母在编2 0 1 2 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))1 9 写函数时,不得使用C 语言提供的字符串函数v o i d f u n ( c h ar * a, c h ar * p )(c h ar * q = a;i n t j = 0 ;w h i l e ( * q & & q 〈 p ) {i f ( * q ! = ' * ' )a[ j + + ] = * q ;q + + ;)w h i l e ( * p ) a [ j + + ] = * p + + ;a [ j ] = 0 ;)第六十三套1程序填空给定程序中,函数f u n 的功能是; 求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n 所指变量中S s所指字符串数组中共 M个字符串,且串长 /* * f o und * * /if (( " a< = 'z ))/* * f o und * * /tt[ i ]- =32;3 程序设计请编写函数f un,函数的功能是:将所有大于1 小于整数m的非素数存入x x 所知数组中,非素数的个数通过k 传回v o id f un (int m , int * k , int x x [])(int i , c nt=0;f o r (i=0; i f un (c h a r * s)(c h a r b [N ];int i=0, j ;m eset (b , 0, N );f o r (j =str l en(s)- l ; j >=0; j )b [i++]=s[j ];str c p y (s, b );)第六十五套1程序填空给定程序中,函数f un的功能是:计算下式前5 项的和作为函数值返回S =1 X 3/22- 3 X 5/42+5 X 7/62- ...+ (- l )n- l (2Xn- l ) X (2Xn+l )/(2Xn)2 例如,当形参 n 的值为10时,函数返回:- 0. 204491 o第 1 处 k =l ;第 2 处 t=2* j ;第 3 处 k =k * (- 1);2 程序修改给定程序M 0D I1. C中函数f un的功能是:判断一个整数是否是素数,若是返回1 , 否则返回0./* * f o und * * /K ++;/* * f o und * * /if (m ==k )3 程序设计请编写一个函授f un,它的功能是:找出一维整数组元素中最大的值和他所在的下标,最大的值和它所在的下标通过形参传回。 数组元素中的值已在主函数中赋予主函数中x是数组名,n 是 x中的数据个数,m a x 存放在大值,ind ex 存放最大值所在元素的下标v o id f un (int a [], int n, int * m a x , int * d ){ 2012 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))20 int i;* m a x =a [0];* d =0;f o r (i=l ; i m =l +l /2* 2+l /3* 3+l /4* 4…l /m * m例如,若m中的值为5 ,则应输出1. 4636112 /* * f o und * * /f o r (i =2 ; i<= m ; i++)/* * f o und * * /y +=l . 0/ ( i* i ) ;3程序设计编写函数f un,函数的功能是:实现B =A +A ,即把矩阵A加上A的转置,存放在矩阵B中计算结果在m a in函数中输出v o id f un ( int a [3] [3], int b [3] [3])(Int c [3] [3];int i, j ;f o r (i=0;i<3;i++)f o r (j =0; j <3; j ++)(c [i][j ]=a [j ] [ i ] ;b [i] [j ]=a [i] [j ] +c [i] [ j ] ;第六十七套1 程序填空给定程序中,函数f un的功能是:找出100~ 999之间(含100和 999)所有整数中个位上数字之和为x (x 为一正整数)的整数,然后输出:符合条件的整数个数作为函数值返回。 第 1 处 w h il e (t<=999)第 2 处 sl =t%10; s2=(t/10)%10: s3=t/100;第 3 处 if (sl +s2+s3==x )2 程序修改给定程序M 0D H.C 中函数f un的功能是:低位开始取出长整形变量s 中偶数位上的数,依次构成一个新数放在t中高位仍在高位,低位仍在低位/* * f o und * * /v o id f un (l o ng s, l o ng * t)/* * f o und * * /w h il e (s>0)3 程序设计学生的记录由学号和学生成家组成,N名学生的数据已在主函数中放入结构体数组s 中,请编写函数f u n,它的功能是;按分数的高低排列学生的记录,高分在前i nt f u n ( S T R E C a [ ] )(S T R E C tmp ;i nt i , j;f or ( i =0;i 并作为函数值返回1 第 1 处 i f ( t% 2==0)第 2 处 x =10* x +t;第 3 处 n=n/10;2 程序修改给定程序M 0D I1.C中函数f u n的功能是:将长整数中每一位上为奇数的数依次取出,构成一个心数放在t 中高位仍在高位,低位仍在低位/* * f ou nd * * /* t=0;/* * f ou nd * * /i f ( d % 2! =0)3 程序设计编写一个函数f u n,它的功能是:实现两个字符串的连续( 不使用库函数strc a t) , 即把p 2所指的字符串连接到p l所指的字符串后v oi d f u n ( c h a r p [ ] , c h a r p 2[ ] )(c h a r * p =p l;w h i le ( * p ) p ++;w h i le ( * p 2) * p ++=* p 2++;* p =0;)第六十九套1 程序填空甲乙丙丁四人同时开始放鞭炮,甲每隔tl秒放一个,乙每隔t2秒放一个,丙每隔t3秒放一个,丁每隔t4秒放一 个 ,每人各放n 次函数f u n的功能是通过形参提供的信息,求出总共听到多少次鞭炮声作为函数值返回。 注意,当几个鞭炮同时炸响,只算一声响声,第一声响是在第0 秒1 第 1 处 ma x t =tl;第 2 处 f or ( t=l; t< ma x t* ( n-l) ; t++)第 3 处 re tu rn c ou nt; 2012 年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))212程序修改给定程序M 0D H .C中函数f u n的功能是:根据输入的三个边长( 整值型) ,判断能否构成三角形,还是等腰三角形若能够构成等边三角形函数返回3 , 若能构成等腰三角形,函数返回2 , 若构成一般三角形,则函数返回1,若不能构成三角形,则函数返回0./* * f ou nd * * /i nt f u n ( i nt a , i nt b , i nt c )/* * f ou nd * * /e lse re tu rn 1;3 程序设计编写一个函数f u n,它的功能是:计算并输出3 到 n 之间( 含3 和 n ) 所有素数平方根之和。 d ou b le f u n ( i nt n)(i nt i , j=0;d ou b le s=0;f or ( i =3;i <=n; i ++) {f or ( j=2; j
第 1 处 v o i d fu n (i n t *a , i n t n )第 2 处 fo r (i = 0; i 第 1 处 fo r ( j = 2; j = i )2 程序修改数列中,第一项值为3 , 后一项都比前一项的增5 ;给定程序m o d i L c中函数fu n 函数功能是:计算前n (4 /**fo u n d **/d = l ; s= 0 ;/**fo u n d **/d = d /10 ;3 程序设计请编写一个函数fu n ,它的功能是:计算并输出给定数组(长度为9 ) 中每相邻两个元素之平均值的平方根之和d o u b l e fu n (d o u b l e x [ 9 ]){i n t i ;d o u b l e a v g= 0. 0, su m = 0. 0 ;fo r (i = 0 ; i <8 ; i ++) {a v g = ( x [ i ] + x [ i +l ])/2;su m += sq r t ( a v g);)r t u r n su m ;)第七十四套1 程序填空给定程序中,函数fu n 的功能是:计算f(x )= l +x +x 2/++x n /n !的前n 项若 x = 2. 5 ,函数值为:12. 18 234 0第 1 处 t = l ;第 2 处 fo r (i = l ;i /**fo u n d **/k = i ;/**fo u n d **/c = k %10;3 程序设计请编写一个函数fu n ,它的功能是:计算并输出给定10个数的方差:例如,给定的10个数为9 5 .0、8 9 .0、7 6 .0、6 5 .0、8 8 .0、7 2.0、8 5 .0、8 1.0、9 0.0、5 6 .0、1 输出为s= l l . 7 307 29 .d o u b l e fu n (d o u b l e x [ 10])(I n t i ;d o u b l e a v g = 0. 0, su m = 0. 0, a b s = 0. 0, fc ;fo r (i = 0; i <10; i ++)su m += x [ i ];a v g = su m /10;fo r (i = 0; i <10; i ++)a b s += (x [ i ]- a v g)*(x [ i ] -a v g );fc = sq r t (a b s/10);r e t u r n fc ;)第七十五套1 程序填空给定程序中已经建立一个带有头结点的单项链表,在 m a i n 函数中将多次调用f u n函数,每调用一次f u n函数,输出链表尾部结点中的数据,并释放该结点,使链表缩短。 第 1 处 t=t- >ne x t;第 2 处 pri ntf (绘d ” , t->d a ta );第 3 处 f re e (t);2 程序修改给定程序M 0D I 1. C中f u n函数的功能是:将字符串中的字符按逆序输出,但不改变字符串中的内容/**f ou nd **/f u n (c h a r *a )/**f ou nd **/pri ntf ( "枇”, *a );3 程序设计编写一个函数f u n,它的功能是:比较两个字符串的长度(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串若两个字符串长度相同,则返回第一个字符串c h a r *f u n (c h a r *s , c h a r *t)i nt i ;c h a r *p =s ,*q=t;f or (i =0; *p&&*q ; i ++) {p++ ; q++;i f (*p==0&&*q==0)re tu rn s ;i f (*p) re tu rn s ;e l s e re tu rn t ;第七十六套2012年年年年3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))231程序填空在给定程序中,函数f u n的功能是在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数不做任何处理。 第 1 处 f or (i =0; s [ i ] ! ="\ 0, ;i ++)第2处n=0;第 3 处 s [ j +l ] =c ;2程序修改在主函数中键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中给定程序M 0 D H . C中函数f u n的功能是:计算数组元素中值为正数的平均值(不包括零)/**f ou nd **/d ou b l e s u m =0. 0;/**f ou nd **/s u m /=c ;3 程序设计编写程序f u n,它的功能是:根据以下分工计算s , 计算结果作为函数值返回:n 通过形参传入f l oa t f u n (i nt n)(i nt i , j , t;f l oa t s =0;f or(i =l ; i <=n;i ++){t=0;f or (j =l ; j <=i ; j ++)t+=j ;s =s +l . 0/t;)re tu rn s ;}第七十七套1 程序填空给定程序中,函数f u n的功能是:将形参n 所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n 传回所指变量。 如输入一个数:27 6 38 49 6 ,新的数为7 29第 1 处 { t=*n%10 ;第 2 处 i f (t %2! =0)第 3 处 *n=x ;2 程序修改给定程序m od i l . c中函数f u n函数功能是:计算n ! 例如,给 n 输入5 , 则输出120. 000000/**f ou nd **/i f (n==0)/**f ou nd **/re s u l t *=n一;3 程序设计请编写一个函数f u n,它的功能是:将一个数字字符转换为一个整数(不得调用C语言提供的将字符转换为整数的函数)例如,若输入字符串“ T234”,则函数将它转换为整数值T234.l ong f u n (c h a r *p)(i nt i , l e n , t;l ong x =0;l e n =s trl e n (p);i f (p[ 0] ==' - '){ t= - 1; l e n—;p++;}e l s e t=l ;W h i l e (*p)x =x *10 - 48 +(*p++);re tu rn x *t;)第七十八套1 给定程序中,函数f u n的功能是将形参给定的字符串、整数、浮点数写到的文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。 请在程序的下划线处填入正确的内容分并把下划线删除,使得程序得出正确的结果注意:源程序存放在考生文件夹下的B L A N K 1 . C 中第 1 处 F I L E * f p ;第 2 处 w h i le (!f e o f (f p )) {第 3 处 p u t c h a r (c h ) ; c h = f g e t c (f p ); }2程序修改给点那个程序M 0 D I 1 . C中函数f u n的功能是:依次取出字符串中所有的数字字符,形成新的字符串,并取代原字符串/ **f o u nd **/s [ j ++] = s [ i ] ;/ **f o u nd **/s [ j ] = ' \ 0 ' ;3程序设计题请编写函数f u n,函数的功能是:将 M 行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中v o i d f u n (c h a r s [ ] [ N ] , c h a r *b )(i nt i , j , n= 0 ;f o r (i = 0 ; i < N ; i ++)/ *请填写其相应语句完成其功能*/(f o r ( j = 0 ; j < M ; j ++) {b [ n] = s [ j ] [ i ] ;n= i *M +j +l;))b [ n] = ' \ 0 ' ;)第七十九套1程序填空给定程序中,函数f u n的功能是将带头结点的单项链表结点数据域中的数据从小到大排序,即若原链表节点数据域从头至尾的数据为:1 0 、4 、2 、8 、6 , 排序后链表结点数据域从头至尾的数据为:2、4、6、8、1 0。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确结果第 1 处 p = h - > ne x t ;第 2 处 q = p - > ne x t ;第 3 处 i f (p - > d a t a > = q - > d a t a ))2程序修改2 0 1 2年年年年3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库((((全全全全))))2 4给定程序M 0 D I 1 . C是建立一个带头结点的单项链表,并用随机函数为各节点数据赋值函数f u n的作用是求出单项链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回请改正函数f u n中所指部位的错误,使它能得出正确结果/ **f o u nd **/p = h - > ne x t ;/ **f o u nd **/p = p - > ne x t ;3程序设计请编写函数f u n,函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中一维数组中数据的个数存在形参n所指的存储单元中。 v o i d f u n ( i nt (*s ) [ 1 0 ] , i nt *b , i nt *n, i nt mm, i nt nn)(i nt i , j , k ;f o r (i = 0 ; i < mm; i ++)f o r (j = 0 ; j < nn; j ++)(k = i *nn +j ;b [ k ] = s [ i ] [ j ] ;*n= mm*nn;第八十套1 程序填空给定程序中,函数fun的功能是用函数指针指向要调用的函数,并进行调用在规定的2 处使f 指向函数fl,在 3 处使f 指向函数f2. 当调用正确时,程序输出:xl=5. 000000, x2=3. 000000, xl*xl+xl*x2=40. 000000 请在程序下划线处填入正确的内容并把下划线删除,使程序得出正确结果第 1 处 double ( *f ) ( ) ;第 2 处 f = f 1;第 3 处 f = f 2;2 程序修改给定程序M0DH.C是建立一个带头点的单向链表,并用随机函数为各结点赋值函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结果/**found**/p= h - >next;/**found**/p= p - >next;3 程序设计请编写函数f u n ,函数的功能是:判断字符串是否为回文?是,函数返回1 , 主函数中输出:YES,否则返回0,主函数中输出N0o回文是指顺读t 和倒都都一样的字符串int fun ( char * str)(int i , j= strlen ( s t r ) ;for ( i=0 ; i < j /2 ; i++)if (str [ i ] ! = str [j- i - 1])return 0 ;return 1 ;)第八H - 一套1 程序填空给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数a to f和 a to f将字符串换成相应的整数和浮点数,然后将其显示在屏幕上第 1 处 FILE * fp ;第 2 处 fclose ( f p ) ;第 3 处 fscanf ( fp , “ 髯 s % s % s” , str, strl , str2 );2 程序修改给定程序MODH.C中函数fun的功能是:对 N名学生的学生成绩,按从高到低的顺序找出前m (m<10)名学生来,将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。 /**found**/t= ( STU *) calloc (sizeof (STU), m );/**found**/t [k] =b [ j ] ;3 程序设计请编写函数f u n ,函数的功能是,删去一维数组中所有相同的数,使之只剩一个数组中的数已按从小到大的顺序排序,函数返回删除后数组中数据的个数int fun ( int a [ ] , int n )(int i , j =1 , k=a [0];for ( i = 1; i /**found**/char *fun (char *s , char *t)/**found**/ss++;/**found**/tt++;3 程序设计2012年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))2 5 请编写函数f u n , 函数的功能是,移动字符串中的内容,移动的规则如下:把第一到m个字符,平均移到字符串的醉最后,把 m + 1 个到最后的字符移到字符串的前部v o i d f u n ( c ha r * w , i n t m )(i n t i ;f o r ( i = 0 ; i < m ; i + + )f u n 1 ( w ) ;)第八十三套1程序通通定义并赋初值的方式,利用结构体变量存储了一名学生的信息,函数f u n 的功能是输出这位学生的信息第 1 处 v o i d s ho w ( S T U t t )第 2 处 p ri n t f (, /% 5 . i f , t t . s c o re [ i ] ) ;第 3 处 s ho w ( s t d )2程序修改给定程序M O D I L C 中函数f u n 的功能是:求出数组中最大数和次最大数,并把最大数和a [ 0 ] 中的数对调、次最大数和a [ l ] 中的数对调。 / * * f o u n d * * /m = i ;/ * * f o u n d * * /i f ( a [ k ] > a [ m ] ) m = k ;3程序设计请编写一个 u n s i g n e d f u n ( u n s i g n e d w ) , w 是一个大雨于 1 0 的无符号整数,若w是 n ( n > = 2 ) 位的整数,函数求出w的后n - 1 位的数作为函数值返回例如:w 值为5 9 2 3 , 则函数返回9 2 3 ; w 值为9 2 3 , 则函数返回2 3 .u n s i g n e d f u n ( u n s i g n e d w )i f ( w > = 1 0 0 0 0 ) re t u rn w % 1 0 0 0 0 ;i f ( w > = 1 0 0 0 ) re t u rn w % 1 0 0 0 ;i f ( w > = 1 0 0 ) re t u rn w % 1 0 0 ;re t u rn w % 1 0 ;)第八十四套1程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。 所有学生数据均以二进制方式输出到文件中函数f u n 的功能是重写形参f i l e n a m e 所指的文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变第 1 处 f p = f o p e n ( f i l e n a m e , " rb + ”)第 2 处 f s e e k ( f p , - l L * s i ze o f ( S T U ) , S E E K _ E N D ) ;第 3 处 f w ri t e ( & . n , s i ze o f ( S T U ) , 1 , f p ) ;2程序修改给定程序M O D H . C 中函数C re a t l i n k 的功能是创建带头结点的单向链表,并为各结点数据域赋0 到m -1的值请改正函数C r e a t lin k中指定部位的错误,使它能得出正确的结果/**f o u n d **/p = ( N O D E *) m a llo c (s iz e o f (N O D E ));/**f o u n d **/r e t u r n h;3 程序设计请编写函数f u n ,函数的功能是,统计一行字符串中单词的个数,作为函数值返回。 一行字符串在主函数中输入,规定所有单词有小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格in t f u n ( c ha r *s )(in t k= l;w hile (*s ){ if (*s = = ' ')k++; s ++; }r e t u r n k ;)第八十五套1 程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩所有学生数据均以二进制方式输出到文件中函数f u n 的功能是从形参f ile n a m e 所指的文件中读入学生书数据,并按照从小到大排序后,再用二进制方式把排序后的学生数据输出到f ile n a m e 所指的文件中,覆盖原来的文件内容第 1 处 f p = f o p e n ( f ile n a m e , " r b " );第 2 处 if ( s [ i ] . s n o > s [ j ] . s n o )第 3 处 f w r it e (s , s iz e o f (S T U ), N , f p );2 程序修改给定程序M 0D I 1. C中函数f u n 的功能是:在字符串的最前端加入n 个*号,形成新串,并且覆盖原串。 注意:字符串的长度最长允许为79./**f o u n d **/p = s ;/**f o u n d **/w hile (*p ++)3 程序设计请编写函数f u n ,函数的功能是:统计各年龄段的人数,N 个年龄能通过调用随机函数获得,并放在主函数的a g e数组中:要求函数把0 到9 岁的年龄段的人数放在d [ 0] z ho n g 把 10—19岁的年龄段的人数放在d [ l] 中,其余依此类推,把 100岁 (含 100岁)的年龄段的人数放在 d [ 10] 中结果在主函数中输出v o id f u n ( in t *a , in t *b )(in t i , j ;f o r ( i= 0; i< M ; i++); b [ i ] = 0;f o r ( i= 0; i< N ; i++){ j= a [ i ] /10;if ( j> 10) b [ M -l] ++;e ls e b [ j ] ++;))第八十六套1 程序填空给定程序中,函数f u n 的功能是将不代头结点的单向链2012年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(1全全,I1全全)))26表逆置。 即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2.请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果第 1 处 N O D E * f u n (N O D E *h)第 2 处 r = q - > n e x t ;第3处q = r ;2程序修改给定程序MO D I 1 . C中函数f u n的功能是:将s所指字符串中位于奇数位置的字符或AS C I I码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)/**f o u n d **/i f ( i % 2 || s [ i ]%2 = = 0 )/**f o u n d **/t [ j ]= ' \0 ' ;3程序设计请编写函数f u n ,函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中函数f u n中给出的语句仅供参考 i n c l u d e < s t d i o . h>v o i d f u n ( i n t (*s ) [1 0] , i n t *b , i n t *n , i n t m m , i n t n n )(i n t i , j , n p = 0;f o r ( i = 0; i < n n ; i ++)f o r ( j = 0; j < m m ; j ++)(b[n p ] = s [ j ] [ i ]; n p = i *m m +j +l ;}*n = n p ;)第八十七套1程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。 所有学生数据均以二进制方式输出到s t u d e n t . d at文件中函数f u n的功能是从指定文件中找出指定学号的学生数据,读入此学生数据,对该生的分数进行修改,使每门的分数加3分,修改后重写文件中该学生的数据,即用该学生背后的数据覆盖原数据,其他学生数据不变;若找不到,则什么都不做请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果第 1 处 w hi l e (!f e o f (f p ))第 2 处 i f (n . s n o = = s n o ) br e ak ;第 3 处 f s e e k (f p , -l L*s i ze o f (S T U ), S E E K C U R );2程序修改给定程序MO D I 1 . C中函数f u n 的功能是:利用插入排序法对字符串中的字符按从小到大的顺序进行排序,插入法的基本算法是:先对字符串中的头两个元素进行排序,然后把第三个字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中,……待排序的字符串已在主函数中赋予请改正函数f u n 中指定部位的错误,使它能得出真确结果。 /**f o u n d **/n = s t r l e n (aa);/**f o u n d **/c h = aa [i ];3 程序设计N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h 指向链表的头结点请编写函数f u n ,它的功能是:找出学生的最高分,由函数值返回d o u bl e f u n ( S T R E C *h )(d o u bl e m ax = h -> s ;S T R E C *p ;p = h-> n e x t ;w hi l e (p ){ i f (p -s > m ax )m ax = p -> s ;p = p -> n e s t ;)r e t u r n m ax ;)第八十八套1 程序填空给定程序中,函数f u n 的功能是调用随机函数产生的2 0个互不相同的整数放在形参a 所指数组中(此数组在主函数中已置0 ) 第 1 处 w hi l e (n < N )第 2 处 i f ( x = = a[ i ]) br e ak ;第 3 处 i f ( i = = n ) { a[n ] = x ; n ++; }2程序修改给定程序MO D H .C 中函数f u n 的功能是:先从键盘上输入一个3 行 3 列矩阵的各个元素的值,然后输出主对角线元素之和。 /* * f o u n d * * /s u m =O/* * f o u n d * * /s c a n f ( " /d ” , & a [ i ] [ j ] ) ;3 程序设计编写程序,实现矩阵( 3行 3 歹 U ) 的转置( 即行列互换)i n t f u n ( i n t a r r a y [ 3] [ 3] )(i n t i , j , a r r [ 3] [ 3] ;m e m c p y ( a r r , a r r a y , 9* s i z e o f ( i n t ) ) ;f o r ( i =0; i <3; i ++)f o r ( j =0; j <3; j ++)a r r a y [ i ] [ j ] =a r r [ j ] [ i ] ;第八十九套1 程序填空给定程序中,函数f u n 的功能是:求 s s 所知字符串数组中长度最长的字符串所在的行下标,作为函数值返回,并把其串长放在形参n 所指变量中Ss 所指字符串数组中共m个字符串,且串长》 N 第 1 处 i n t f u n ( c h a r ( * s s ) [ N ] , i n t * n )第 2 处 i f ( i ==0) * n =l e n ;第 3 处 * n =l e n ;2 程序修改2012年年年年 3 月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C语言上机题库语言上机题库语言上机题库语言上机题库(1全全I1全全)) ))27给定程序M OD I 1 . C中函数f u n 的功能是:根据形参m计算如下公式的值。 例如,若输入5 , 则应输出2. 283333/* * f o u n d * * /t +=l . 0/ i :/* * f o u n d * * /r e t u r n t ;3程序设计编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数i n t f u n ( c h a r * s t r , c h a r * s u b s t r )i n t e n t =0 ;c h a r * p =s t r , * q ;w h i l e ( * p ) {q =s t r s t r ( p ,s u b s t r ) ;i f ( q ==N UL L ) b r e a k ;p =q +s t r l e n ( s u b s t r ) ;c n t ++;)第九十套1程序填空给定程序中,函 数f u n的功能是:求出形参s s所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长S s所指字符串数组中有M个字符串,且串长C N请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 第 一 ■ 处 n =s t r l e n ( s s [ i ] ) ;第二处 s s [ i ] [ n +j ] = ' *';第三处 s s [ i ] [ n +j +l ] = ' \0 ';2程序修改给定程序M 0D I1. C中函数f u n的功能是:将p所指字符串中每个单词的最后一个字母改成大写 ( 这 里 的 “ 单词”是指由空格隔开的字符串) 请改正程序中错误之处,使它能得出正确结果/* * f o u n d * * /i f ( * p == ' ')/* * f o u n d * * /*( p -l ) =t o u p p e r ( * ( p -l ) ) ;3请编写函数f u n对长度为7个字符的字符串,除首、尾字符外,将其余5个字符AS CH码降序排列i n t f u n ( c h a r * s , i n t n u m )c h a r c hi n t i , jf o r ( i =l i <6;i ++)f o r ( j =i +l ;j <6;j ++)i f ( * ( s +i ) <( s +j ) )c h =* ( s +j ) ;* ( s +j ) =* ( s +i ) ;* ( s +i ) =c h ;}}}第九十一套1程序填空给定程序中,函数f u n的功能是:将形参s t d所指结构体数组中年龄最大者的数据作为函数值返回,并在m a i n函数中输出。 第一处 m a x =* s t d ;第二处 i f ( m a x . a g e v o i d f u n ( i n t t t [ M ] [ N ] , i n t p p [ N ] )(i n t i , j , m i n , k ;f o r ( i =0;i 第一处n = 0 ;第二处 w h il e ( t < = x )第三处t + + ;2程序修改给定程序M0 DI 1 . C中函数f u n 的功能是:先将s 所指字符串中的字符按逆序放到t 所指字符串中,然后把s 所指的字符串中的字符按正序连接到t 所指串的后面/ * * f ou n d * * /in t i , s i;/ * * f ou n d * * /t [ i]= s [ s l - i- l ];3 程序设计请编写函数f u n , 函数的功能是:将 a 、b中的两个两位整数合并形成一个新的整数放在c中合并的方式是:将 a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位依次放在变量c的千位和十位上v oid f u n ( in t a , in t b , in t * c )(* c = ( b / 1 0 )* 1 0 0 0 + ( a / 1 0 )* 1 0 0 + ( b % 1 0 )* 1 0 + ( a % 1 0 );}第九十四套1程序填空给定程序中,函数f u n 的功能是:从三个形参a 、b 、c中找出中间那个数,作为函数值返回。 第一处 t = a > b ? ( b > c ? b : ( a > c ? c : a )): ( ( a < c )? a : ( ( b > c )? c : b ));2程序修改给定程序M0 DI 1 . C中函数f u n 的功能是:首先将大写字母转换为对应的小写字母:若小写字母为a —u , 则将其转换为其后的第五个字母;若小写字母为v —z , 使其值减 2 1 转换后的小写字母作为函数值返回/ * * f ou n d * * /c = c + 3 2 ;/ * * f ou n d * * /c = c + 5 ;3 程序设计请编写函数f u n , 函数的功能是:计算并输出……例如,在主函数中从键盘给n 输入2 0 后,输出为s = 5 3 4 . 1 8 8 8 8 4 注意:要求n的值大于1 但不大于1 0 0 .d ou b l e f u n ( in t n )(in t i;d ou b l e f a c = l . 0 ;d ou b l e s u m = l . 0 ;f or ( i= 2 ; i< = n ; i+ + ){ f a c + = s q r t ( i);s u m + = f a c ;r e t u r n s u m ;第九十五章1程序填空给定程序中函数f u n 的功能是:调用f u n 函数建立班级通讯录。 通讯录中记录每位同学的编号、姓名和号码班级的人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为m y l if e 5 . d a t 的二进制文件中第 一 ■ 处 in t f u n ( S TYPE * s t d )第二处 F I LE * f p ; in t i;第三处 f w r it e ( & s t d { i}, s iz e of ( S TYPE ), 1 , f p );2程序修改给定程序MODH . C 中函数f u n 的功能是:先将在字符串s 中的字符按正顺序放到t串中,然后把s中的字符按逆顺序放到他串后面/ * * f ou n d * * /f or ( i= 0 ; i< s l ; i+ + )/ * * f ou n d * * /t [ 2 * s l ]= 0 ;3 程序设计请编写函数f u n , 函数的功能是:将两个两位数的正整数a 、b 合并形成一个整数放在c中合并的方式是:将 a的十位和个位数依次放在c 位的千位和十位上,b的十位和个位数依次放在c的百位和个位上v oid f u n ( in t a , in t b , l on g * c ){* c = ( a / 1 0 )* 1 0 0 0 + ( b / 1 0 )* 1 0 0 + ( a % 1 0 )* 1 0 + ( b % 1 0 );)第九十六套1程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。 函数f u n 的功能是:对形参b 所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据第一处 b - >sn o=1 0 0 0 4 ;第二处 strc py ( b - >n a m e , n Li Ji e w ) ;第三处f u n ( & t) ;2程序修改给定程序MODH. C中函数f u n 的功能是:应用递归算法求形参a的平方根求平方根的迭代公式如下:例如:a为 2时平方根值为1 . 4 1 4 2 1 4/ * * f ou n d * * /d ou b l e f u n ( d ou b l e a , d ou b l e x O)/ * * f ou n d * * /i f ( f a b s( x l - x 0 ) >0 . 0 0 0 0 1 )3程序设计学生的记录由学号和成绩组成,N 名学生的数据已在主函数中放入结构体数组s 中,请编写函数f u n , 它的功能是:把高于等于平均分数的学生数据放在b 所指的数组中,并把人数通过形参n 传回d ou b l e f u n ( S T R EC * a , S T R EC * b , i n t * n ){d ou b l e t=0 ;i n t i ; 2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))2 9* n =0 ;f or( i =0 ;i 第一处 c h =tol ow e r( * s) ;第二处 k [ n ] + =l ;第三处 i f ( m a x 并作为函数值返回第一处i =l ;第二处 w h i l e ( s)第三处 x =x + t* i ; i =i * 1 0 ;2程序修改给定程序M0 DI1 . C 中函数f u n 的功能是:输出M 行 N列的整数方阵,然后求两条对角线上元素之和,返回此和数/ * * f ou n d * * /i n t f u n ( i n t n , i n t x x [ ] [ M] )/ * * f ou n d * * /pri n tf ( " % d " , x x [ i ] [ j ] ) ;3 程序设计请编写函数f u n , 函数f u n 的功能是:将 a 、b中的两位正整数合并形成一个新的整数放在c中合并的方式为:将 a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的各位和百位上v oi d f u n ( i n t a , i n t b , l on g * c )(* c = ( a / 1 0 ) * 1 0 0 0 + ( b % 1 0 ) * 1 0 0 + ( a % 1 0 ) * 1 0 + ( b / 1 0 ) ;第九十九套1程序填空给定程序中函数f u n 的功能是:求出形参a a 所指字符串数组中最长的字符串长度,其余字符串左边用字符* 补齐,使其与最长字符串等长。 字符串数组中共有M 个字符串,且串长〈 N第一处k =i ;第二处 f or( j =l e n ; j >=0 ; j —)第三处 ss[ i ] [ j ]=, *';2程序修改给定程序MODH. C中函数f u n 的功能是:计算整数n的阶乘请改正程序中错误或在下划线处填上适当内容,删掉下划线,使它能计算出正确结果/ * * f o u n d * * /r e s u l t * = n 一;/ * * f o u n d * * /r e t u r n r e s u l t ;3 程序设计请编写函数f u n , 函数f u n 的功能是:从 s 所指的字符串删除给定的字符同一字母的大小写按不同字符处理i n t f u n ( c h a r s [ ] , c h a r c )(c h a r * p = s ;i n t i = 0 ;w h i l e ( * p ){i f ( * p != c ) s [ i + + ] = * p ;p + + ; }s [ i ] = 0 ;)第一百套1 程序填空给定程序通过定义并赋值的方式,利用结构体变量存储了一名学生的学号姓名和3门课的成绩。 函数f u n 的功能是将该学生的各科成绩都乘以一个系统a0第■—处 v o i d m o d i f y ( S T U * s s , f l o a t a )第二处 s s -> s c o r e [ i ] * = a ;第三处 m o d i f y ( & s t d , a ) ;2程序修改给定程序MODH. C中函数f u n 的功能是:求 K< 1 3 > , 所求阶乘的值作为函数值返回例如,若 K= 1 0 , 则应输出 3 6 2 8 8 0 0/ * * f o u n d * * /i f ( k > 0 )/ * * f o u n d * * /e l s e i f ( k = = 0 )3 程序设计程序定义了 N* N的二维数组,并在主函数中自动赋值请编写函数f u n ( i n t a [ ] [ N] , i n t n ) ,函数的功能是:使数组左下三角元素中的值乘以Hoi n t f u n ( i n t a [ ] [ N] , i n t n ){ i n t i , j ; 2 0 1 2 年年年年 3月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级月全国计算机等级考试二级C 语言上机题库语言上机题库语言上机题库语言上机题库(( (( 全全全全)) ))3 0 f o r ( i = O; i < N; i + + )f o r ( j = 0 ; j < = i ; j + + )a [ i ] [ j ] * = n ;。












