首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:将形参S所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符
下列给定程序中,函数fun的功能是:将形参S所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符
admin
2018-03-28
90
问题
下列给定程序中,函数fun的功能是:将形参S所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。
例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符数组中的字符串应为“aachjlsw”。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(char* s,char *p)
{ int i , j , n , x , t;
n=0;
for(i=0;s
!=’\0’;i++)n++;
for(i=1;i<n一2;i=i+2){
/*********found*********/
【1】
;
/*********found*********/
for(j=
【2】
+2;j<n;j=j+2)
if(s[t]>s[j])t=j;
if(t!=1)
{x=s
;s
=s[t];s[t]=x;}
}
for(i=1,j=0;i<n;i=i+2,j++)
P[j]=s
;
/*********found*********/
p[j]=
【3】
;
}
main()
{ char s[80]="baawrskjgh
zlicda",p[50];
printf("\nThe original
string is:%s\n",s);
fun(s,p);
printf("\nThe result is:%s\n",p);
}
选项
答案
(1)t=i (2)i或t (3)’\0’或0
解析
本题中第1个for循环的作用是得到字符串的长度,第2个for循环的作用是对下标为奇数的字符按ASCII:码大小排序,最后将排好序的字符取出。
填空1:取出字符串中下标为奇数的字符,所以将下标i赋值给中间变量t。
填空2:此处for循环语句的作用是实现对下标为奇数的元素进行排序操作,所以循环变量初值应填入i或t;。
填空3:将下标为奇数的字符取出后,存入p所指的数组中,最后不要忘记在数组最后加入字符串结束标识‘\0’。
转载请注明原文地址:https://kaotiyun.com/show/vDxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序段#includemain(){while(getchar()!=‘\n’);}以下叙述中正确的是
下列程序的输出结果是()。point(char*pt);main(){charb[4]={’a’,’c’,’s’,’f’},*pt=b;pt=point(pt);printf(’%c\n",*pt);}point(ch
以下程序的输出结果是()。#includeintm=13;intfun(intx,inty){intm=2;return(x*y-m);}main(){
在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块,其中______的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
以下程序的输出结果是() main() {staticchara[10]={"Chinese"}; printf("%d",strlen(a)); }
当执行以下语句后,函数strlen(str)返回的值是() staticcharstr[10]={”Change"};
若有以下定义,则正确的swish语句是______。floatx;inta,b;
以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。voidreverse(inta[],intn){inti,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-
有以下程序#includemain(){charp[]={′a′,′b′,′c′},q[10]={′a′,′b′,′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是
随机试题
所谓十六进制数,就是以10为基数的计数体制。()
交流接触器的银或银合金触点在分断时电弧产生黑色的氧化膜电阻,会造成触点接触不良,因此必须锉掉。()
门诊体格检查可能发现下列哪种辅助检查能更好地评价甲亢
吸入粉雾剂每揿主药含量应为标示量的
治理通货膨胀可以采取的货币政策是()。
下列说法中,正确的有()。
对我来说,皮兰实在太远;我在“远东”,它藏在地球西边亚得里亚海最上端那个海湾,好像掖在欧洲的胳肢窝里。如果驱车从维也纳向南穿过山重水复的阿尔卑斯山,越过边境,路经斯洛文尼亚那个出名的小巧的首都卢布尔雅那,往西不停地开下去,再沿着亚得里亚海的海边弯弯曲曲前行
我们将坚持以人为本,从最广大人民的根本利益出发,不断满足人民群众日益增长的物质文化需求,努力促进人的全面发展。我们将坚持以经济建设为中心,把发展作为第一要务,推动经济建设、政治建设、文化建设与社会和谐建设全面发展。我们将坚持社会主义市场经济的改革方向,进一
Lookatthechartbelow.Itshowsarestaurant’sincome,totalexpenditureandadvertisingcostsduringaneight-monthperiod.W
Statinsareaclassofdrugsthatworktodecreasethelevelofcholesterolintheblood.Theyareabletoperformthisfunction
最新回复
(
0
)