如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
计算机三级网络技术上机题库及答案计算机三级网络技术上机题库及答案网络技术考核计算机网络基础知识及计算机网络应用系统开发和管理的基本技能。以下是小编帮大家整理的计算机三级网络技术上机题库及答案,仅供参考,欢迎大家阅读。函数ReadDat()的功能是实现从文件ENG51.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,结果仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS51.DAT中。替代关系:f(p)=p*11mod256(p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)的值小于等于32或f(p)对应的字符是数字0至9,则该字符不变,否则将f(p)所对应的字符进行替代。注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。试题程序:#include#include#include#includeunsignedcharxx[50][80];intmaxline=0;/*文章的总行数*/intReadDat(void);voidWriteDat(void);voidencryptChar(){}voidmain(){system("CLS");if(ReadDat()){printf("数据文件ENG51.IN不能打开!07");return;}encryptChar();WriteDat();}intReadDat(void){FILE*fp;inti=0;unsignedchar*p;if((fp=fopen("ENG51.IN","r"))==NULL)return1;while(fgets(xx[i],80,fp)!=NULL){p=strchr(xx[i],'');if(p)*p=0;i++;}maxline=i;fclose(fp);return0;}voidWriteDat(void){FILE*fp;inti;fp=fopen("PS51.DAT","w");for(i=0;i<maxline;i++){printf("%s",xx[i]);fprintf(fp,"%s",xx[i]);}fclose(fp);}【参考答案及解析】voidencryptChar(){inti,j;/*定义循环控制变量*/intstr;/*存储字符串的长度*/charch;/*存储当前取得的字符*/for(i=0;i{str=strlen(xx[i]);/*求得当前行的字符串长度*/for(j=0;j{ch=xx[i][j]*11%6;if(ch<=32ch="">='0'&&ch<='9'))continue;/*如果计算后的值小于等于32或f(p)对应的'字符是数字0至9,则该字符不变*/elsexx[i][j]=ch;/*否则按给定的替代关系进行替代*/}}}【解析】本题要求对二维数组中的字符元素逐行进行处理。首先用strlen()函数得到当前行所包含的字符个数。再利用一个循环来依次访问该行中的所有字符。对于每一个字符,先按照题目中的函数替代关系"f(p)=p*11mod256"计算出相应的fp的值,再用一条if语句判断该值是否符合本题给定的条件:"计算后f(p)的值小于等于32或f(p)对应的字符是数字0至9"。如果符合条件,则该字符不变,否则用f(p)所对应的字符对其进行替代。