首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:读入一个字符串(长度<20),将该字符串中的所有字符按ASCII码值升序排序后输出。例如,若输入"edcba",
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:读入一个字符串(长度<20),将该字符串中的所有字符按ASCII码值升序排序后输出。例如,若输入"edcba",
admin
2018-08-11
63
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:读入一个字符串(长度<20),将该字符串中的所有字符按ASCII码值升序排序后输出。例如,若输入"edcba",则应输出"abcde"。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<string.h>
#include<stdio.h>
void fun(char t[])
{
char c;
int i,j;
/*********found*********/
for(i=strlen(t);i;i--)
for(j=0;j<i,j++)
/*********found*********/
if(t[j]<t[j+1])
{
c=t[j];
t[j]=t[j+1];
t[j+1]=c;
}
}
main()
{
char s[81];
printf("\nPlease enter a character string:");
gets(s);
printf("\n\nBefore sorting:\n%s",s);
fun(s);
printf("\nAfter sorting decendingly:\n%s",s);
}
选项
答案
(1)for(i=strlen(t)-1;i;i--)或 for(i=strlen(t)-1;i>0;i--) (2)jf(t[j]>t[j+1])
解析
(1)本题是利用选择法对数组元素进行比较排序。所谓选择法,是依次用当前取得的元素和其后面的元素进行比较,在第一个元素和其后面的元素顺次比较时,可以借助中间变量来对两个数进行交换,要保证第一个元素始终存放数组中的最大数,以后依次挑选出次大数,这样最终的数组就是有序的。strlen函数所求得的字符串长度,数组最大下标表示为字符串长度减1,所以要减1。
(2)这里是一个分析逻辑错误,题中要求按升序排序,所以应改为if(t[j]>t[j+1])。
转载请注明原文地址:https://kaotiyun.com/show/xjxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在C语言中,函数返回值的类型最终取决于
下列程序的输出结果是()。#include<stdio.h>voidmain(){inta=0,b=1,C=2;if(++a>0||++b>0)++c;printf("%d,%d,%d",a,b,C);}
有以下程序:main(){chark;inti;for(i=1;i<3;i++){scanf("%c",&k);switch(k){
有如下程序main(){floatx=2.0,y;if(x10.0)y=1.0/x;elsey=1.0;printf("%f\n",y);}该程序的输出结果是
在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是【】函数。
循环控制语句“while(!scanf("%d",&i))getchar();”执行的情况是()
下列程序的输出结果是()。#includevoidfun(int*a,int*b){int*k;k=a;a=b;b=k;}main(){inta=1,b=2,*x:&a
以下程序的输出结果是【】。floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf("%3.0f\n",fun((int)fun
以下程序的输出结果是_______。main(){inti;for(i=1;i<6;i++){if(i%2)(printf("#");continue;}printf("*");
有下列程序:#include"stdio.h"main(){intx=0;inty=0;while(x<7&&++y){y--;x++;}pri
随机试题
男,46岁。左膝部疼痛4个月,出现髋部疼痛10天。无外伤史,每天饮白酒约6两。体格检查:双膝前后抽屉及内外翻试验(-),左“4”字试验(+)。左下肢较右侧短2.5cm,双膝X线检查未见明显异常。该患者最可能的诊断是
ACD保养液对红细胞的保存时间为
含有枸橼酸和碳酸氢钠的颗粒剂,称为
下列可进入血脑屏障的是()
我国商业银行办理收付类业务时,不得向委托方以外的其他单位或个人收费。()
对税务机关作出的逾期不缴纳罚款加处罚款的决定不服的,可申请行政复议,以下符合行政复议管辖规定的有()。
在现实生活中,由于立场和观点不同,对人活着的意义理解不同,人们就会有各种不同的人生观。人生观是人们对()。
首次将封建成文法典总则篇置于律首的是()。
•ReadthearticlebelowaboutHikikomori.•Choosethebestsentencetofillineachofthegaps.•Foreachgap8-12,markone
A、Bettermedicalequipment.B、Morehealthcare.C、Bettereducation.D、Morejobchances.D
最新回复
(
0
)