首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数ConvertCharA(),该函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母2,则改写成字母a。大写字母仍为大
函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数ConvertCharA(),该函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母2,则改写成字母a。大写字母仍为大
admin
2009-02-15
32
问题
函数ReadDat()的功能是实现从文件IN5.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数ConvertCharA(),该函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母2,则改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT5.DAT中。
例如,原文:Adb.Bcdza
abck.LLhj
结果:Aec.Bdeab
bcdl.LLik
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
注意:部分源程序已给出。
请勿改动主函数main()、读函数ReadDat()和写函数Wiltedat()的内容。
试题程序:
#include <stdio.h>
#include <string.h>
#include <conio.h>
char xx[50] [80];
int maxline = 0;/* 文章的总行数 */
int ReadDat (void);
void WriteDat (void);
void ConvertCharA (void)
{
}
main ( )
}
clrscr();
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
, 80, fp) !=NULL)
{
p = strchr(xx
, ’\n’);
if(p) *p = 0;
i++;
}
maxline = i;
fclose(fp);
return 0;
}
void WriteDat(void)
{
FILE *fp;
int i;
clrscr();
fp = fopen("OUT5.DAT", "w");
for(i = 0; i < maxline; i++)
{
printf("%skn", xx
);
fprintf(fp, "%skn", xx
);
}
fclose(fp);
}
选项
答案
void ConvertCharA (void) { int i, j,str; for (i=0; i<maxline; i++) { str=strlen (xx [i] ); /*求得当前行的字符串的长度*/ for (j=0; j<str; j++) if (xx[i] [j]==’z’) xx[i] [j]=’a’; /*如果遇到的字符是小写字母z则改写成小写字母a* / else if(xx[i][j]>=’a’ && xx[i] [j]<=’y’) xx[i][j]+=1; /*如果该字符是从a到y的小写字母则改写为该字母的下一个字母*/ } }
解析
本题要对二维数组中的字符元素按行来处理,因此,首先要求得当前行所包含的字符总个数,之后才可以利用一个循环来依次访问该行中的所有字符。当遇到一个字符时,先判断该字符是否是小写字母2,如果是,则把该字符改写成小写字母a;如果不是,则继续判断该字符是否是从a到y的小写字母,如果是,则改写为该字母的下一个字母(利用字符的ASCII码值来实现);如果不是,则不做任何的操作,接着去取下一个字符。
转载请注明原文地址:https://kaotiyun.com/show/ZwfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
A、 B、 C、 D、 B管理信息库(MIB)是网络管理系统的重要构件,由系统许多被管理的对象及其属性组成,它是一个虚拟的数据库,采用树型结构来组织的。MIB经历MIB-1和MIB-2两个版本,SNMP现在
A、 B、 C、 D、 BA)、D)并不是谈IPv6协议的优点,C项“IPv6协议允许全局IP地址出现重复”错误,故可用排除法知道B)正确。
A、 B、 C、 D、 DOSPF协议使用层次结构的区域划分,将一个自治系统内部划分成若干区域与主干区域。主干区域连接多个区域,主干区域内部的路由器叫主干路由器;连接各个区域的路由器叫区域边界路由器;在主干区
下列关于WindowsServer2003系统下DHCP服务器配置的描述中,错误的是______。
网络管理员在交换机配置中,会给每个VLAN指定一个VLANID,______成为标准的Trunk机制。
某单位的网络要配置一台DHCP服务器,为网络内部的计算机自动分配IP地址。回答问题:客户机是如何从DHCP服务器得到动态IP的?
A、 B、 C、 D、 D性能管理包括系统监视器、性能日志和警报。系统监视器提供有关操作系统特定组件和用于搜集性能数据的服务器程序所使用资源的详细数据,并图形化显示性能监视数据。性能日志和警报提供数据记录能力
A、 B、 C、 D、 D交换表表示的足目的MAC地址与交换机端口的对应关系.而不是源MAC地址。故A错;并不是所有的数据帧都会被转发。如果源端口号和目的端口号相同或处于某种安全机制下,该数据帧会被直接丢弃,
A、 B、 C、 D、 AIPv6地址可以用冒号十六进制表示,IPv6的压缩方法有:①前导零压缩法,如果一个位段巾零出现在最前边,则可以省略不写,一直略到不为0的数值结束,故B错误。②双冒号表示法,如果几个连
A、 B、 C、 D、 B虚拟局域网VLAN只能将在同一个物理网络上的主机进行逻辑分组,具有隔离广播域的功能,而且可以限制网上计算机互相访问的权限,路由器、三层交换机和带三层模块的网络互联设备均可以支持不同V
随机试题
关于恩他卡朋的叙述正确的是
患者男,65岁。诊断为肺炎入院,应用抗生素治疗后未见好转,3天后突然出现呼吸急促,烦躁,出大汗。体检:呼吸42次/分,血压98/70mmHg,脉搏102次/分,口唇发绀,双肺闻及水泡音。呼吸衰竭患者气管插管或气管切开的适应证是
舌尖淋巴管大部分回流至()
对骨髓有抑制作用,可引起血小板计数减少的药品是
下列哪一行为应以玩忽职守罪论处?()(2012/2/21)
阅读《声声慢》教学实录(节选),按照要求答题。(播放安雯演唱的《月满西楼》视频)师:这么美的歌声把我们一起带进了课堂,同学们知道这首歌曲的名字叫什么吗?歌词化用了哪位词人的哪首词?生:李清照的《一剪梅》。师:那咱们来一起背诵一遍这首词。(师生
(2020年广东)2020年6月30日颁布的《中华人民共和国香港特别行政区维护国家安全法》是保持香港特别行政区繁荣和稳定的重要法律。以下属于该法规定处罚的罪行有()。①分裂国家罪②颠覆国家政权罪③恐怖活动罪④勾结外国或者境外
全加器是由两个加数Xi和Yi以及低位来的进位Ci-1作为输入,产生向高位的进位Ci以及本位利Si的逻辑电路。(65)和(66)分别是进位和本位和的正确逻辑表达式。全加器亦可通过半加器来实现,此时Si=(67)。若某计算机采用8位带符号补码表示整数,则可由8
下图中所示的查询返回的记录是()。
AntoinetteRicks,Manager,FiestaCatering78ParkAvenue,Detroit,MI48206DearMs.Ricks,Iamsendingthislettertocontes
最新回复
(
0
)