函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编
函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数ConvertCharA(),该函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT5.DAT中。
例如,原文:Adb.Bcdza
abck.LLhj
结果:Aec.Bdeab
bcdl.LLik
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
注意:部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
参考解答
#include
#include
#include
char xx[50[80 ;
int maxline = 0 ;/* 文章的总行数 */
int ReadDat(void) ;
void WriteDat(void) ;
void ConvertCharA(void)
{
int i,j; /*定义循环控制变量*/
int str; /*存储字符串的长度*/
for(i=0;i
{
str=strlen(xx[i); /*求得当前行的字符串的长度*/
for(j=0;j
if(xx[i[j>='a' && xx[i[j<='z') /*如果是小写字母*/
if(xx[i[j=='z')
xx[i[j='a'; /*如果是小写字母z,则改写成字母a*/
else
xx[i[j+=1; /*其他的小写字母则改写为该字母的下一个字母*/
void main()
{
system('CLS');
if(ReadDat())
{
printf('数据文件IN5.DAT不能打开!\n\007') ;
return ;
ConvertCharA() ;
WriteDat() ;
int ReadDat(void)
{
FILE *fp ;
int i =0 ;
char *p ;
if((fp = fopen('IN5.DAT', 'r')) == NULL) return 1 ;
while(fgets(xx[i, 80, fp) !=NULL)
{
p = strchr(xx[i, '\n') ;
if(p) *p = 0 ;
i++;
maxline = i ;
fclose(fp) ;
return 0 ;
void WriteDat(void)
{
FILE *fp ;
int i ;
system('CLS');
fp = fopen('OUT5.DAT', 'w') ;
for(i = 0 ; i < maxline ; i++)
{
printf('%s\n', xx[i) ;
fprintf(fp, '%s\n', xx[i) ;
fclose(fp) ;
相似问题
简述嵌入式系统的发展阶段。
简述嵌入式系统的发展阶段。
已知数据文件in33.dat中存有300个4位数 并已调用函数readDat()把这些数存入数组a中
已知数据文件in33 dat中存有300个4位数,并已调用函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出个位数上的数减千位数上的数
容灾项目实施过程的分析阶段 需要进行( )A.灾难分析B.业务环境分析C.当前业务状况分析D.以上均
容灾项目实施过程的分析阶段,需要进行( )A 灾难分析B 业务环境分析C 当前业务状况分析D 以上均正确
获取需求的主要方法包括( )。A.面谈B.实地观察C.问卷调查D.查阅资料
获取需求的主要方法包括( )。A 面谈B 实地观察C 问卷调查D 查阅资料
简述比较CPU算法的准则。
简述比较CPU算法的准则。