首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。例如,原来的字符串为″CEAedca″,排序后输出为″CedcEAa″。 注意:请勿改动主函数main和其他函数中的任何何内容,仅在函数fun的花括号中填入你编
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。例如,原来的字符串为″CEAedca″,排序后输出为″CedcEAa″。 注意:请勿改动主函数main和其他函数中的任何何内容,仅在函数fun的花括号中填入你编
admin
2019-04-14
17
问题
请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。例如,原来的字符串为″CEAedca″,排序后输出为″CedcEAa″。
注意:请勿改动主函数main和其他函数中的任何何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include <stdio.h>
#include <ctype.h>
#include <string.h>
void fun(char *s.int num)
{
}
main()
{
void NONO();
char s[10];
printf(″输入7个符的字符串:″);
gets(s);
fun(s.7);
printf(″\n%s″,s);
NONO();
}
void NONO()
/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
{
char s[10];
FILE *rf, *wf;
int i=0;
rf=fopen(″in.dat″,″r″);
wf=fopen(″out.dat″,″W″);
while(i<10)
{
fgets(s,10,rf);
s[7]=0;
fun(s,7);
fprintf(wf,″%s\n″,s);
j+ +;
}
fclose(rf);
fclose(wf);
}
选项
答案
void fun(char *s,int num) { char ch; int i,j; for(i=1;j<6;i+ +) for(j=i+1;j<6;j+ +) { if(*(s+i)<*(s+j)) { ch=*(s+j); *(s+j)=*(s+i); *(s+i)=ch; } } }
解析
本题考查:for循环语句;字符的交换;指针型变量;指针移动。
指针移动:指针经常用于指向数组和字符串,通过指针的移动实现对数组或字符串的遍历。数组和字符串都是用一段连续的地址来存放元素的。所以,指针的移动也就是对地址的加减。
本题要求对长度为7的字符串,除首、尾字符外,将其余5个字符按ASCⅡ码降序排列,因而要用双重循环进行排序。注意第1个循环的变量的初值i=1,第2个循环的变量的初值为j=i+1;这是因为题目要求除首、尾字符外,将其余5个字符按ASCⅡ码降序排列。
转载请注明原文地址:https://kaotiyun.com/show/WmRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是()。main(){inta=4,b=3,c=2,d=1;printf(“%d”,a>b?a:d>c?d:b);}
求任意一个数(用16位二进制码表示)的补码。 main() {unsignedinta; 【】; scanf("%O",&a); printf("%o\n",getbits(a)); } unsignedint
下列程序的运行结果为()#include<stdio.h>main(){structdate{intyear,month,day;)today;printf("%d\n",sizeof(str
有说明char.*c[]={"European","Asian","American","African"};则下列叙述中正确的是
数据结构分为逻辑结构与存储结构,线性链表属于【】。
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b,则不能把结点b连接到结点a之后的语句是【】。structnode{chardata;structnode*next;}a,b
符合结构化原则的三种基本控制结构是顺序结构、()和循环结构。
请补充main函数,该函数的功能是:从键盘输入只有两个整数参与运算的一个四则运算式,然后计算出它的值。注意数字全部为正整数。例如,输入308*28,结果为8624.000000。注意:部分源程序给出如下。请勿改动主函数main和其他
请补充函数fun(),该函数的功能是:把字符下标为非素数的字符从字符串sb中删除,把字符下标为素数的字符重新保存在字符串e口中。字符串sb从键盘输入,其长度作为参数传入函数fun()。例如,输入“abcdefghijkl”,输出“cdfhl”。
在16位编译系统上,若有定义“inta[]={10,20,30},*p=a;”,当执行“p**;”后,下列说法错误的是
随机试题
下述哪一个是烧伤浅Ⅱ°的临床表现?
锅炉压力容器在正式使用前,必须到当地()登记,经审查批准入户建档、取得使用证后方可使用。使用单位应建立锅炉压力容器的设备档案,保存设备的()等过程的技术资料。
依据国家《自然保护区条例》的规定,自然保护区除了分级以外,还应分区,下列哪个不属于分区内容()
根据下列材料,按要求完成教学设计任务。材料一:《普通高中历史课程标准(2017年版)》规定:通过了解新航路开辟所引发的全球性流动、人类认识世界的视野和能力的改变,以及对世界各区域文明的不同影响,理解新航路开辟是人类历史从分散走向整体过程
某地在农村深入贯彻落实“三个代表”重要思想过程中,当地领导干部本着找准“三农”问题切入点的原则和“搞不好村班子不走,搞不活农村经济不走,搞不掉落后村帽子不走”的目标,住村办公,人户走访,征求意见,提出整改措施,他们为群众跑贷款,帮助招商引资,提供信息、技术
在教育上主张培养“真人”、“至人”的是()。
求函数的导数:y=ef(x).f(ex).
异步传输ATM技术是一种【 】和复用技术。
A、 B、 C、 A
Throughouthistorythebasicunitofalmosteveryhumansocietyhasbeenthefamily.Membersofafamilylivetogetherunderthe
最新回复
(
0
)