首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件IN8.DAT中读取一篇英文文章存入到字符串数组xx中:请编制函数StrCharJP(),该函数的功能是:以行为单位把字符串中的所有字符的ASCII值右移4位,然后把右移后的字符的ASCII值再加上原字符的ASCII
函数ReadDat()的功能是实现从文件IN8.DAT中读取一篇英文文章存入到字符串数组xx中:请编制函数StrCharJP(),该函数的功能是:以行为单位把字符串中的所有字符的ASCII值右移4位,然后把右移后的字符的ASCII值再加上原字符的ASCII
admin
2009-02-19
41
问题
函数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("OUTS.DAT", "w");
for(i = 0; i < maxline; i++)
{
printf("%s\n", xx
);
fprintf(fp, "%s\n", xx
);
}
fclose(fp);
}
选项
答案
void StrCharJR(void) { int i,j,strl; for(i=0;i<maxline;i++) { strl=strlen(xx[i]); /*计算各行字符串的长度*/ for(i=0;j<strl;i++) xx[i][j]+=xx[i][j]>>4; /*字符的ASCII值右移4位再加上原字符的ASCII 值,得到新字符*/ } }
解析
本题考查对二维字符数组元素的操作。注意:字符也可以参与数学运算,只不过用的是其ASCII码值。我们可以利用双重循环按照先行后列的顺序逐个取得数组中的字符(前提是我们需要求得各行字符的总个数),外层循环用来控制行数,内层循环用来依次取得各行中的每一个字符。之后对当前所取得的字符进行右移4位的运算(用到了“>>”右移运算符),然后把右移后得到的字符累加到原来字符中去,这样原来字符就被新的字符所覆盖。
转载请注明原文地址:https://kaotiyun.com/show/EzSZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
Windows 2000的许多核心模块是以动态链接库形式出现的,Win32 API对应的所有函数也均包含在动态链接库中。动态链接库文件的文件扩展名通常是______。
若定义VAR DB 2DUP(1,2,2DUP(3),2DUP(1)),则在VAR存储区内前5个单元的数据是______。
指令ADD CX,[DI+07H]中源操作数的寻址方式是( )。
ARM处理器在大端模式下,如果R0=1,R1=0xFF,而指令LDRR2,[R1,R0]执行后,R2的数据为0xAABBCCDD,内存0x00000100中的数据为___________【49】,0x00000103中的数据为___________【50
μC/OS—II具有良好的可裁剪性和可移植性,能够支持的任务数最多为()。
μC/OS—Ⅱ操作系统是我国广泛使用的一种抢占式实时操作系统,基于μC/OS—Ⅱ的嵌入式系统软件部分由4层组成,按照从上而下的顺序它们是:【75】层,应用程序接口(API)层,【76】层,及设备驱动程序层。
嵌入式系统与通用计算机系统软件的相同之处,指的是嵌入式系统通常也具备【67】加载程序,外设【68】程序,操作系统,文件系统,网络协议栈,图形用户界面,数据库,以及各种各样的应用程序等,这些软件都是通用计算机所拥有的。
为提高片上系统(SOC)的设计效率,减少重复开发,通常大多以IP核为基础在单个芯片上进行集成,组成一个计算机系统。按照IC设计文件的类型,IP核通常分为哪3种类型?
在关系模型中,若属性A是关系R的主码,则在R的任何元组中,属性A的取值都不允许为空,这种约束称为()规则。
用数组A[1..n]顺序存储完全二叉树的各结点,则当i>0,且i<=【】时,结点A[i]的右子女是结点A[2i+1],否则结点A[i]没有右子女。
随机试题
肺癌病人出现Homer征,不包括()
外潜伏期是指
巨噬细胞表面不表达
A.先煎B.后下C.包煎D.煎汤代水E.兑服旋覆花的煎煮方法是
发行金融债券所筹集的资金主要用于()
根据所给资料,回答问题。 2014年,中部地区食品工业发展较快,东北地区明显落后于其他地区。2014年,山东、河南、湖北、江苏、四川、广东、辽宁、湖南、福建、安徽位列食品工业主营业务收入的前十位,共计实现主营业务收入71560.7亿元,占全国食品工业的6
十多年来,香港与内地的经济、社会和文化交流得到了进一步发展。香港的四大基础竞争力是:由独立司法机构支撑的________的法律机制,________的贸易环境,廉明的政府,信息的自由交流。
材料一2017年8月18日,民政部网站公布了指定的慈善组织互联网公开募捐信息平台上半年运营情况,13家指定平台半年来总筹款额超过7.5亿元。据统计,1—6月,13家指定平台共为全国两百多家公募慈善组织及其合作机构发布募捐信息超过1万条。在发布募
关于生活常识,下列说法正确的是()。
Tothatneworderweopposethegreaterconception—themoralorder.Agoodsocietyisabletofaceschemesofworlddomination
最新回复
(
0
)