首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符数组
下列给定程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符数组
admin
2017-02-24
56
问题
下列给定程序中,函数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!=i)
{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]="baawrskj ghzlicda",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://www.kaotiyun.com/show/b0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
以下程序的输出结果是main(){intc=35;printf("%d\n",c&c);}
以下合法的字符型常量是
有如下程序main(){intn=9;while(n>6){n--;printf("%d",n);}}该程序的输出结果是
下列选项可以正确表示字符型常量的是
下列有关数据库的描述,正确的是
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
下面程序的功能是:计算110之间的奇数之和与偶数之和,请填空。#includemain(){inta,b,c,I;a=c=0;for(I=0;I
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
随机试题
中国古代哲学家陆九渊主张“宇宙便是吾心,吾心即是宇宙”。这一观点是()
亚急性感染性心内膜炎病变的好发部位为
吲哚的化学结构是()。
关于土地抵押,下列说法中错误的是()。
下列表述中,不正确的是()。
目前各家银行规定,只有()的存单才可用于在本行作质押贷款。
()可以成为评价实际成本的依据,也可以用来对存货和销货成本计价。
()是社会主义道德区别和优越于其他社会形态道德的显著标志。
Theterm"disruptivetechnology"ispopular,butiswidelymisused.Itrefersnotsimplytoaclevernewtechnology,huttoone
Manypeoplebelievetheglarefromsnowcausessnowblindness.Yet,darkglassesornot,theyfindthemselves【C1】______headaches
最新回复
(
0
)