首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN100.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数CharConvA(),该函数的功能是:以行为单位把字符串的最后一个字符ASCII值右移4位后加最后第二个字符的ASCII值,得到最后一个新的字符
函数ReadDat()的功能是实现从文件IN100.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数CharConvA(),该函数的功能是:以行为单位把字符串的最后一个字符ASCII值右移4位后加最后第二个字符的ASCII值,得到最后一个新的字符
admin
2010-01-11
40
问题
函数ReadDat()的功能是实现从文件IN100.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数CharConvA(),该函数的功能是:以行为单位把字符串的最后一个字符ASCII值右移4位后加最后第二个字符的ASCII值,得到最后一个新的字符,最后第二个字符的ASCII值右移4位后加最后第三个字符的ASCII值,得到最后第二个新的字符,以此类推一直处理到第二个字符,第一个字符的ASCII值加最后一个字符的ASCII值,得到第一个新的字符,得到的新字符分别存放在原字符串对应的位置上,把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件OUT100.DAT中。
注意;部分源程序已给出。
原始文件存放的格式是:每行的宽度小于80个字符,含标点符号和空格。
请勿改动主函数main()、读函数ReadDat()和写函数Wnh2Dat()的内容。
试题程序:
#include<stdio.h>
#include<string.h>
#include<conio.h>
char xx[50][80];
int maxline=0;
int ReadDat();
void WriteDat();
void CharConvA(void)
{
}
void main()
{
clrscr();
if (ReadDat())
{
printf("数据文件IN100.DAT不能打开!\n\007");
return;
}
CharConvA( )
WriteDat();
}
int ReadDat(void)
{
FILE *fp;
int i=0;
char *P;
if((fp=fopen("IN100.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()
{
FILE *fp;
int i;
clrscr();
fp=fopen("OUT100.DAT","w");
for(i=0;i<maxline;i++)
{
printf("%s\n",xx
);
fprintf(fp,"%s\n",xx
);
}
fclose(fp);
}
选项
答案
void CharConvA(void) { int i,j,k,str; char ch; for(i=0;i<maxline;i++) { str=strlen(xx[i]); /*求出各行的总字符数*/ ch=xx[i][str-1]; /*将最后一个字符暂存入ch*/ for(j=str-1;j>0;j--) /*从最后一个字符开始,直到第二个字符*/ xx[i][j]=xx[i][j]>>4+xx[i][j-1]; /*当前字符ASCII值右移4位加前一个字符的ASCII值,得到新的当前字符*/ xx[i][0]+=ch; /第一个字符的ASCII值加最后一个字符的ASCII值,得到第一个新的字符*/ } }
解析
本题考查的知识点如下;
(1)字符变量的整数运算。
(2)使用循环实现对数组的访问。
因为是以行为处理单位,所以要先求得每一行中字符的个数。在C语言中,字符量可参与任何整数运算,实际参与运算的是字符的ASCII码。这里可以直接将字符右移4位后相加,即可得到所求结果。使用循环结构依次对字符进行处理,第一个字符要单独处理。
转载请注明原文地址:https://kaotiyun.com/show/jb5Z777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
在Internet中,某一路由器收到了一个IP数据报。在对其首部进行校验后发现该数据报存在错误,请问路由器最有可能采取的行动为()。
解决死锁的方法有多种,通过“资源有序分配法”来解决死锁问题的方法称为()。
下列关于文件目录的叙述中,哪一个是错误的?()
在以下P2P网络中,哪些采用了分布式结构化拓扑?()
关于共享式以太网的描述中,错误的是()。
死锁产生的原因之一是资源分配不当,另一个原因是()。
ADSL技术的承载实体通常是()。
某信息系统支持有选择的存取控制,数据保护以用户组为单位,其安全等级至少是()。
采用动态地址映射方式向内存装入程序时,其地址转换工作是在什么时间完成的?()
操作系统作为系统软件,位于软件系统的哪一个层面?()
随机试题
课堂管理就是课堂纪律管理,即学生行为管理。()
组织细胞在绝对不应期时其兴奋性
下列情况中,不能通过心电图做出判断的是
大面积烧伤患者休克期口渴时,可给予
公路工程质量等级评定的原则是()。
吴某购票进入某公园游玩时,被一歹徒抢走手机及随身携带的手包,损失2000元,并在与歹徒搏斗过程中受伤,花去医药费200元。吴某虽大声喊叫,但没有公园管理处的人员出现。后歹徒逃之天天。吴某报案后,诉至法院,请求判决公园赔偿其各项损失,引发纠纷。经查,该公园已
小儿神经性皮炎一直被认为是由母乳过敏引起的。但是,如果我们让患儿停止进食母乳而改用牛乳,他们的神经性皮炎并不因此消失。因此,显然存在别的某种原因引起小儿神经性皮炎。下列哪项如果为真,最能支持上述结论?
(2011年新疆.材料四)根据下列资料,回答下列问题。2009年上半年,地方财政收入位居中部地区第二和第三的省份分别是()。
《刑法》第399条规定:“司法工作人员徇私枉法、徇情枉法,对明知是无罪的人而使他受追诉、对明知是有罪的人而故意包庇不使他受追诉,或者在刑事审判活动中故意违背事实和法律作枉法裁判的,处五年以下有期徒刑或者拘役;情节严重的,处五年以上十年以下有期徒刑;情节特别
中国共产党要担负起实现中华民族的伟大复兴这一崇高的历史使命,就
最新回复
(
0
)