niusouti.com

函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数eneryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数WriteDat把结果xX输出到文件 out.dat中。 替代关系:f(p)=p*11 mod 256,mod为取余运算,P是数组XX中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是大写字母,则该字符不变,

题目

函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数eneryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数WriteDat把结果xX输出到文件 out.dat中。 替代关系:f(p)=p*11 mod 256,mod为取余运算,P是数组XX中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是大写字母,则该字符不变,否则用 f(p)替代所对应的字符。 注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。 请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。


相似考题
更多“ 函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数eneryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数Wri”相关问题
  • 第1题:

    函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到无符号字符串数组xx中;请编制函数encryptChar,按给定的替代关系对数组xx中的所有字符进行替代,其替代值仍存入数组xx的对应的位置上,最后调用函数WriteDat把结果xx输出到文件out.dat中。 替代关系:f(p)=p*11 mod256,mod为取余运算,P是数组xx中某一个字符的ASCII值,f(p)是计算后无符号的整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是小写字母,则该字符不变,否则用f(p)替代所对应的字符。 注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。 请勿改动主函数main、读数据函数ReadDat和输出数据函数WriteDat的内容。


    正确答案:
    【审题关键句】字符替代f(p)=p*11 mod256,小于等于32或对应小写字母不变,否则替换。
    【解题思路】
    本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。
    【参老答案】

  • 第2题:

    函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数encryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数WriteDat把结果XX输出到文件 out.dat中。 替代关系:f(p)=p*[3 mod 256,mod为取余运算,P是数组xx中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或是偶数,则该字符不变,否则用f(p)替代所对应的字符。注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。


    正确答案:
    【审题关键句】字符替代f(p)=p*13mod256,小于等于32或ASCII码是偶数不变,否则替换。
    【解题思路】
    本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。
    【参考答案】

  • 第3题:

    函数ReadDat( )的功能是实现从文件IN7.DAT中读取一篇英文文章存入到字符串数组xx中。请编制函数SortCharD( ),该函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat( )把结果xx输出到文件OUT7.DAT中。

    例如,原文:dAe,BfC

    CCbbAA

    结果:fedCBA,

    bbCCAA

    原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。

    注意:部分源程序已给出。

    请勿改动主函数main( )、读函数ReadDat( )和写函数WriteDat( )的内容。


    #include
    #include
    #include
    char xx[50][80];
    int maxline=0;
    int ReadDat(void);
    void WriteDat(void);
    void SortCharD()
    {
    int i,j,k; /*定义循环控制变量*/
    int str; /*存储字符串的长度*/
    char temp; /*定义数据交换时的暂存变量*/
    for (i=0;i
    {
    str=strlen(xx[i]); /*求得当前行的字符串长度*/
    for(j=0;j
    for(k=j+1;k
    if(xx[i][j]
    {
    temp=xx[i][j];
    xx[i][j]=xx[i][k];
    xx[i][k]=temp;
    }
    }
    }
    void main()
    {
    system("CLS");
    if (ReadDat())
    {
    printf("数据文件IN7.DAT不能打开!\n\007");
    return;
    }
    SortCharD();
    WriteDat();
    }
    int ReadDat(void)
    {
    FILE *fp;
    int i=0;
    char *p;
    if((fp=fopen("IN7.DAT","r"))==NULL)
    return 1;
    while (fgets(xx[i],80,fp)!=NULL)
    {
    p=strchr(xx[i],'\n');
    if (p) *p=0;
    i++;
    }
    maxline=i;
    fclose(fp);
    return 0;
    }
    void WriteDat()
    {
    FILE *fp;
    int i;
    system("CLS");
    fp=fopen("OUT7.DAT","w");
    for(i=0;i
    {
    printf("%s\n",xx[i]);
    fprintf(fp,"%s\n",xx[i]);
    }
    fclose(fp);
    }

  • 第4题:

    函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中;请编制函数SortCharD,其函数的功能是:以行为单位对字符按ASCII码从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中。最后main函数调用函数WriteDat把结果XX输出到文件out.dat中。 例:原文:dAe,BfC. CCbbAA结果:fedCBA.,bbCCAA原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。 注意:部分源程序存放在test.C文件中。 请勿改动主函数main、读数据函数ReadDat和输出数据函数WriteDat的内容。


    正确答案:
    【审题关键句】以行为单位对字符按从大到小排序,结果仍按行重新存入字符串数组中。
    【解题思路】
    ①首先定义字符变量ch和无符号整型变量i、j、k。
    ②对字符二维数组XX,在第一层for循环中,变量i从0开始,依次递增直到其值等于maxline,实现对文章每行的扫描,在第二层for时循环中,变量j从0开始,依次递增直到其值等于strlen(xx[i]),即第i行的长度。在第三层循环语句中,变量k从j开始,依次递增直到其值等于strlen(xx[i]),对每一行中的数组元素xx[il[j]、XX[i][k]按照它们的ASCII码值的大小进行比较,如果xx[i][j]的ASCII码小于XX[i][k]的ASCII码,则两者交换,实现整篇文章中的字符按ASCII码值从大到小的顺序进行排序。
    【参考答案】

  • 第5题:

    函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组)xx中;请编制函数encryptChat,按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数WriteDat把结果XX输出到文件 out.dat中。 替代关系:f(p)=p*11 mod 256,mod为取余运算,p是数组)xx中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是数字0至9,则该字符不变,否则用 f(p)替代所对应的字符。 注意:部分源程序存放在test.C文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。


    正确答案:
    【审题关键句】字符替代f(p)=p*11mod256,小于等于32或对应数字0-9不变,否则替换。
    【解题思路】
    本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。
    【参考答案】