欧美一级a看免费观看,一本在线视频在线观看,国产偷自拍对白在线视频,精品欧美一区二区在线观看

    1. <dfn id="ktbui"><var id="ktbui"></var></dfn>
    2. 您當(dāng)前位置: 唯學(xué)網(wǎng) » 計算機(jī)等級考試培訓(xùn) » 三級專題

      計算機(jī)三級網(wǎng)絡(luò)技術(shù)上機(jī)模擬題及答案解析

      來源:唯學(xué)網(wǎng)•教育培訓(xùn)(www.jscs8.com)  【唯學(xué)網(wǎng) • 中國教育電子商務(wù)平臺】 加入收藏

      2013年的計算機(jī)等級考試已經(jīng)在去年9月份結(jié)束了,離2014年上半年計算機(jī)等級考試還有2個月的時間,需要參加計算機(jī)考試的考生應(yīng)抓緊時間復(fù)習(xí),需要提醒的是在復(fù)習(xí)前應(yīng)該了解考試大綱,有重點、有計劃、有目的的進(jìn)行,小編希望考生都能順利通過考試。

      讀函數(shù)ReadDat()實現(xiàn)從文件ENG52.IN中讀取一篇英文文章,存入到字符串?dāng)?shù)組xx中。請編制函數(shù)encryptChar(),按給定的替代關(guān)系對數(shù)組xx中的所有字符進(jìn)行替代,仍存入數(shù)組xx的對應(yīng)的位置上,最后調(diào)用寫函數(shù)WriteDat()把結(jié)果xx輸出到文件PS52.DAT中。

      替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組xx中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)的值小于等于32或f(p)對應(yīng)的字符是小寫字母,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。

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

      原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個字符。

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

      試題程序:

      #include

      #include

      #include

      #include

      unsigned char xx[50][80];

      int maxline = 0; /* 文章的總行數(shù) */

      int ReadDat(void);

      void WriteDat(void);

      void encryptChar()

      { }

      void main()

      {

      system("CLS");

      if(ReadDat())

      {

      printf("數(shù)據(jù)文件ENG52.IN不能打開!\n\007");

      return;

      }

      encryptChar();

      WriteDat();

      }

      int ReadDat(void)

      {

      FILE *fp;

      int i = 0;

      unsigned char *p;

      if((fp = fopen("ENG52.IN", "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(void)

      {

      FILE *fp;

      int i;

      fp = fopen("PS52.DAT", "w");

      for (i = 0; i < maxline; i++)

      {

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

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

      }

      fclose(fp);

      }

      【答案】

      void encryptChar()

      {

      int i,j; /*定義循環(huán)控制變量*/

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

      char ch; /*存儲當(dāng)前取得的字符*/

      for(i=0;i

      {

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

      for(j=0;j

      {

      ch=xx[i][j] *11%256;

      if ((ch>='a' && ch<='z') || ch<=32)

      /*如果計算后的值小于等于32或?qū)?yīng)的字符是小寫字母*/

      continue;

      else

      xx[i][j]=ch; /*否則用新字符來替代這個字符*/

      }

      }

      }

      【解析】本題要對二維數(shù)組中的字符元素按行來處理。

      首先用strlen()函數(shù)得到當(dāng)前行所包含的字符個數(shù)。

      然后再利用一個循環(huán)來依次訪問該行中的所有字符。對于每一個字符,先按照題目中的函數(shù)替代關(guān)系"f(p)=p*11 mod 256"計算出相應(yīng)的fp值,再用一條if語句判斷該值是否符合本題給定的條件:"計算后f(p)的值小于等于32或f(p)對應(yīng)的字符是小寫字母"。如果符合條件,則該字符不變,否則用f(p)所對應(yīng)的字符對其進(jìn)行替代。

      如若獲知更多關(guān)于計算機(jī)等級考試培訓(xùn)的資訊,請隨時關(guān)注唯學(xué)網(wǎng)計算機(jī)培訓(xùn)欄目,小編會為您在第一時間做出相關(guān)報道。

      0% (0)
      0% (10)
      已有條評論
      新聞瀏覽排行