首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
admin
2009-02-24
65
问题
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT35.DAT中。
例如,原文:dAe,BfC
CCbbAA
结果:fedCBA,
bbCCAA
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
注意;部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数WrteDat()的内容。
试题程序:
#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())
{
printf("数据文件 IN35.DAT不能打开!\n\007");
return;
}
SortChar D();
WriteDat();
}
int ReadDat(void)
{
FILE *fp;
int i=0;
Char*p;
if((fp: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++)
{
printf("%s\",xx
);
fprintf(fp,"%s\n",xx
);
}
fclose(fp);
}
选项
答案
void SortCharD() { int i, j, k, strl; char ch; for (i=0;i { strl=strlen (xx [i] ); /*求各行的长度*/ for (j=0; j for (k=j+l; k if (xx[i] [j] { ch=xx[i] [j]; xx[i] [j]=xx[i] [k]; xx[i] [k] =ch; } } }
解析
本题考查的知识点如下:
(1)循环结构的嵌套。
(2)字符的大小比较。
(3)字符排序。
本题以行为单位对文章进行处理,首先要确定每一行中字符的个数。这个操作可使用字符串处理函数
strlen(char*str)来完成。对字符从大到小排序依据的是字符的ASCII码,在C语言中,字符量可参与任何整
型运算,所以可以直接使用比较运算符进行比较。排序使用前面介绍的“选择排序法”。最后使用循环结构对文章中的每一行都进行以上的操作。
转载请注明原文地址:https://kaotiyun.com/show/yRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
下面列出的条目中,哪一条是数据仓库的基本特征?Ⅰ.数据仓库是面向主题的Ⅱ.数据仓库的数据是集成的Ⅲ.数据仓库的数据是相对稳定的Ⅳ.数据仓库的数据是反映历史变化的
在DBMS中建立DBMS的系统缓冲区,系统工作区,打开数据字典的工作在【】程序模块中完成。
下列关于E-R模型向关系数据模型转换的叙述中,正确的是
文件系统提供按名存取功能,要求用户在读文刊:之前调用【】文件操作。
数据库系统发生故障时,可以基于日志进行恢复。下面列出的条目中,哪些是日志记录的内容?Ⅰ.事务开始信息Ⅱ.更新信息Ⅲ.提交信息Ⅳ.事务中止信息
在存储管理中,为实现地址映射,硬件应提供两个寄存器,一个是基址寄存器,另一个是【】。
Oracle针对Internet/Intranet的产品是
设有关系SC(SNO,CNO,GRADE),主码是(SNO,CNO)。遵照实体完整性规则
在TCP/IP参考模型中,不属于应用层协议的是
以下关于关系表和元组叙述错误的是()。
随机试题
什麽是延迟AGC特性?
企业职工一方与用人单位可以订立劳动安全卫生、()、工资调整机制等专项集体合同。
缔约过失责任是指在合同订立过程中,一方因违背依据诚实信用原则所产生的义务,而致另一方的信赖利益受损失,就应承担损害赔偿责任。 根据上述定义,下列选项中乙方不可以要求甲方负缔约过失责任的是()。
关于民用建筑设计与工程造价的关系,下列说法正确的是()。
应急照明集中电源检测项目包括()。
试述质押和抵押的主要区别。
城市道路早高峰拥堵时段,一临产孕妇所乘车辆被堵,报警求助。接处警过程中,下列做法不合理的是()。
设A是m×n矩阵,Ax=0是非齐次线性方程组Ax=b所对应的齐次线性方程组,则下列结论正确的是()
若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a<b?a:c<d?c:d的值是()。
A、Hedoesn’tlikethewomanatall.B、Hewillseethewomaninafewminutes.C、Hewouldliketoseethewomantomorrow.D、Hedo
最新回复
(
0
)