函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中;请编制函数CharConvA,其函
函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中;请编制函数CharConvA,其函数的功能是:以该文章中的行为单位把字符串中的最后一个字符的ASCII值右移4位二进制位,高位补0后加倒数第二个字符的 ASCII值,得到最后一个新的值,倒数第二个字符的ASCII值右移4位二进制位,高位补0后加倒数第三个字符的ASCII值,得到倒数第二个新的值,以此类推一直处理到第二个字符。注意:第一个新的值与上述处理不同,第一个字符的ASCII值加原最后一个字符的ASCII值,得到第一个新的值。得到的新值分别存放在原字符串对应的位置上,之后把已处理的结果仍按行重新存入数组中XX最后Xmain函数调用函数WriteDat把结果XX输出到文件out.dat中。 原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按字符处理。 注意:部分源程序存放在test.g文件中。 请勿改动主函数main、读数据函数ReadDat和输出数据函数WriteDat的内容。
【审题关键句】字符的ASCII值右移4位二进制位,高位补0后加其前一个字符的ASCII值,依次向前直到第二个字符,第一个字符则是原第一个字符的ASCII值加最后一个字符的ASCII值。
【解题思路】
定义循环变量i、j和字符变量tmp。
在for循环语句中,循环变量i从0开始,依次递增直到其值等于文章最大行数maxline。在循环体中,首先把第i行字符串的最后一个字符赋给字符tmp,通过表达式“strlen(xx[i])一1”可以得到第i行最后一个字符的数组下标值;然后再继续通过一个for循环从文章第i行字符串的最后一个字符开始,每循环一次循环变量减1,字符xx[i][j]的ASCII码的二制位右移4位与其前一个字符xx[i][j-1]的ASCII码之和赋给字符)XX[i][j],直到第i行字符串的第二个字符为结束;最后,将第i行字符串的最后一个字符的ASCII码值与第i行字符串的第一个字符的ASCII码值之和赋给第一个字符。
【参考答案】
一下matlab程序错在哪clear allclclamada=0.3;theta=0.7;m=0 其他 2020-05-16 …
R&D Center 英语怎么念?研发中心/技术中心 好像很多书面材料都写成 R&D Center 英语 2020-05-17 …
关系模式分解BCNF考虑到关系模式R(A,B,C,D,E),以下函数依赖集F={A→B,B→A,B 数学 2020-05-23 …
A.πA,D(σC=D(R×S))B.πA,R,D(σS,C=R,D/(R×S))C.πA,R,D( 计算机类考试 2020-05-26 …
A.πA,D(σC=D(R×S))B.πA,R.D(σR.C=S.D(R×S))C.πA,R.D(σ 计算机类考试 2020-05-26 …
A.πA,D(σC=D(R×S))B.πA,R.D(σS.C=R.D(R×S))C.πA,R.D(σ 计算机类考试 2020-05-26 …
关于行列式的一个问题我高中学的就是D=D1=D2=D3的时候,有无数解.(5-r)X+2Y+2Z= 数学 2020-07-09 …
阅读材料,完成下列要求。材料一我国2012~2015年规模以上工业企业R&D经费情况项目年份201 政治 2020-07-09 …
请问英语中英音发音发ə(额)的音是要不要发r?也就是儿化...注意是英音发音时...比如bird照英 英语 2020-11-05 …
材料一:我国2011-2014年规模以上工业企业R&D经费情况 注:R&D指研究与实验发展,国际上通 政治 2020-12-01 …