首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN100.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数CharConvA(),该函数的功能是:以行为单位把字符串的最后一个字符ASCII值右移4位后加最后第二个字符的ASCII值,得到最后一个新的字符
函数ReadDat()的功能是实现从文件IN100.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数CharConvA(),该函数的功能是:以行为单位把字符串的最后一个字符ASCII值右移4位后加最后第二个字符的ASCII值,得到最后一个新的字符
admin
2010-01-11
50
问题
函数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全国计算机三级
相关试题推荐
在文件系统中,文件的逻辑块与存储介质上物理块存放顺序一致的物理结构是()。
下列关于进程的叙述中,哪些是正确的?()
假设某计算机系统的内存大小为256K,在某一时刻内存的使用情况如下表所示。此时,若进程顺序请求20K和5K的存储空间,系统采用某种算法为进程分配内存,分配后的内存情况如下表所示。那么系统采用的是什么分配算法?()
某一单核处理机的计算机系统中共有20个进程,那么,处于运行状态的进程最多为几个?()
中断处理程序的入口地址一般存放在下列哪个数据表格中?()
在客户机/服务器模型中,响应并发请求有不同的解决方案,这些方案包括()。
在可信任计算机标准评估准则中,安全等级最低的是()
从计算机系统发展角度来看,操作系统的主要作用是提供()。
有一个NAT设备具有一个外部IP地址,如果内部的5台主机都希望利用该外部IP地址同时访问Internet,那么该NAT设备应该采用的工作模式为()。
下列关于管理信息系统(MIS)和决策支持系统(DSS)的叙述中,哪一个是不正确的?
随机试题
企业所得税法规定,对国需要重点扶持的高新技术企业,减按()的税率征收企业所得税。
在Word2010中,自动生成的目录可以通过按___________键同时单击对应标题快速定位到需要查询的内容。
甲公司20×1年年初的“利润分配——未分配利润”账户的借方余额为300000元,20×1年实现利润总额743000元,法定盈余公积的提取比例为10%,不提取任意盈余公积。甲公司决定向股东分配利润66450元。甲公司适用的企业所得税税率为25%,20×1年无
20×0年10月20日,甲公司以每股10万元的价格从二级市场购入乙公司股票10万股,支付价款:100万元,另支付相关交易费用1万元。甲公司将购入的乙公司股票作为可供出售金融资产核算。20×0年12月31日,乙公司股票市场价格为每股6元,甲公司获悉,乙公司股
物流公司或货主企业的物流部门在进行物流作业(或作业中心)的划分时,属于其作业项目的有()。
研究人员对40名在校大学生进行了实验,他们让这些学生记忆斯瓦希里语对应的英语单词,一共十组,每组十对词汇。每学习完一组,对参与者进行回想测验,测验中,每错一次,他们将会看到两种图片的一种,一种是可以产生负面情绪的图片,例如一把指向自己的枪:另一种是普通的图
下列选项中,不适用代理或不能认定为代理的情形是()。
[*]
______werecreatedintheearly1800’sascharitableinstitutionstoprovideasafeplaceforpoorworkingpeopletosaveforr
Weoftenhearthe【21】"Bug"whileusingcomputers.Butwhatisabug?Incomputerscience,abug【22】anerrorinsoftwareorhardw
最新回复
(
0
)