首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
函数RData()实现从文件IN.dat中读取一篇英文文章,存入字符串数组str中,请编写函数encryptChar(),其功能是:按给定的替代关系对数组str中的所有字符进行替代后,仍存入数组str的对应位置上。最后调用函数WData(),把结果str输
函数RData()实现从文件IN.dat中读取一篇英文文章,存入字符串数组str中,请编写函数encryptChar(),其功能是:按给定的替代关系对数组str中的所有字符进行替代后,仍存入数组str的对应位置上。最后调用函数WData(),把结果str输
admin
2010-09-05
65
问题
函数RData()实现从文件IN.dat中读取一篇英文文章,存入字符串数组str中,请编写函数encryptChar(),其功能是:按给定的替代关系对数组str中的所有字符进行替代后,仍存入数组str的对应位置上。最后调用函数WData(),把结果str输出到OUT.dat文件中。
替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是大写字母或计算后f(p)值小于等于32,则该字符不变,否则将 f(p)所对应的字符进行替代。
原始数据文件存放的格式是:每行的宽度均小于80个字符。
注意:部分程序已经给出。请勿改动主函数main()、读数据函数RData()和输出数据函数 WData()的内容。
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
unsigned char str[50] [80];
int maxline = 0; /* 文章的总行数 */
int RData (void);
void WData (void);
void encryptChar()
{
}
void main ()
{ if (RData())
{ printf("数据文件 IN. dst 不能打开! \n\007");
return;
}
encryptChar ();
WData ();
}
int RData (void)
{ FILE *fp;
int i = 0;
unsigned char *p;
if ((fp = fopen("IN. dat", "r")) == NULL)
return 1;
while (fgets(str
, 80, fp) != NULL)
{ p = strchr(str
, ’\n’);
if (p)
*p =0;
i++;
}
maxline = i;
fclose (fp);
return 0;
}
void WData(void)
{ FILE *fp;
int i;
fp = fopen("OUT. dat", "w");
for (i=0; i<maxline; i++)
{ printf ("%s\n", str
);
fprintf(fp, "%s\n", str
);
}
fclose (fp);
}
选项
答案
void encryptChar() { int i; char *pf; for (i=0; i<maxline; i++) { pf = str[i]; while (*pf != 0) { if ((*pf>=’A’ && *pf<=’Z’)||*pf*11%256<=32) { pf++; continue; } *pf = *pf * 11 % 256; pf ++; } } } [解题思路] 在for循环语句中对字符串数组str中的每个字符用逻辑表达式(*pf>=’A’&& *pf<=’Z’)||*pf*11%256<=32进行逻辑判断,如果其值为1,则该字符不变,否则按照给定的替代关系f(p)=p*11 mod 256求出其要替代的字符的ASCII值,然后对该字符进行替代。
解析
转载请注明原文地址:https://kaotiyun.com/show/NuvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在数据库的三级模式体系结构中,模式与内模式之间的映像实现了数据库的_____独立性。
在关系数据库设计中,设计关系模式是在数据库设计中()阶段完成的任务。
当对视图进行UPDATE、INSERT和DELETE操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项_____。
从学生选课信息表中“找出无成绩的元组”的SQL语句是______。在“查询选修课程号为4,且成绩在80分以上的所有学生的学号和姓名”的SQL语句中,将使用的表是______。
在数据库中可以创建和删除表、视图、索引,可以修改表。这是因为数据库管理系统提供了______。
PowerDesigner是SYBASE公司的产品,属于CASE工具,与PowerDesigner是SYBASE公司的产品还有【】、【】和【】。
在虚拟段式存储管理中,若逻辑地址的段内地址大于段表中该段的段长,则发生【】。
在操作系统中,系统是通过______来感知进程的存在,通过对它的访问来获得描述进程情况及控制进程运行的全部信息。
设树T的度为4,其中度为1、2、3和4的结点个数分别是4、2、1和1,则T中叶子结点的个数是【】。
为了控制用户程序不能执行特权指令是通过设置PSW中的一个状态位来标志,这一位是
随机试题
态度由哪些要素构成?
实行专营化将对我国的资产评估行业发展产生哪些影响?
患者,男性,56岁。因胸闷、胸痛2小时入院。入院查体:血压86/60mmHg,心率447欠/分,律齐。心电图示:V1~V5导联ST段抬高、Q波形成。患者恢复窦性心律后应该采取的处理方法是
宗教型的人认为()。
甲股份有限公司于2020年7月21日在上海证券交易所挂牌上市。2020年12月20日,公司发布公告说明的下列事项中,符合公司法律制度规定的是()。
1988年,北京圆明园列为全国重点文物保护单位。()
上海的抗日旧址很多,为了更好地利用和宣传这些地方,市里准备制作一本旅游指南,如果让你去组织实施。你怎么做?
根据下面材料回答下列问题。在四个企业中,年利润最高的比最低的多几倍?
在一份报表中设计内容只出现一次的区域是()。
Whatisthesubjectofthisconversation?
最新回复
(
0
)