首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数Rdata()实现从文件IN.dat中读取一篇英文文章存入字符串数组string中,请编写函数SortCharA(),其功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字爷串数组string中。最后调用函数Wdata(),把
函数Rdata()实现从文件IN.dat中读取一篇英文文章存入字符串数组string中,请编写函数SortCharA(),其功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字爷串数组string中。最后调用函数Wdata(),把
admin
2010-09-05
106
问题
函数Rdata()实现从文件IN.dat中读取一篇英文文章存入字符串数组string中,请编写函数SortCharA(),其功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字爷串数组string中。最后调用函数Wdata(),把结果string输出到OUT.dat文件中。
例如,原文:dAe, BfC.
CcbbAA
结果:,. ABCdef
AACbbc
原始数据文件存放的格式是:每行的宽度均小于80个字符(含标点符号和空格)。
注意:部分源程序已经给出。请勿改动主函数main()、读数据函数Rdata()和输出数据函数Wdata()的内容。
#include <stdio.h>
#include <string.h>
#include <conio.h>
char string [50] [80];
int maxline = 0; /* 文章的总行数 */
int Rdata (void);
void Wdata (void);
void SortCharA(void)
{
}
void main ()
{ if (Rdata ())
{ printf("数据文件 IN. dat 不能打开! \n\007");
return;
}
SortCharA ();
Wdata ( );
}
int Rdata (void)
{ FILE *fp;
int i = 0;
char *p;
if ((fp = fopen("IN. dat", "r")) == NULL)
return 1;
while (fgets(string
, 80, fp) != NULL)
{ p = strchr(string
, ’\n’);
if (p)
*p = 0;
i++;
}
maxline = i;
fclose (fp);
return 0;
}
void Wdata (void)
{ FILE *fp;
int i;
fp = fopen("OUT. dat", "w");
for (i=0; i<maxline; i++)
{ printf("%s\n", string
);
fprintf(fp, "%s\n", string
);
}
fclose (fp);
}
选项
答案
void SortCharA (void) { int i, j, k, str1; char ch; for (i=0; i<maxline; i++) { str1 = strlen(string[i]); for (j=0; j<str1-1; j++) for (k=j+1; k<str1; k++) if (string[i] [j] > string [i] [k]) { ch = string[i] [j]; string[i] [j] = string[i] [k]; string[i] [k] = ch; } } } [解题思路] 这里采用strlen字符函数获取字符串的长度;对文章中的每一行的字符利用双重循环进行两两比较,较小的字符往行前放,较大的字符往行后放,这样就实现了以行为单位对字符从小到大的排序。在程序中的语句是if(string[i][j]>string[i][k])成立,string[i][j]和string[i][k]就交换数据。
解析
转载请注明原文地址:https://kaotiyun.com/show/VuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在关系代数中,从两个关系的笛卡尔积中,选取它们的属性间满足一定条件的元组的操作,称为
文件的存取方式是由文件的性质和用户使用文件的情况而确定的,一般有两种存取方式,它们是______。
面向对象数据模型中对象可以定义为对一组信息及操作的描述,对象之间的接口是()。
数据库管理系统提供用户对数据的操纵功能,实现对数据库数据的检索、插入、修改和删除,这属于数据库管理系统的基本功能中的______。
对于给出的一组权w={5,6,8,12},通过霍夫曼算法求出的扩充二叉树的带权外部路径长度为_____。
设平衡的二叉排序树(AVL树)的节点个数为n,则其平均检索长度为______。
设有下三角矩阵A[0..10,0..10],按行优先顺序存放其非零元素,每个非零元素占两个字节,存放的基地址为100,则元素A[5,5]的存放地址为______。
要执行一条指令copyAtoB,若指令本身跨越了两个页面,而数据块A、B又分别跨越了两个页面,那么该指令涉及到的缺页中断次数为()。
下列问题基于以下的叙述:关系模式R(B,C,M,T,A,G),根据语义有如下函数依赖集:F={B→C,(M,T)→B,(M,C)→T,(M,A)→T,(A,B)→C}。
下述关于数据库系统的正确叙述是______。
随机试题
党的十五大报告初步画了实现第三步战略目标的蓝图,这被称为新的“三步走”战略。新的“三步走”战略内容是()
患儿男性,2岁,因“外伤后颅骨骨折,反复发热抽搐”就诊。临床可疑脑膜炎。关于肺炎双球菌脑膜炎治疗的描述,错误的是
下列哪项对于治疗糖尿病酮症酸中毒不宜
下列腧穴,不属于手阳明大肠经的是:
2岁,男孩,因感冒1d伴发热入院,体检;39℃,脉搏130/min,意识清楚,咽部充血,其余检查正常。在体检过程中,婴儿突然发呆,双眼上翻,出现四肢强直性、阵挛性运动。下列哪项不是该患儿的护理诊断
为了对项目目标进行动态跟踪和控制,在确定了项目目标计划值后的施工过程中,首先应做的是()。
在孔子所处的春秋末期,西周以来的旧礼制难以继续维持下去了,对此,孔子在情感上并不认同,但是他以自己的实际行动,办起了“私学”,主张“_______”:不论是贵族或平民,也不论出身何处,都可以到他的私学来学习。由此可见,孔子选定了一条道路,就是用教育和文化去
下列有关宋朝考课制度的表述,正确的是()。
在设计算法时,通常应考虑以下原则:首先说设计的算法必须是(15),其次应有很好的(16),还必须具有(17),最后应考虑所设计的算法具有(18)。
【B1】【B18】
最新回复
(
0
)