国家二级C语言机试(程序填空题)模拟试卷12(题后含答案及解析) |
您所在的位置:网站首页 › 供应室考试试题及答案填空题 › 国家二级C语言机试(程序填空题)模拟试卷12(题后含答案及解析) |
国家二级 C 语言机试 (程序填空题) 模拟试卷 12
( 题后含答案及解析 ) 题型有: 1.
1 .
给定程序中,函数 fun 的功能是:把形参 S 所指字符串中下标为奇数的 字符右移到下一个奇数位置, 最右边被移出字符串的字符绕回放到第一个奇数位 置,下标为偶数的字符不动 ( 注:字符串的长度大于等于 2) 。例如,形参 S 所指 的字符串为: abedefgh ,执行结果为: ahcbedgf 。
请在程序的下划线处填入 正确的内容并把下划线删除, 使程序得出正确的结果。
注意: 源程序存放在 考生文件夹下的 BLANK1 . C 中。
不得增行或删行,也不得更改程序的结 构 !#include
;stdio . h;void fun(char *s){
int i , n , k ;
char c ;
n=0 ,
for(i=0 ,
s[i]!= ‘ \ 0 ’ ;
i++)
n++ ;/ **********found********** /
if(n % 2=--O)k=n-___1___ ;
else k=n-2 ; / **********found********** /
c=___2___ ;
for(i=k-2 ; i;=1 ; i=i-2)s[i+2]=s[i] ; / **********found********** /
s[1]=___3___ ; }main(
){
char s[80]= “ abcdefgh ” ;
printf( “ \ nThe
original
stringis : % s \ n ” , s) ;
fun(s) ;
printf( “ \ nThe result is : % s \ n ” , s) ; }
正确答案: (1)1
(2)s[k]
(3)c 解析: 函数 fun 的功能是移动下标为奇数位置的字符。
第一空: “ for(i=0 ; s[i]!= ‘ \ 0 ’ ; i++)
n++ ; ” n 记录了数组 s 的长度, “ if(n % 2==0) ”如果长度 n 是 偶数,那么最右边被移出的字符的下标是在 n-1 ,如果 n 是奇数,那么最右边被 移出的字符的下标是 n-2 ,因此第一空处应为“ 1 ” 。
第二空:题目要求最右 边被移出字符串的字符绕回放到第一个奇数位置,因此最右边被移出的字符是 s[k] , 在 s[k] 被替换之前必须先把 s[k] 保存在其他变量中, 故第二空处应为 “ s[k] ” , 将 s[k] 保存在 c 中。
第三空:此处是把最右边被移出字符串的字符绕回放到 第一个奇数位置,最右边被移出字符保存在 c ,第一奇数位置是 s[1] ,故第三处 应为“ c ” 。
2 .
给定程序中,函数 fun 的功能是:找出形参 s 所指字符串中出现频率最 高的字母(不区分大小写) ,并统计出其出现的次数。
例如,形参 s 所指的 字符串为: abcAbsmaxless ,程序执行后的输出结果为:
letter ’ a ’ : 3times
letter ’ s ’ : 3times
请在程序的下画线处填入正确的内容并把下画线删除,使程 序得出正确的结果。
注意:部分源程序在文件 BLANK1 . C 中。
不得 增行或删行,也不得更改程序的结构!
试题程序: #include
<
stdio . h > #include
<
string . h > #include
<
ctype . h > void fun (char*s) { int k[26] = {0},n,i,max =0 ;
char ch ;
while ( * s)
{ if ( isalpha ( * s)) {/*********found*********/ ch = tolower ( 【 1 】
) ;
n =ch 一
‘ a ’ ; /*********found*********/k[n]+= 【 2 】
;
}
s ++ ; /*********found*********/
if(max <
k[n]) max= 【 3 】
;
printf ( “ \nAfter count :\n ” ) ;
for (i=0 ;
i
<
26 ; i ++)
if (k[i] ==max)printf ( “ \nletter \ ’ % c\ ’ : % dtimes\n ” , i + ‘ a ’ ,k[i] ) ;
}main (
){ char s[81] ;
printf ( “ \nEnter a |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |