首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符数组
下列给定程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参P所指字符数组中,形成一个新串。 例如,形参s所指的字符为“baawrskjghzlicda”,执行后P所指字符数组
admin
2017-02-24
23
问题
下列给定程序中,函数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://kaotiyun.com/show/b0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
结构化分析方法是面向()的自顶向下、逐步求精进行需求分析的方法。
有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("s=%f\n\n",s);请填空,使下面程序段的功能与之完全相同S=1.0;k=1;while([8]
请选出正确的程序段
当运行以下程序时,从键盘输入AhaMA(空格)Aha<CR>,则下面程序的运行结果是#include<stdio.h>main(){chars[80],c=’a’;inti=0;scanf("%s",s);
有以下程序#include<stdio.h>main(){intc;while((c=getchar())!=’\n’){switch(c-’2’){case0:case1:pu
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
下列函数的运行结果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b
若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是
有以下程序intadd(inta,intb){return(a+b);}main(){intk,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是
随机试题
自体瓣膜感染性心内膜炎的主要致病菌是
工程施工监理大纲要求是指导投标人编制投标文件的监理大纲和报价的依据,其一般包括()等内容。
属于砌空心墙的技术要求有( )。
下列情形中,侵犯了公民宪法权利的是()。
填入划横线部分最恰当的一组是维护网络在线教育市场的正常秩序,_______。首先需要加强监管。网络在线教育是一个新生事物,是“互联网+教育”的新兴产业,怎么管、谁来管、管什么等一系列问题,尚待厘清。_______是在立法等制度设计层面划定相关准入
甲状腺内孤立的、无触痛性、不规则的硬结节最可能的是
古罗马拱顶建筑的杰出代表是_______。
设矩阵A=的特征方程有一个二重根,求a的值,并讨论A是否可相似对角化.
Everygrouphasaculture,howeveruncivilizeditmayseemtous.Totheprofessionalanthropologist,thereisnointrinsicsupe
WhoistryingtotoppletheAssadgovernment?
最新回复
(
0
)