首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
admin
2009-02-19
53
问题
函数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全国计算机三级
相关试题推荐
若定义DATA DW’A’,则DATA和DATA+1两个相邻的内存单元中存放的数据是______。
主存储器采用( )方式。
关于“新一代计算机”或“未来型计算机”的特点有许多叙述,例如,Ⅰ.新一代的计算机系统主要着眼于机器的智能化Ⅱ.新一代的计算机系统速度极快,容量无限制,体积很小Ⅲ.它具有较自然的人机通信能力Ⅳ.它不但能听、能说,而且能思考
局域网是计算机网络中最流行的一种形式。下面有关局域网的叙述中错误的是()。
嵌入式系统的存储器以半导体存储器为主。随着技术的不断发展,新型存储器不断出现,主要包括FRAM和MRAM,分别称为__________【59】存储器和__________【60】存储器。
下面关于μC/OS—II任务管理的叙述中,错误的是()。
CAN总线的数据帧由7个不同的域组成,按照传输顺序,它们是:帧起始、仲裁域、控制域、【65】域、【66】域、应答域、帧结尾。
在开发低端、中端、高端等类型的嵌入式系统时,一般都需要选择和利用合适的开发平台来进行。下面有关嵌入式系统开发平台的叙述中,不正确的是()。
数据库管理系统、图形用户界面、互联网浏览器、媒体播放器等软件,如果运行在嵌入式系统上,往往具有内部结构精简,【69】轻量化,占用存储资源【70】的特点。
局域网指较小地域范围内的计算机网络,最流行的局域网是以太网。以太网采用的通信协议是【47】,连接在以太网中的每台计算机必须至少有一个全球唯一的【48】地址。
随机试题
阳明经头痛的部位是
A.硫化氢试验阳性B.鸟氨酸脱羧酶阳性C.枸橼酸盐利用阳性D.氧化酶阳性E.苯丙氨酸脱氨酶阳性变形杆菌为
X债券的市场价格为98元,面值为100元,期限为10年;Y债券市场价格为90元,面值为100元,期限为2年,以下说法正确的是()。
股权类产品的衍生工具不包括()。
在银行风险管理中,银行()的主要职责是负责执行风险管理政策,制定风险管理的程序和操作规程.及时了解风险水平及其管理状况。
按题材分类,下列不属于中国画的是()。
中国古代建筑曲线流畅,气韵生动,其中蕴含着极丰富的文化内涵。像屋檐、屏风、拱桥、华表等建筑带来韵律的建筑线条,使人体会到一种自然和谐的动态美感。庙宇殿堂的形状、比例,体现一种宁静安详的总体感觉。中国古代的一些著名园林,如颐和园、拙政园、留园等等,充满诗意禅
BrandycouldnotfigureouthowSamgainedunauthorizedaccesstohersystem,sincehehaslittlecomputerexperience.Whichof
有如下嵌套的if语句if(a
有以下程序 #include<stdio.h> #include<string.h> main() {chara[]="TEXT",*b="++",c[3]="1"; printf("%d,%d,",strlen(a),sizeof(
最新回复
(
0
)