函数Rdata实现从文件in.dat中读取一篇英文文章,存入到字符串数组string中,请编写函数CharRight,
函数Rdata实现从文件in.dat中读取一篇英文文章,存入到字符串数组string中,请编写函数CharRight,其函数的功能是:以行为单位把字符串中的最后一个字符的ASCII值右移4位后加倒数第二个字符的ASCII值,得到最后一个新的字符,倒数第二个字符的ASCII值右移4位后加倒数第三个字符的ASCII值,得到倒数第二个新的字符,依此类推,一直处理到第二个字符,第一个字符的ASCII值加原最后一个字符的ASCII值,得到第一个新的字符,得到的新字符分别存放在原字符串对应的位置上。最后已处理的字符串仍按行重新存入字符串数组string中,最后调用函数Wdata,把结果string输出到文件out.dat中。 原始数据文件存放的格式是:每行的宽度均小于80个字符(含标点符号和空格)。注意:部分源程序已经给出。 请勿改动主函数main、读函数Rdata和写函数Wdata的内容。
【审题关键句】以行为单位,新字符串中每个字符的ASCII码值等于该位置上的原字符ASCII码值的二进制右移4位后加其前一个字符的ASCII码值。
【解题思路】
①定义整型循环变量i、j和表示字符串长度的整型变量str1,以及字符局部变量ch。
②在第一层for循环中,循环变量i从0开始,依次递增直到其值等于maxline,在循环体中,利用库函数stflen求得字符串string[i]的长度,把此值赋给变量strl。把字符串string[i]的最后一个字符string[i][str1-1]赋给字符变量ch,暂时保存起来。在第二层for循环中,循环变量j从str1-1开始,依次递减直到其值小于或等于0,在循环体中,字符string[i][j]的ASCII码值右移4位,然后再与字符string[i][j-1]的ASCII码值相加的和保存到字符string[i][j]中。当退出第二层for循环后,把第i行的第一个字符string[i][0]与最后一个字符ch的值相加,保存在string[i][0]中。
【参考答案】

在下列线性表中,限定仅在表的一端进行插入和删除运算的线性表是A.队列B.栈C.串D.数组 计算机类考试 2020-05-23 …
串的长度是指A.串中所含不同字母的个数B.串中所含字符的个数C.串中所含不同字符的个数D.串中所含 计算机类考试 2020-05-24 …
实施BSP方法有其总体目标和具体目标,其具体目标是A.提高企业部门作用B.实现分布数据管理C.实现数 计算机类考试 2020-05-24 …
●友元作用 (38) 。(38) A.提高程序的运行效率 B.加强类的封装性 C.实现数据的隐藏性 计算机类考试 2020-05-25 …
●引入索引的目的是为了(49)。(49)A.提高查询语句执行效率 B.提高更新语句执行效率C.实现数 计算机类考试 2020-05-26 …
以下关于数字签名的说法,正确的是()。 A.数字签名可保证信息传输过程中信息的完整性 B.数字签名可 计算机类考试 2020-05-26 …
A.将计算机连接到通信介质上B.进行电信号匹配C.实现数据传输D.网络互连 计算机类考试 2020-05-26 …
友元作用(38)。A.提高程序的运行效率B.加强类的封装性C.实现数据的隐藏性D.增加成员函数的种类 计算机类考试 2020-05-26 …
友元作用(37)。A.提高程序的运用效率B.加强类的封装性C.实现数据的隐藏性D.增加成员函数的种类 计算机类考试 2020-05-26 …
串的长度是()A.串中不同字母的个数B.串中不同字符的个数C.串中所含字符的个数,且大于串的长度是( 其他 2020-11-07 …