首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:把形参S所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。例如,形参S所指的字符串为:abedefgh,执行结果为:ahcb
给定程序中,函数fun的功能是:把形参S所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。例如,形参S所指的字符串为:abedefgh,执行结果为:ahcb
admin
2019-03-06
40
问题
给定程序中,函数fun的功能是:把形参S所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。例如,形参S所指的字符串为:abedefgh,执行结果为:ahcbedgf。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
void fun(char *s)
{ int i,n,k; char c;
n=0,
for(i=0, s
!=’\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
;
/**********found**********/
s[1]=___3___;
}
main()
{ char s[80]="abcdefgh";
printf("\nThe original string
is:%s\n",s);
fun(s);
printf("\nThe result is:%s\n",s);
}
选项
答案
(1)1 (2)s[k] (3)c
解析
函数fun的功能是移动下标为奇数位置的字符。
第一空:“for(i=0;s
!=’\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”。
转载请注明原文地址:https://kaotiyun.com/show/vIRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的运行结果为【】。main(){intx,y,z;X=12;y=012;z=0l2;printf("%d,%d,%d\n",x,y,z);}
若有如下程序:intsub(){staticintn=1;intx=1;x*=n;n++;returnx;}main(){intn,t=1;for(n=1;n<6;n++)
C语言中while和do-while循环的主要区别是______。
设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为()。
待排序的关键码序列为(33,18,9,25,67,82,53,95,12,70),要按关键码值递增的顺序排序,采取以第一个关键码为基准元素的快速排序法,第一趟排序后关键码33被放到第()个位置。
下列程序的输出结果是__________。main(){inta=2,b=4,c=6;intp1=&a,*p2=&b,*p;*(p=&c)=*p1*(*p2);printf("%d
数据库的故障恢复一般是由()
以下函数的功能是输出链表结点中的数据,形参指针h已知向如下链表请填空。structslist{chardata;structslist*next;};voidfun(structslist*h){structslis*P;
若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是()。
以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。FILE*myf;longf1;myf=【】("test.t""rb");
随机试题
这个标志是何含义?
气焊时,如果焊丝过粗,会()。
27岁经产妇,妊娠39周,双胎妊娠。第一儿枕先露自然分娩,第二儿间隔8分钟臀助产娩出,历经10分钟娩出胎盘,随后阴道流血量达600ml,最可能的诊断是
益母草除能活血祛瘀、清热解毒外,又能
我国在科学合理开发利用地表水、地下水的同时,开发利用海水、再生水、()、雨水等非常规水源,增加可供水量,缓解水资源瓶颈制约。
当基坑或沟槽宽度小于6米,且降水深度不大于5米,可用()线状井点,布置在地下水流的()一侧,两端延伸长一般以不小于坑(槽)宽度为宜。
Afterthestormnothing______ofthehouse.Itreally______usmuchtothinkabout.
在Excel2003中,选中某单元格,单击“插入”菜单中的“分页符”按钮,可同时插入水平、垂直两个分页符。
用对象来表示“一只白色的足球被踢进球门”,那么“白色”“足球”“踢”“进球门”分别对应的是()。
"CBSNewsRevampsWebSite,AddingCriticalBlogandVideos"AspartofanambitiousattempttoreviveCBSNews.comwithabr
最新回复
(
0
)