亚洲国产福利在线一二三观看_精品国产伦一区二区三区欲臀_国产a∨视频精品视频护士_精品八戒人妻少妇av

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
江蘇二級VC2008春上機2

 

 

    2008()上機試卷(02)

    (本試卷上機時間為70分鐘)

一、改錯題(20)

【題目】

    以下程序的功能是:統(tǒng)計和輸出企業(yè)產(chǎn)品銷售記錄。設每個產(chǎn)品銷售記錄由產(chǎn)品代碼

dm(4個字符)、產(chǎn)品名稱mc(2個字符)、單價dj、數(shù)量sl、金額je四部分組成。其中,金額=

單價*數(shù)量。以下程序中函數(shù)sort()的功能是按產(chǎn)品代碼從大到小對產(chǎn)品銷售記錄進行排序;若產(chǎn)品代碼相同,則按金額從大到小進行排序,最后調(diào)用函數(shù)print()輸出結(jié)果。

  含錯誤的源程序如下:

    #include <iostream.h>

    #include <string.h>

    struct PROD{

          char dm [5],name[3];

          int sl,dj,je;

    };

    void computerje(PROD p1[],int n)    //計算產(chǎn)品金額

    {  for(int i=0;i<n;i++)

         (p1+i).je=(p1+i).dj *(p1+i).sl;

    }

    void sort(PROD p1[],int n)

    {  for(int i=0;i<n;i++){

         for(int j=i+1;j<n;j++){

          if(strcmp(p1[i].dm,p1[j].dm)<0){

           t=p1[i];

           p1[i]=p1[j];

           p1[j]=t;

    }

    else if(strcmp(p1[i].dm,p1[j].dm)=0)

      if(p1[i].je<p1[j].je){

       PROD t=p1[i];

       p1[i]=p1[j];

       p1[j]=t;

 

    }}}

    }

    void print(PROD *p1,int n)

    {  for(int i=0;i<n;i+}){   

         cout<<p1[i].dm<<','<<p1[i].name<<',';

         cout<<p1[i].s1<<','<<pl[i].dj<<','<<p1[i].je<<endl;

       }

    }

    void main()

    {PROD pr[4]={{"1001","AA",4,15},{"4000","BB",3,45},{"4000",

                   "CC",6,53},{"8546","DD",1,43}};

    computerje(pr,4);

    sort(pr,4);

    print(pr,4);

    }

【要求】

    1.把上述程序錄人到文件myfa.epp,根據(jù)題目要求及程序中語句之間的邏輯關(guān)系

對程序中的錯誤進行修改。程序中的注解可以不輸入。

    2.改錯時,可以修改語句中的一部分內(nèi)容,增加少量的變量說明、函數(shù)原型說明或

編譯預處理命令,但不能增加其他語句,也不能刪去整條語句。

    3.改正后的源程序文件myfa.epp必須放在T:盤的根目錄下,供閱卷用。

二、編程題(20)

【題目】

    試定義一個類NUM,實現(xiàn)將一維數(shù)組中各整數(shù)元素去掉其中相同數(shù)字后再對數(shù)組從小

到大排序。將一個整數(shù)去掉相同數(shù)字是指:如果一個整數(shù)中有相同的數(shù)字,則保留從左數(shù)起

,第一次看到的那個數(shù)字,而將其他相同的數(shù)字去掉。例如:數(shù)字12324151中有三個1、兩個2,則去掉相同的數(shù)字后變?yōu)?/SPAN>12345。具體要求如下:

  (1)私有數(shù)據(jù)成員。

  int a [5]:存放需處理的數(shù)組。

  (2)公有成員函數(shù)。 

  NUM(int t[],int n):構(gòu)造函數(shù),t初始化a,nt的元素個數(shù)。

  void sort(int t[],int n):將數(shù)組t的元素從小到大排序。

  int convert(int n):去除n中相同的數(shù)字并返回新得到的數(shù)。

  void fun():將數(shù)組a的各元素去除相同的數(shù)字后從小到大排列。要求調(diào)用函數(shù)

    convert()sort()。

  void print():輸出數(shù)組a的所有元素。

  (3)在主函數(shù)中對該類進行測試。

  輸入/輸出示例(下劃線部分為鍵盤輸入):

    輸入5個整數(shù):1213  65666  22313  12314  34435

    處理前的數(shù)組為:1213  65666  22313  12314  34435

    處理后的數(shù)組為:65  123  231  345  1234

【要求】   

  源程序文件名必須為myth.cpp,并放在T:盤的根目錄下,供閱卷用。