首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCH码降序排列。 例如,原来的字符串为:CEAedca,排序后输出为:CedcEAa。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCH码降序排列。 例如,原来的字符串为:CEAedca,排序后输出为:CedcEAa。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main
admin
2020-07-28
66
问题
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCH码降序排列。
例如,原来的字符串为:CEAedca,排序后输出为:CedcEAa。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #include<ctype.h>
3 #include<string.h>
4 void fun(char *s,int num)
5 {
6
7 }
8 NONO()
9 {
10 /*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
11 char s[10];
12 FILE *rf,*wf ;
13 int i=0;
14 rf=fopen(’’in.dat’’,’’r’’);
15 wf=fopen(’’out.dat’’,’’w’’);
16 while(i<10) {
17 fgets(s,10,rf);
18 s[7]=0 ;
19 fun(s,7);
20 fprintf(wf,’’%s\n’’,s);
21 i++;
22 }
23 fclose(rf);
24 fclose(wf);
25 }
26 main()
27 {
28 char s[10];
29 printf(’’输入7个字符的字符串:’’);
30 gets(s);
31 fun(s,7);
32 printf(’’\n%s’’,s);
33 NONO();
34 }
选项
答案
1 char t; 2 int i,j; 3 for(i=1;i<num-2;i++) 4 //对n个元素进行循环选择 5 for(j=i+1;j<num-1;j++) 6 if(s[i]<s[j]) 7 //将str[i]设为最大值,和剩下的j~num-1进行比较 8 { t=s[i]; 9 s[i]=s[j]; 10 s[j]=t; 11 }
解析
选择排序法中的降序排序,首先从数组中挑选一个最大的元素,把它和第一个元素交换,接着从剩下的num-1个元素中再挑出一个最大的元素,把它和第二个元素交换,不断重复以上过程,直到比较完最后两个元素。
转载请注明原文地址:https://www.kaotiyun.com/show/AG3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main(){char*s1="abc",*s2="123";swap(s1,s2);printf("%s,%s\n
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为
以下叙述中正确的是
若有定义intx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++):(y++)中的条件表达式(x-y)等价的是
若在定义语句:inta,b,c,*p=&c;接着执行以下选项中的语句,则能正确执行的语句是
以下叙述中正确的是
下列叙述中正确的是
有以下程序main(){unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf("%d\n",d);}程序运行后的输出结果是
以下叙述中正确的是
随机试题
下列文学常识表述错误的是()
右主支气管的叙述正确的是()。
对于相同的横截面面积,同一梁采用( )截面,其强度最高。
按导致事故的直接原因将生产过程中的危险分为()等危险、有害因素。
以下网址的表示中,正确的是()。
现代教育、素质教育、社会主义新时期的教育最根本的特点是()。
工程管线敷设有其规范,当工程管线交叉敷设时,自地表面向下排列时要考虑管道内的介质及管线输送方式、埋深等问题,以确定各管道垂直间距。管线排列的顺序宜为()。
若将在[0,2]上展开成正弦级数,则该级数的和函数S(x)为_______
下列关于计算机技术指标的描述中,正确的是()。
RecentlyBroadpointCommunications,afledg-ling(刚起步的)mediacompany,startedhandingoutfreelong-distancetelephonecalls.In
最新回复
(
0
)