首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN88.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharA(),该函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中。最后调用函数Write
函数ReadDat()的功能是实现从文件IN88.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharA(),该函数的功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中。最后调用函数Write
admin
2010-01-09
57
问题
函数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+l; k<strl; 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)来完成。对字符从小到大排序依据的是字符的ASCII码,在C语言中,字符量可参与任何整型运算,所以可以直接使用比较运算符进行比较。排序使用前面介绍的“选择排序法”。最后使用循环结构对文章中的每一行都进行以上的操作。
转载请注明原文地址:https://kaotiyun.com/show/dOYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式:系(系号,系名),系号为主码学生(学号,姓名,所在系号),学号为主码课程(课程号,课程名,开课系号),课程号为主码选课(学号,课程号,选课
设有高校选课系统,需要对学校的系信息、教师信息、课程信息、学生信息、学生选课信息进行管理。已知系(DEPT)信息包括系编号(DeptNO)、系名称(DeptName);教师(Teaeher)信息包括教师号(TNO)、教师名(Tname);课程(Course
对一个数据集的数据进行分组,使得每一组内的数据尽可能相似而不同组间的数据尽可能的不同,这样数据挖掘方法称为【14】算法。
设某教学管理系统,其查询模块需要提供如下功能:Ⅰ.查询系信息,列出各系编号、系名和系办公电话;Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期;Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分;Ⅳ.查询讲授某门课程的教师信息,列出教
为了保证正确地调度事务的并发操作,事务对数据库对象加锁、解锁需遵守加锁协议。加锁协议中两阶段加锁协议可以保证事务调度【5】性。
索引是数据库中重要的数据结构。关于索引现有下列说法:Ⅰ.建立索引的目的是提高查询的效率Ⅱ.在插入、删除和更新操作中,索引可能会增加系统开销Ⅲ.当数据库表更新大量数据后一般需要重建对应的B树索引Ⅳ.多属性索引中,索引属性的顺序一般按照属性的长度进行排
下列关于企业数据仓库环境中数据特点的说法,错误的是()。
在一台正在运行的SQLServer2008中,现需使用复制数据库文件的方法将某数据库从一台服务器移动到另一台服务器。关于复制数据库文件,有下列实现方法:Ⅰ.首先从数据库服务器中分离出要复制的数据库,然后复制数据库文件Ⅱ.首先停止SQLSe
云计算包含互联网上的应用服务及在数据库中提供这些服务的软硬件设施,通常包括软件即服务、平台即服务、基础设施即服务,,其中________即网络提供操作系统和相关服务,而无需下载或安装。
为了保证CPU执行程序指令时能正确访问存储单元,需要将用户程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址,这一过程称为
随机试题
全玻幕墙肋玻璃的厚度不应小于()mm。
下列事项中,能增加或减少企业所有者权益总额的有()。
进程P1、P2和P3单独执行时间分别为10min、15min和20min,其中处理机占用时间分别为2min、3min和12min。如果采用多道程序设计技术使其并发,并假设处理机的利用率可以达到60%,加上系统开销5min,则并发使得计算机系统
手动消防炮系统具有安全性高、操作简便和投资相对少等优点,适用于有爆炸危险性、产生强辐射热的场所。()
在考虑子宫内膜异位症的辅助检查中,下列选项不适合的是()
新生儿低血糖症是指全血血糖低于
导致尿路感染最常见的致病菌是
A.核苷类逆转录酶抑制剂B.非核苷类逆转录酶抑制剂C.蛋白酶抑制剂D.免疫调节剂E.抗真菌剂奈非雷平
下列说法正确的有( )。
许多人利用早晨和晚上的时间学习记忆,其效果优于白天。这是因为早上和晚上所受到的是哪种抑制的干扰()
最新回复
(
0
)