<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 試題

    計算機等級考試三級網絡技術上機題及答案

    時間:2025-05-05 11:47:49 試題 我要投稿
    • 相關推薦

    2016年計算機等級考試三級網絡技術上機題及答案

      函數ReadDat( )的功能是實現從文件IN64.DAT中讀取一篇英文文章存入到字符串數組xx中。請編制函數CharConvA( ),該函數的功能是:以行為單位把字符串的最后一個字符ASCII值右移4位后加最后第二個字符的ASCII值,得到最后一個新的字符,最后第二個字符的 ASCII值右移4位后加最后第三個字符的ASCII值,得到最后第二個新的字符,以此類推一直處理到第二個字符,第一個字符的ASCII值加最后一個字符的ASCII值,得到第一個新的字符,得到的新字符分別存放在原字符串對應的位置上,把已處理的字符串仍按行重新存入字符串數組xx中,最后調用函數 WriteDat( )把結果xx輸出到文件OUT64.DAT中。

    2016年計算機等級考試三級網絡技術上機題及答案

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

      原始文件存放的格式是:每行的寬度小于80個字符,含標點符號和空格。

      請勿改動主函數main( )、讀函數ReadDat( )和寫函數WriteDat( )的內容。

      試題程序:

      #include

      #include

      #include

      char xx[50][80];

      int maxline=0;

      int ReadDat();

      void WriteDat();

      void CharConvA(void)

      {

      }

      void main()

      {

      system("CLS");

      if (ReadDat())

      {

      printf("數據文件IN64.DAT不能打開!\n\007");

      return;

      }

      CharConvA( );

      WriteDat();

      }

      int ReadDat(void)

      {

      FILE *fp;

      int i=0;

      char *p;

      if((fp=fopen("IN64.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("OUT64.DAT","w");

      for(i=0;i

      {

      printf("%s\n",xx[i]);

      fprintf(fp,"%s\n",xx[i]);

      }

      fclose(fp);

      }

      【參考答案及解析】

      void CharConvA(void)

      {

      int i,j,k; /*定義循環控制變量*/

      int str; /*存儲字符串長度*/

      char ch; /*暫存最后一個字符*/

      for(i=0;i

      {

      str=strlen(xx[i]); /*求得當前行的字符串長度*/

      ch=xx[i][str-1]; /*將最后一個字符暫存入ch*/

      for(j=str-1;j>0;j--) /*從最后一個字符開始,直到第二個字符*/

      xx[i][j]=(xx[i][j]>>4)+xx[i][j-1];

      /*當前字符ASCII值右移4位加前一個字符的ASCII值,得到新的當前字符*/

      xx[i][0]+=ch;

      /*第一個字符的ASCII值加最后一個字符的ASCII值,得到新的第一個字符*/

      }

      }

      【解析】本題考查的是二維數組的訪問。

      首先保存最后一個字符,利用for循環由后向前逆序訪問數組中的字符。

      將當前獲取字符的ASCII值右移4位加前一個字符的ASCII值,得到新的當前字符。

      最后,將第一個字符的ASCII值加上保存的最后一個字符的ASCII值,得到新的第一個字符。

    【計算機等級考試三級網絡技術上機題及答案】相關文章:

    計算機等級考試三級網絡技術上機題09-12

    2016計算機考試三級網絡技術上機題及答案08-26

    2016計算機三級網絡技術上機題及答案07-28

    計算機等級考試三級網絡技術真題10-09

    2016年三級網絡技術上機題及答案10-17

    2016最新三級網絡技術上機題及答案10-08

    2017計算機等級考試三級網絡技術真題08-17

    最新計算機等級考試三級網絡技術真題08-18

    計算機等級考試三級網絡技術填空題08-30

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人