首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数$ortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,捧序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数$ortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,捧序后的结果仍按行重新存入字符串数组xx中,最后调用函数Write
admin
2009-02-15
29
问题
函数ReadDat()的功能是实现从文件IN35.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数$ortCharD(),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,捧序后的结果仍按行重新存入字符串数组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())
{
printf ("数据文件 IN35.DAT 不能打开!\n\007 ");
return;
}
SortCharD();
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\n",xx
);
fprintf(fp,"%s\n’,xx
);
}
fclose(fp);
}
选项
答案
void SortCharD() { int i,j,k,str1; char ch; for (i=O;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][j]=xx[i][k]; xx[i][k]=ch; } } }
解析
本题考查的知识点如下:
(1) 循环结构的嵌套。
(2) 字符的大小比较。
(3) 字符排序。
本题以行为单位对文章进行处理,首先要确定每一行中字符的个数。这个操作可使用字符串处理函数strlen(char*str)来完成。对字符从大到小排序依据的是字符的ASCII码,在C语言中,字符量可参与任何整型运算,所以可以直接使用比较运算符进行比较。排序使用前面介绍的“选择排序法”。最后使用循环结构对文章中的每一行都进行以上的操作。
转载请注明原文地址:https://jikaoti.com/ti/nDh7FFFM
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
下列选项中,哪一项与病毒不同之处在于,没有自我复制功能的恶意程序()。
处于防火墙关键部位,运行应用级网关软件的计算机系统称为()。
攻击者利用攻破的多个系统发送大量请求去集中攻击其他目标,受害设备因为无法处理而拒绝服务。这种攻击被称为
一台交换机具有24个10/100Mbps全双工端口和2个1000Mbps全双工端口,如果所有端口都工作在全双工状态,那么该交换机总带宽应为
网络系统分层设计中层次之间的上联带宽与下一级带宽之比一般控制在
提高Catalyst6500发生间接链路失效的收敛速度,正确配置STP可选功能的命令是______。
SNMPv1是一个不安全的协议,管理站(Manager)与代理(Agent)之间通过______进行身份认证,由于认证信息没有加密,所以是不安全的。
TCP/IP的互联层采用IP协议,它相当于OSI参考模型中网络层的______。
下列关于局域网设备描述中,错误的是______。A)中继器工作在MAC层B)连接到一个集线器的所有节点共享一个冲突域C)交换机在源端口与目的端口间建立虚连接D)网桥的主要性能指标包括帧转发速率和帧过滤速率
A、 B、 C、 D、 A破密者(即解密者)指的是截取到密文,且想方设法将其变换成明文的第三方。破密的关键是如何求得密钥。破密者仅知密文,试图推导出明文,或推算出用来加密的密钥,以便解密出密文,无疑是非常困难
随机试题
有关肾的描述,错误的是()
QTc的计算公式为
多数情况下,关于药物穿过生物膜的扩散速率,正确的是
企业年度各种产品销售业务量为100%时的销售年固定成本总额为5500万元,变动成本为3300万元,企业年固定成本总额为1300万元,利润为900万元,则当预计业务量为70%时的利润为()。
对明代杨慎《临江仙》词:“滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶烛酒喜相逢,古今多少事,都付笑谈中”的解说,不恰当的一项是:
N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表韵头节点。请编写函数fun,它的功能是。找出学生的最高分,由函数值返回。注意:部分源程序在文件PROGl.C文件中。请勿改动主函数main和其他函数中的任何内容。仅在函数
Theauthor______usasconsistentlyfairandaccurateabouttheissues.
NarratorListentoalecturetalkaboutbassinbusinessclass.WhydidJoshuatakehisguitartotheshop?
Whataddedtothedifficultyintheputtingoutofthebushfire?
A、Ithaslost14percentoftheareaonceitcontrolledinIraq.B、Itcontrolsabout80percentoftheoilfieldsinSyria.C、It
最新回复
(
0
)