首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上, 替代关系:f(p)=p*11 mo
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上, 替代关系:f(p)=p*11 mo
admin
2009-02-24
68
问题
函数ReadDat()的功能是实现从文件ENG9.IN中读取一篇英文文章,存入到字符串数组xx中。请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,
替代关系: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++)
{
printf("%s\n", xx
);
fprintf(fp, "%s\n", xx
); }
fclose (fp);
}
选项
答案
void encryptChar() { int i; char*pf; for(i=0;i<maxline;i++) pf=xx[i]; /*指针pf指向当前行的首地址*/ whilie(*pf!=0) { if(*pf%2==0 ||*pf*11%256<=32); /*如果原字符的ASCII值是偶数或计算后 的值小于等于32,则该字符不变*/ else *pf=*pf*11%256; /*否贝Jj将所对应的字符进行替代*/ pf++; /*指针pf指向下一个字符*/ } } }
解析
本题主要考查用指针变量来控制字符数组,由于要对已有二维字符数组的所有元素逐个处理,因此,需要定义一个字符指针变量来控制原二维数组的各行。当前行如果确定下来,用指针的移动就可以依次扫描该行的所有字符元素,每得到一个字符就对它进行条件判断。根据题意,条件用“if(*pf%2++0|| *pf*11%256<=32)”来实现,如果该字符不满足上述条件,就用一个新的字符来替代,新的字符是当前字符乘以11的结果再去与256求余数,处理完毕后,指针去取下一个字符。如果该字符满足所给条件,将不做任何操作,指针直接下移,去取下一个字符,对下一个字符进行处理。
转载请注明原文地址:https://kaotiyun.com/show/5RYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
新一代数据库应用开发工具应具备的特征有Ⅰ.支持与多种数据库连接Ⅱ.支持可视化图形用户界面Ⅲ.支持面向对象的程序设计Ⅳ.支持开放性Ⅴ.提供完善的数据对象
在计算机的应用领域中,CAI表示
Armstrong公理系统的3条推理规则是______、增广律和传递律。
在SQL中,视图(view)是三级模式结构中的()。
关系数据模型由关系数据结构、关系操作集合和____________三大要素组成。
下面软件结构图表示的是浏览器/服务器模式的哪种结构
若关系R和S的关系代数操作的结果如下,这是执行了
双链表的每个节点包括两个指针域。其中rlink指向节点的后继,llink指向节点的前驱。如果要在p所指节点后插入q所指的新节点,下面哪一个操作序列是正确的?
设有关系模块R(B,C,M,T,A,G),根据语义有如下函数依赖集:F=(B→C,(M,T)→B,(M,C)→T,(M,A)→T,(A,B)→G}。则关系模式R的候选码是______。
不属于密码学的作用有_______。
随机试题
民之有口也,犹土之有山川也,财用于是乎出;犹其原隰之有衍沃也,衣食于是乎生。口之宣言也,善败于是乎兴。行善而备败,其所以阜财用衣食者也。夫民虑之于心,而宣之于口,成而行之,胡可壅也?若壅其口,其与能几何?(《邵公谏厉王弭谤》)这段话说明了什么道理?
试述公共政策调整的原因。
我国流行的流行性出血热病毒主要是
已知f(x)的一个原函数为xsinx,则∫f(x)f’(x)dx=()。
建设工程材料采购合同条款规定,若合同材料经检验达到了合同约定的最低质量标准的,视为材料符合质量标准,买方应验收材料,但卖方应按专用合同条款的约定()。
下列各项中,属于汇票特有的制度的是()。
甲、乙、丙、丁四个人分别站在一正方形跑道的四个直角上,各自选择顺时针或逆时针跑,已知四人以相同的速度同时开始跑,问四人不会相互碰到的概率是多少?
设m∈R,过定点A的动直线x+my=0和过定点B的动直线mx-y—m+3=0交于点P(x,y),则|PA|+|PB|的取值范围是()
泰山:华山:五岳
过失犯罪的特征是()
最新回复
(
0
)