首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数readDat()的功能是从文件in52.dat中读取20行数据存放到字符串数组xx中(每行字符串的长度均小于80)。请编制函数JsSod(),该函数的功能是:以行为单位对字符串变量的—F标为奇数位置上的字符按其 ASCII值从小到大的顺序进行排序,排
函数readDat()的功能是从文件in52.dat中读取20行数据存放到字符串数组xx中(每行字符串的长度均小于80)。请编制函数JsSod(),该函数的功能是:以行为单位对字符串变量的—F标为奇数位置上的字符按其 ASCII值从小到大的顺序进行排序,排
admin
2009-02-24
65
问题
函数readDat()的功能是从文件in52.dat中读取20行数据存放到字符串数组xx中(每行字符串的长度均小于80)。请编制函数JsSod(),该函数的功能是:以行为单位对字符串变量的—F标为奇数位置上的字符按其 ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件out52.dat中。
例如: 位置 0 1 2 3 4 5 6 7
源字符串 h g f e d c b a
则处理后字符串 h a f c d e b g。
注意:部分源程序已给出。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio. h>
#include<string. h>
#include<conio. h>
char xx[20] [80];
void jsSort
{
}
void main ()
{
readDat ();
jsSort ( );
writeDat ();
}
readDat ( )
{
FILE *in;
int i=0;
char *p;
in=fopen ( "in52. dat", "r" );
while(i<20 && fgets(xx
,80,in) !=NULL)
{
p=strchr (xx
, ’ In’ );
if(p) *p=0;
i++;
}
fclose (in);
}
writeDat ()
{
FILE *out;
int i;
out=fopen ("out52 .dat", "w");
clrscr ( );
for (i=0;i<20;i++)
{
printf ("%s\n", xx
);
fprint f (out, "%s\n", xx
);
}
fclose (out);
}
选项
答案
void jsSort () { int i, j,k, strl; char ch; for (i=0; i<20; i++) { strl=strlen (xx [i] ); /*求各行字符串的长度*/ for (j=l; j <strl-2; j=j+2) /*将下标为奇数的字符按其ASCII值从小到大的顺序进行排序*/ for (k=j+2; k<strl; k=k+2) if(xx[i] [j]>xx[i] [k]) { ch=xx[i] [j]; xx[i] [j]=xx[i] [k]; xx[i] [k] =ch; } } }
解析
本题考查的知识点如下:
(1)二维数组的坊问及下标控制。
(2)数据的排序。
在本题中,将数据存放在一个二维数组xx中。其中以行数为数组的第—个下标,以字符串的最大长度 80为其第二个下标。因为以行为字符串处理的单位,首先要使用函数strlen()求得每一行中字符的个数。只对字符串数组中下标为奇数的字符进行处理,可以从xx[0][1]开始,若需要增加时都增加2,则可实现只访问下标为奇数的数组元素。排序使用前面介绍的“选择排序法”。
转载请注明原文地址:https://kaotiyun.com/show/xRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
下列排序方法中,哪一种方法总的关键码比较次数与记录的初始排列状态无关?()A)直接选择排序B)直接插入排序C)起泡排序D)快速排序
SQL的数据定义功能包括
S-Designer是一种可视化的数据库设计工具,它的后续版本是Power-Designer,使用它可以完成如下的哪些功能?Ⅰ.可以画数据流图(DFD)Ⅱ.可以画实体联系图(E-R图),即设计概念数据模型(CDM)Ⅲ.可以从概念数据
数据库系统的三级模式结构中,描述数据库中数据的物理结构和存储方式的是【】。
Oracle产品中CASE工具的名称是______。
下列关于分布式数据库系统特点的叙述中不正确的是
在存储管理中,为实现地址映射,硬件应提供两个寄存器,一个是基址寄存器,另一个是【】。
为了实现数据终端设备之间的通信,在通信网络中必须设置交换中心,以便为需要通信的数据终端建立通信链路,通信结束后再拆除链路。目前在Internet网络中使用的交换技术主要是
云计算包含互联网上的应用服务及在数据中心提供这些服务的软硬件设施,通常包括软件即服务、平台即服务、基础设施即服务。其中_______即服务是指通过网络提供操作系统和相关服务,而无需下载或安装。
利用程序模拟脱机输入输出时外围控制机的功能,在主机的直接控制下实现脱机的输入输出功能,此时外围操作与CPU对数据的处理同时进行,这种技术称为()。
随机试题
下列哪项既是症状也是体征()
患者,男,20岁,脑桥变粗,T1WI表现为稍低信号,T2WI为高信号,基底动脉被包绕,向前移,第四脑室底后移,该病变可能为
以下哪项会使收益下降?
商业银行授信审批一般应当遵循审贷分离、统一考虑和展期重审的原则。()
以下是张老师的教学手记节选。李明是我的学生,他父母离异。因为缺少双亲的关爱,李明比较不合群,经常迟到、旷课,常因一点小事就向同学大打出手。看到这一切,我没有因他违反纪律而训斥、挖苦他,而是用母亲般的爱去关心他、爱护他。在一个秋风萧瑟的早晨,我在教
Tryingnewthingsistheonlywaywecandiscoverhiddentalents.I【C1】________mycareerasaneditorforamagazine.Ididn’tr
已知α=是可逆矩阵A=的伴随矩阵A*的特征向量,特征值λ.求a,b,λ.
Themiddle-agedmanwasseen______outofthehouseontheafternoonofthemurder.
Anniewasbusy______herboyfriendlastnight.
WhydidSusanandMichaelinterviewchildrenagedbetween9and11?
最新回复
(
0
)