首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编钊函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编钊函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx
admin
2009-02-19
67
问题
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编钊函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS9.DAT中。
替代关系:f(p)=p*11 mod 256 (p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)的值小于等于32,则该字符不变,否则将f(p)所对应的字符进亍替代。
注意:部分源程序已给出,原始数据文件存放的格式是:每行的宽度均小于80个字符。
请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。
试题程序:
#include <stdio.h>
#include <String.h>
#include <conio.h>
#include <ctype.h>
unsigned char XX[50][80];
int maxline=0;/*文章的总行数*/
int ReadDat(void);
void WriteDat (void);
void encryptChar()
{
}
main ( )
{
clrscr ( );
if (ReadDat ( ) )
{
printf ("数据文件ENG9.IN不能打开! \n\007");
return;
}
encryptChar ( );
WriteDat ();
}
int ReadDat (void)
{
FILE *fp;
int i= 0;
unsigned char *p;
if ( (fp = fopen("ENG9.IN .... 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;
fp = fopen("PS9.DAT", "w" );
for(i = 0; i < maxline; i++)
{
print f ( "%s\n" , xx
);
fprintf(fp, "%s\n", xx
); }
fclose(fp);
}
选项
答案
void encryptChar() { int i; char *pf; for (i=O; i<maxline; i++) { while (*pf ! =0) { if(*pf%2==0 || *pf*11%256<-32); /*如果原字符的ASCII值是偶数或计算*/ else *pf=*pf*11%256; /*否则将所对应的字符进行替代*/ } } }
解析
本题主要考查用指针变量来控制字符数组,由于要对已有二维字符数组的所有元素逐个处理,因此,需要定义一个字符指针变量来控制原二维数组的各行。当前行如果确定下来,用指针的移动就可以依次扫描该行的所有字符元素,每得到一个字符就对它进行条件判断。根据题意,条件用“if(*pf%2==0||*pf*11%256<=32)”来实现,如果该字符不满足上述条件,就用一个新的字符来替代,新的字符是当前字符乘以11的结果再去与256求余数,处理完毕后,指针去取下一个字符。如果该字符满足所给条件,将不做任何操作,指针直接下移,去取下一个字符,对下一个字符进行处理。
转载请注明原文地址:https://kaotiyun.com/show/fZcZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
假定被检验的数据M(x)=1000,其选择生成多项式为G(x)=x3+x+1,该数据的循环冗余校验码(CRC码)应为( )。
计算机使用总线结构的主要优点是便于实现“积木化”,缺点是( )。
现用数据定义伪指令定义数据: BUF DB 4 DUP(0,2 DUP(1,0)) 问定义后,存储单元中有数据0100H的字单元个数是( )。
在Windows98环境下可以安装“Microsoft 网络用户”和“NetWare 网络用户”客户机软件。在使用“NetWare网络用户”时,需要与( )协议进行绑定。
若被连接的程序模块有相同的数据段定义,则这两个程序的数据段应选用下列( )类型才比较合理?
IP协议在计算机网络的互连中起着非常重要的作用。目前广泛使用的IP协议的版本是第【45】_______版,每个IP地址用【46】_______位二进制表示。
NiosII软核处理器的硬件抽象层(HAL)系统库是一个轻量级C/C++运行时环境,属于单线程的类UNIX运行库,关于它所提供的服务如下()项说法是错误的。
为提高SoC芯片设计效率,减少重复开发,通常将合格的经过验证的IC设计文件存储在数据库中,供反复使用。这些IC电路具有固定的不可再分解的功能特性,并受到知识产权保护,人们称之为“知识产权核”或“IP核”。按照IC设计文件的类型,IP核通常分为三种【41】、
某机械设备的控制器,其基本功能要求有:需要有8个数字量输入,用于采集设备的状态信息;且需要8个数字量输出,用于控制设备动作。具备一个RS一232接口,可以和上位机连接,接收上位机发送的命令及参数。需要提供一个基准定时信号,定时时间间隔为0.01秒。
如存储器的工作频率为333MHz,数据线宽度为32位,每个周期传输1次数据,则存储器的带宽=【63】MB/s。若存储器总线采用串行总线,以10位为一个数据帧(包含一个字节的存储数据),则总线带宽=总线频率/【64】。
随机试题
如何对付技术官僚给我们带来的危险呢?古立克的观点是
Theair-linerwassupposedtotakeoffatteno’clockbut______wehadtowaituntileleven.
急性胰腺炎淀粉酶不升高的情况有以下几点,不包括的是
A、医患双方不是双向作用,而是医生对病人单向发生作用B、医患双方在医疗活动中都是主动的,医生有权威性,充当指导者C、医生和病人具有近似同等的权利D、长期慢性病人已具有一定医学科学知识水平E、急性病人或虽病情较重但他们头脑是清醒的指导合作型的特点是(
根据《互联网药品交易服务审批暂行规定》,下列论述错误的是
起重机吊载接近或达到额定值,或起吊危险器(液态金属、有害物、易燃易爆物)前,应认真检查制动器,并用()试吊,确认没有问题后再吊运。’
某单位与某写字楼业主协商租用部分房屋,该单位提出租用期限为25年,写字楼业主认为该要求不符合我国合同法规定的租赁期限。我国合同法规定的租赁期限不得超过()年。
单位在工作中形成的有价值的文件,由文书部门或业务部门整理完毕,定期移交给档案室集中保存,这项工作称为()。
请设计一节课的教案,达到以下目的:1.学生能够通过组织乐队进行演唱来完成对某些词汇的听说读写;2.培养学生运用英语的能力。
Thelinkbetweenhealthandincomeseemsprettyuncontroversial.【C1】______all,healthypeoplecanworklongerandharderthansi
最新回复
(
0
)