首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
admin
2009-02-19
63
问题
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT35.DAT中。
例如,原文:dAe,BfC
CCbbAA
结果:fedCBA,
bbCCAA
原始数据文件存放的格式是:每行的宽度均小于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 SortCharD ( )
{
void main ( )
{
clrscr ( );
if (ReadDat())
{
print f ("数据文件 IN35.DAT 不能打开!\n\007");
return;
}
SortCharD ( );
WriteDat ( );
}
int ReadDat (void)
{
FILE *fp;
int i=0;
char *p;
if ( (fD=fopen("IN35.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 ("OUT35.DAT", "w");
for ( i=0; i<maxline; i++)
{
print f ("%s\n" ,xx
);
fprintf(fp,"%s\n",xx
);
}
fclose (fp);
}
选项
答案
void SortCharD() { int i,j,k,str1; Char ch; for (i=0;i<maxline;i++) { str1=strlen(xx[i]); /*求各行的长度*/ for(j=0;j<str1-1;j++) /*对字符按从大到小的顺序进行排序*/ for(k=j+1;k<str1;k++) if (xx[i][j]<xx[i][k]) { ch=xx[i][j]; xx[i][i]=xx[i][k]; xx[i][k]=ch; } } }
解析
本题考查的知识点如下:
(1)循环结构的嵌套。
(2)字符的大小比较。
(3)字符排序。
本题以行为单位对文章进行处理,首先要确定每一行中字符的个数。这个操作可使用字符串处理函数strlen(char*s炷)来完成。对字符从大到小排序依据的是字符的ASCII码,在C语言中,字符量可参与任何整型运算,所以可以直接使用比较运算符进行比较。排序使用前面介绍的“选择排序法”。最后使用循环结构对文章中的每一行都进行以上的操作。
转载请注明原文地址:https://www.kaotiyun.com/show/nsSZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
下面是关于目前流行的PC机中PCI总线的叙述,其中正确的是( )。
多媒体技术的关键在于解决动态图像和声音的存储与传输问题,若不经压缩,以 VGA 640×480点阵存储一幅256色的彩色图像大约需( )M字节存储空间。
嵌入式应用程序经过交叉工具链生成映像文件之后,需要下载到【77】进行调试。调试完毕后映像文件必须由专用工具烧写到ROM中去,这种烧写工具俗称【78】。
家庭服务网关是智能家庭中的关键设备,是家庭内部智能设备与外部网络(如因特网)连接的桥梁。现需要设计的家庭服务网关基本功能具体描述如下:a、家庭服务网关具有一个以太网接口(对外连接),一个WiFi通信接口(对内连接),一个RS一485总线接口(对内
小端模式下如果从0x60000010开始到0x60000017存放的一个双字为0x123456789ABCDEF0,且R1=0x60000010,则加载指令LDRBR0,[R1]使R0=【53】、LDRHR2,[R1,#2]使R2=【54】。
字符在嵌入式系统内部是使用二进制编码表示的,存储一个ASCⅡ字符需要使用【43】个二进位,存储一个常用汉字需要使用【44】个二进位(采用GB2312编码标准)。
以下属于按指令集结构划分嵌入式处理器的分类是()。
嵌入式系统中的CPU具有一些与通用计算机所使用的CPU不同的特点,下面不是其特点的是()。
Linux内核由若干个子系统组成,一般来说下面哪一个不是Linux内核的子系统()。
随机试题
A.庆大霉素+克林霉素B.异烟肼+利福平C.氟胞嘧啶+两性霉素D.磺胺嘧啶+甲氧苄啶E.替卡西林+克拉维酸钾腹腔脓肿宜选用
Evenifyouareagoodhigh-jumper,youcanjumponlyaboutsevenfeetofftheground.Youcannotjumpanyhigherbecausetheea
肾阳不足、寒邪内侵腹痛的特点是
密闭—通风排毒系统一般由密闭罩、通风管、()和通风机构成。
进行设备更新决策时,采用固定资产平均年成本法作为标准的原因包括()。
某单位招录了10名新员工,按其应聘成绩排名1到10,并用10个连续的四位自然数依次作为他们的工号。凑巧的是每个人的工号都能被他们的成绩排名整除,问排名第三的员工工号所有数字之和可能是多少?()
在上次考试中,老师出了一道非常古怪的难题,导致86%的考生不及格。这次考试之前,王见明预测说:“根据上次考试情况,这次考试不一定会出那种难题了。”胡思明说:“这就是说这次考试肯定不出那种难题了,太好了!”王见明说:“我不是那个意思。”下面哪句话与王见明说的
Salesweregoodbutdistributionproblemsledtoaslightdropinprofits.Thecompanyhadproblemswith______.
A、Heneededalargerbuilding.B、Hewantedanenvironmental-friendlyplaceforbusiness.C、Hewantedtolivedowntown.D、Heneed
A、Bossandemployee.B、Teacherandstudent.C、Customerandshopassistant.D、Touristandtravelagent.C推断题。女士的问话HowcanIhelp
最新回复
(
0
)