首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN88.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharA(),该函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中。最后调用函数Write
函数ReadDat()的功能是实现从文件IN88.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharA(),该函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中。最后调用函数Write
admin
2010-01-11
104
问题
函数ReadDat()的功能是实现从文件IN88.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharA(),该函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中。最后调用函数WriteDat()把结果xx输出到文件OUT88.DAT中。
例如,原文:dAe,BfC
CCbbAA
结果:,ABCdef
AACCbb
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
注意:部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
试题程序:
#include<stdio.h>
#include<string.h>
#include<conio.h>
char xx[50][80};
int maxline=0;
int ReadDat(void);
void WriteDat(void);
void SortCharA()
{
}
void main()
{
clrscr();
if (ReadDat())
{
printf("数据文件IN88.DAT不能打开!\n\007");
return;
}
SortCharA();
WriteDat();
}
int ReadDat(void)
{
FILE *fp;
int i=0;
char *p;
if((fp=fopen("IN88.DAT","r"))==NULL)
return 1;
while(fgets(xx
,80,fp)!=NULL)
{
p=strchr(xx
,’\n’);
if (p) *p=0;
i++;
}
maxline=i;
fclose(fp);
return 0;
}
void WriteDat()
{
FILE *fp;
int i;
clrscr();
fp=fopen("OUT88.DAT","w");
for(i=0;i<maxline;i++)
{
printf("%s\n",xx
);
fprintf(fp,"%s\n",xx
);
}
fclose(fp);
}
选项
答案
void SortCharA() { int i,j,k,strl; char ch; for (i=0;i<maxline;i++) { strl=strlen(xx[i]); /*求该行的字符个数*/ for(j=0;j<strl-1;j++) /*对字符按从小到大的顺序进行排序*/ for(k=j+1;k<str1;k++) if (xx[i][j]>XX[i][K]) { ch=xx[i][j]; xx[i][j]=xx[i][k]; xx[i][k]=ch; } } }
解析
本题考查的知识点如下:
(1) 循环结构的嵌套。
(2) 字符的大小比较.
(3) 字符排序。
本题以行为单位对文章进行处理,首先要确定每一行中字符的个数。这个操作可使用字符串处理函数strlen(char *str)来完成。对字符从小到大排序依据的是字符的ASCⅡ码,在C语言中,字符量可参与任何整型运算,所以可以直接使用比较运算符进行比较。排序使用前面介绍的“选择拌序法”。最后使用循环结构对文章中的每一行都进行以上的操作。
转载请注明原文地址:https://kaotiyun.com/show/3b5Z777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
在网络管理服务中,定义管理对象结构的是()。
从网络设计者角度看,Internet是一种()。
在下图所示的UNIX树形文件目录结构中,方框代表日录,椭圆代表文件,根目录root常驻内存,其他文件和目录均在磁盘中存放。其中,用户Li和Sun是同组用户,他们的目录分别为Li和Sun,其目录及其他的子目录和文件的属性如下表所示。下列操作中,哪
操作系统中,文件的逻辑块号到磁盘块号的转换是由下列哪一项决定的?()
在相互通信的进程问设置一个公共内存区,一组进程向该公共内存中写,另一组进程从该公共内存中读,通过这种方式实现两组进程问信息交换的方式称为()。
当一个低速的I/O设备连接到高速的计算机系统中时,下列哪种技术可以提高低速设备的使用效率?()
采用多道程序设计技术可以()。
当路由器检测到其相邻主机发送的IP数据报经非优路径传输时,它通知该主机使用的ICMP报文为()。
设系统中有3种类型的资源(A,B,C)和5个进程(P1,P2,P3,P4,P5),A资源的数量是17,B资源的数量是6,C资源的数量为19。在阳时刻系统的状态如下表:系统采用银行家算法实施死锁避免策略,若当前系统剩余资源(A,B,C)分别为(2
关于网管模型的描述中,错误的是()。
随机试题
双胍类降糖药的作用机制是非磺尿类降糖药的作用机制是
A.二尖瓣脱垂综合征B.三尖瓣关闭不全C.左心室功能衰竭D.肺动脉高压E.三尖瓣狭窄心尖部收缩期喀喇音见于
一般情况下X线片上不显示,在病理状态下才能见到的影像是
(2009年)七段显示器的各段符号如图8-49所示,那么,字母“E”的共阴极七段显示器的显示码abcdefg詹应该是()。
根据《水利工程设计概(估)算编制规定》,直接工程费由()组成。
(2009年考试真题)A公司为2004年在上海交易所上市的上市公司,其公司章程中明确规定:公司可对外提供担保,金额在100万元以上1000万元以下的担保,应当经公司董事会决议批准,甲为A公司的董事长,未持有A公司股票。2006年12月,A公司的股价跌人低谷
第一次来华的英国人杰克,在中国境内无住所,2019年度在中国居住的时间为1月1日~6月30日,该年度杰克应计征个人所得税的项目包括()。
发行人申请公开发行股票、可转换为股票的公司债券,依法采取承销方式的,或者公开发行法律、行政法规规定实行保荐制度的其他证券的,应当聘请具有保荐资格的机构担任保荐人。()
Wewere________bythenewsofhissuccess.
StringBuffer类提供【】字符串对象的表示。
最新回复
(
0
)