首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCH码降序排列。 例如,原来的字符串为:CEAedca,排序后输出为:CedcEAa。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCH码降序排列。 例如,原来的字符串为:CEAedca,排序后输出为:CedcEAa。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main
admin
2017-07-27
87
问题
请编写函数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://kaotiyun.com/show/37Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。
在数据处理中,其处理的最小单位是()。
以下程序的运行结果是()。#defineS(x)x*xmain(){intk=1;while(k<=4){printf("%d,",S(k));k++;}
设有如下关系表:则下列操作正确的是()。
在下列选项中,没有构成死循环的程序段是()。
以下叙述中不正确的是()。
字符串"\\"ABCDEF\"\\”的长度是()。
以下程序的输出结果是()。#include<stdlib.h>main(){char*s1,*s2,m;s1=s2=(char*)malloc(sizeof(char));*s1=15;*s2=2
下列关于队列的叙述中正确的是
随机试题
患者头晕乏力,过劳则甚,面色少华,证属
男性37岁,半小时前用电锯锯木板时被木头击伤前胸部,当即感胸痛、气促、心悸。查体:R35次/分,HR120次/分,BP80/50mmHg,双肺呼吸音清,心音弱,颈静脉扩张。应立即采取的治疗是
下列关于脊髓髓内肿瘤的叙述,正确的是()
鼻端生红色粉刺称"酒皶鼻",多因
孕激素的功能包括
相传,达.芬奇每4小时时睡15~20分钟,余下大把的时间从事创作,而且能保持充沛的精力,不少___________这种睡眠法的人都希望通过它来缩短睡眠的总体时间,但心理学家认为这没有什么科学依据。填入画横线部分最恰当的一项是()。
分销渠道
下列指令中,源操作数属于立即寻址方式的指令是( )。
每个学校有一名校长,且不同学校的校长可以是同一人,则实体学校和实体校长间的联系是()。
在考生文件夹下打开Excel.xlsx文件:将sheet1工作表的A1:F1单元格合并为一个单元格,文字水平居中对齐;计算总计行的内容和季度平均值列的内容,季度平均值单元格格式的数字分类设置为数值(小数位数为2),将工作表命名为“销售数量情况表”。
最新回复
(
0
)