首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数readDat()的功能是从文件in52.dat中读取20行数据存放到字符串数组xx中(每行字符串的长度均小于80)。请编制函数JsSod(),该函数的功能是:以行为单位对字符串变量的—F标为奇数位置上的字符按其 ASCII值从小到大的顺序进行排序,排
函数readDat()的功能是从文件in52.dat中读取20行数据存放到字符串数组xx中(每行字符串的长度均小于80)。请编制函数JsSod(),该函数的功能是:以行为单位对字符串变量的—F标为奇数位置上的字符按其 ASCII值从小到大的顺序进行排序,排
admin
2009-02-24
26
问题
函数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全国计算机三级
相关试题推荐
保持事务的原子性是数据库管理系统中哪一个部件的责任?
用户关系模式R中所有的属性都是主属性,则R的规范化程度至少达到【】。
Armstrong公理系统的3条推理规则是______、增广律和传递律。
若用如下的SQL语句建立一个Worker表:CREATETABLEworker(NOC(4)NOTNULL,NAMEC(8)NOTNULL,SEXC(2),AGEN(2))可以插入到worker表中的是______。
下列的叙述中错误的是
文件的存取方式是由文件的性质和用户使用文件的情况而定的,一般可以采用顺序存取和随机存取两种形式。顺序存取是按照文件的______地址顺序存取的。
严格两阶段封锁协议要求对更新数据的封锁必须保持到事务______。
下面列出的数据管理技术发展的三个阶段中,哪个(些)阶段有专门的软件对数据进行管理?Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
消息的序号和时间性的认证主要是阻止消息的()。
以下关于关系表和元组叙述错误的是()。
随机试题
在社会主义社会,知识分子在社会上属于工人阶级的一部分。()
男,53岁,戴全口义齿1天,咬合时疼痛。查:全口义齿舌、腭侧均为铸造金属基托若检查发现,在牙槽嵴顶上有局限发红区。其原因是
下列关于尿素循环的论述,正确的是()。
下列各项中,属于母病及子的是
股票市场融资的特点有()。①无须退还本金②只能转让③可以退股④保证收益
下列各项程序中,通常用于了解企业经营活动和业务流程的有()。
下列关于南北朝时期佛教的描述,正确的有()。
人有休息的需要,动物也有打盹的时候,很多人往往一看到动物休息就不悦,只希望动物随时给自己展现身姿、表演动作,也不顾人家是否疲倦,这是将自己的快乐建筑在别人的痛苦之上的非礼行为。有人以为喂喂动物表示一下爱心总可以吧,错了!随便投喂只会给动物带来伤害。人工饲养
实验组(experimentalgroup)与控制组(controlgroup)(东北财大2010年研;华中农大2010年研)
设φ(x)为区间[0,1]上的正值连续函数,a,b为任意常数,区域D={(x,y)|0≤x≤1,0≤y≤1},则=()
最新回复
(
0
)