首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
admin
2009-02-19
34
问题
函数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://jikaoti.com/ti/bZC7FFFM
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
指纹考勤机通常用于在工作日的上班时间,采集员工指纹信息,以确定该员工是否正常上班。其基本功能要求有:a、能够采集指纹信息,并求取指纹特征,然后与事先预存在指纹特征库中的指纹特征比对。b、系统中需存储指纹图原始信息和指纹特征信息,这些指纹
便携式血氧仪采用无创伤的血氧检测方法,通过光电信号检测人体手指内动脉血的周期变化特征,从而计算出动脉血氧饱和度(其外形如图所示)。若便携式血氧仪以S3C2410芯片为核心,并外加其他功能电路来进行设计,其基本功能描述如下:a、利用动脉血液中血红蛋白和还
在Bootloader的stagel中,以下各步骤的顺序应为()。a.跳转到stage2的C程序入口点b.为加载stage2准备RAM空间c.拷贝stage2的执行代码到RAM空间中d.基本硬件初始化
关于ARM嵌入式处理器的工作状态,以下说法错误的是()。
三星公司基于ARM9内核的S3C2410嵌入式处理器芯片的电源管理模块共有【65】种工作模式。【66】模式下不使用PLL时钟(MPLL关闭不使用),由外部晶体或外部时钟直接提供给其它组件使用。
下图是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中CPU中的组成部分A是【41】;组成部分B是【42】。
在μC/OS一Ⅱ中,OSSched()函数是任务调度的前导函数,用于判断进行任务调度的条件是否满足。下列满足条件的变量值为()。
下面是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中的组成部分A是【41】接口;组成部分B是【42】接口。
所有嵌入式系统都是由硬件和软件两部分组成的,硬件部分的主体是【41】和存储器;它们通过【42】接口(设备)与外部世界联系。
IEEE的实时UNIX分委会认为实时操作系统应该具备若干特征,下面()不是实时操作系统必须具有的特征。
随机试题
简述睢景臣《[般涉调]哨遍》(高祖还乡)采用代言体形式的作用。
阅读欧阳修《五代史伶官传序》中的一段文字,回答问题:《书》曰:“满招损,谦得益。”忧劳可以兴国,逸豫可以亡身,自然之理也。故方其盛也,举天下之豪杰,莫能与之争;及其衰也,数十伶人困之,而身死国灭,为天下笑。夫祸患常积于忽微,而智勇多困于所溺。岂独
A、拟胆碱药B、缩瞳剂C、β受体阻滞剂D、前列腺素衍生物E、碳酸酐酶抑制剂应用于开角型青光眼降眼压治疗最新的药()
[背景资料]甲公司投资建设一幢地下一层、地上五层的框架结构商场工程,乙施工企业中标后,双方采用《建设工程施工合同》(示范文本)(GF—1999—0201)签订了合同。合同采用固定总价承包方式,合同工期为405天,并约定提前或逾期竣工的奖罚标准为每天5万元
保险人对被保险人的财产及其有关利益在发生保险责任范围内的灾害事故而遭受经济损失时给予补偿的保险是()。
按照企业会计准则规定,企业会计的确认、计量和报告应当以权责发生制为基础。()
端砚产于广东省,利用石眼花纹雕刻的砚台尤为名贵,有“一两端石一两金”之说。()
西方传教士在华兴办的第一所学校是1839年建立的______。
A、maketheparentsbeawareoftheimportanceofequalityinthefamily.B、makepeopleknowthatgirlsandboysshouldbetreate
A、Heaccusedthemofthetheft.B、Heraisedtherents.C、Herefusedtoprolongtheirlandlease.D、Heforcedthemtoabandonthe
最新回复
(
0
)