首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN8.DAT中读取一篇英文文章存入到字符串数组xx中;请编制函数StrCharJP(),该函数的功能是:以行为单位把字符串中的所有字符的ASCII值右移4位,然后把右移后的字符的ASCII值再加上原字符的ASCII
函数ReadDat()的功能是实现从文件IN8.DAT中读取一篇英文文章存入到字符串数组xx中;请编制函数StrCharJP(),该函数的功能是:以行为单位把字符串中的所有字符的ASCII值右移4位,然后把右移后的字符的ASCII值再加上原字符的ASCII
admin
2009-02-24
38
问题
函数ReadDat()的功能是实现从文件IN8.DAT中读取一篇英文文章存入到字符串数组xx中;请编制函数StrCharJP(),该函数的功能是:以行为单位把字符串中的所有字符的ASCII值右移4位,然后把右移后的字符的ASCII值再加上原字符的ASCII值,得到新的字符,并存入原字符串对应的位置上。最后把已处理的字符串按行重新存入字符串数组xx中,并调用函数WriteDat()把结果xx输出到文件OUT8.DAT中。
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
试题程序:
#include<stdio.h>
#include<string.h>
#include<conio, h>
char xx[50] [80];
int maxline = 0; /* 文章的总行数 */
int ReadDat (void);
void WriteDat(void);
void StrCharJR(void)
{
}
main ( )
{
clrscr ( ;
if (ReadDat ())
{
printf ("数据文件IN8.DAT不能打开! \n\007");
return;
}
StrCharJR ();
WriteDat ();
}
int ReadDat (void)
{
FILE *fp;
int i= 0;
char *p;
if ((fp = fopen("IN8.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("OUT8.DAT", "w");
for(i = 0; i < maxline; i++)
{
printf("%s\n", xx
);
fprintf(fp, "%s\n", xx
);
}
fclose (fp);
}
选项
答案
void StrCharJR(void) { int i,i,strl; for(i=0;i<maxline;i++) { str1=strlen(xx[i]); /*计算各行字符串的长度*/ for(j=0;i<str1;j++) xx[i][j]+=xx[i][j]>>4;/*字符的ASCII值右移4位再加—卜原字符的ASCII 值,得到新字符*/ } }
解析
本题考查对二维字符数组元素的操作。注意:字符也可以参与数学运算,只不过用的是其ASCII码值。我们可以利用双重循环按照先行后列的顺序逐个取得数组中的字符(前提是我们需要求得各行字符的总个数),外层循环用来控制行数,内层循环用宋依次取得各行中的每一个字符。之后对当前所取得的字符进行右移4位的运算(用到了“>>”右移运算符),然后把右移后得到的字符累加到原来字符中去,这样原来字符就被新的字符所覆盖。
转载请注明原文地址:https://jikaoti.com/ti/Sfp7FFFM
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
下面列出的条目中,哪一条是数据仓库的基本特征?Ⅰ.数据仓库是面向主题的Ⅱ.数据仓库的数据是集成的Ⅲ.数据仓库的数据是相对稳定的Ⅳ.数据仓库的数据是反映历史变化的
SQL语言采用【】操作方式。例如,查询所有平均成绩在90分以上的学生姓名,用户必须说明完成该请求的具体处理过程,即如何用循环结构按照某条路径一条一条地把满足条件的学生记录读出来,而SQL语言采用集合操作方式,不仅查询结果可以是元组的集合,而且一次插入
A、 B、 C、 D、 BPowerDesigner中ProcessAnalyst用于数据分析和数据发现,使用户能够描述复杂的处理模型以反映他们的数据库模型,产生数据字典,绘制数据流程图等。
数据库系统的三级模式结构中,描述数据库中数据的物理结构和存储方式的是【】。
关于计算机的操作系统,下面叙述不正确的是
在SYBASE数据库产品中提供面向对象的数据库建模工具的是
TCP/IP参考模型在下列_________定义了用户数据报协议(UDP)。
防火墙可设置于
假定有n个关键字,它们具有相同的散列函数值,用线性探查方法把这n个关键字存入到哈希地址空间中要做【】次探查。
数据挖掘作为知识发现的过程,一般由三个主要阶段组成:数据准备、____________、结果的解释和评估。
随机试题
下列哪些因素可促进钙超载的发生
20世纪80年代以后,特别是90年代以来,在西方国家占主导地位的行政管理学理论主要有()
如果你乘飞机出国,必须提前至少两个小时到达机场。(inadvance)
女40岁,烧伤并绿脓杆菌感染,用羧苄西林治疗,注意不能与何药置同一容器中
当渗流沿着两种颗粒不同的土层交界面流动时,在交界面处的土壤颗粒被冲动而产生的冲刷现象称为()。
下列关于会计核算的一般要求,说法正确的是()
在资产负债表中,根据有关资产科目期末余额与其备抵科目期末余额抵消后的净额填列的项目有( )。
定义:①直接观察:指凭借人们的感官直接对研究对象进行观察。②间接观察:指借助仪器设备对研究对象进行观察。③定性观察:指对研究对象进行性质和特征方面的观察。典型例证:(1)天文学家对遥远星球的位置、运行轨道所进行的观察
树木枝干和许多植物的茎秆通常含有大量难以分解的木质素,因此利用它们来提炼生物燃料的效率要大打折扣。目前,人们发现了一种名为红球菌的细菌,它具有分解木头和其他植物巾木质素的能力,因此,人们认为可以将红球菌广泛用于以往大都废弃的茎秆,从而大大提高生物燃料的利用
软件工程的出现是由于【】。
最新回复
(
0
)