1. <small id="kntrr"><delect id="kntrr"></delect></small>
    2. <sub id="kntrr"></sub>
        1. <form id="kntrr"><listing id="kntrr"></listing></form>
            江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
            2008年秋江蘇省計算機二級VC上機真題1

            2008秋江蘇省高校計算機等級考試VC++

               上機1

            :改錯題

            以下程序的功能是:查找10—1000之間的回文素數,所謂回文素數是左右對稱的素數,即從左向右和從右向左讀是相同的素數

            程序正確的運行結果是:

            The results:

            11   101   131   151   181   191   313   353

            373  383   727   757   787   797   919   929

            count=16

            含有錯誤的源程序如下:

            #include <iostream.h>

            #include <math.h>

             

            int prime(int m)             //判斷是否是素數

            {if(m==2)  return 1;        //2是最小的素數

              for(int i=2;i<(int)sqrt(m);i++)   //i小于等于平方根,應為i<=sqrt(m)

                if(m%i==0) return 0;

              return 1;

            }

             

            void main()

            {int i,j,k,count;        //count沒有初始化為隨機數,所以應為0,因為count要判斷有多少回文素數

             cout<<”The result:\n”;

             for(int s=11;s<1000;s+=2){

               if(prime(s)){       //如果是素數,則分解該素數

                 i=s/100;        //i為百位數

                 j=s%10/10;       //j為十位數,所以應為j=s/10%10       

                 k=s%10;         //k為個位數

              }

             if(i==0 && j==k ||i!=0&&i==j){          //如果是兩位素數,那么應為十位數j等于個位數k,

               cout<<s<<’\t’;                      //如果是三位素數,那么應為百位數i等于個位數k,所以應為i==k

               count++;

              if(count%8==0) cout<<endl;            //輸出8個數值后轉到下一行

            }

            }

            cout<<”count=”<<count<<endl;

            }

            二、編程題(20分)

            [題目]

                試定義一個類Torch,計算奧運火炬傳遞的總時間,具體要求如下:

            (1)私有成員

                   int d,h,m,s:分別表示奧運火炬傳遞的天數、小時數、分鐘數及秒數

            (2)公有成員

                  Torch(char *p):構造函數,用指針p所指向的全部由數字構成的8位字符串初始化火炬傳遞時間,其中,天、時、分、秒分別用兩位字符表示(假設火炬傳遞時間不超過99天),例如,

            當char *p="06150650"時,則d=6,h=15,m=6,s=50

                   void add(Torch &t):將參數t所表示的火炬傳遞時間加入當前對象

                  void normal():將當前對象所表示的時間轉化為標準形式,即當秒數超過59時進位分鐘,當分鐘超過59時進位小時,當小時數超過23時進位天數

                  void print()  :按規定格式輸出火炬傳遞的天數、小時數、分鐘數與秒數

                在主函數中首先定義一個Torch對象t(各數據成員的初始值都為0),表示火炬傳遞的總時間,接著依次輸入若干個不同城市火炬傳遞的天數,小時數,分鐘數與秒數(需要為各城市定義一個Tourch對象,并判斷輸入數據的格式是否正確),并將火炬傳遞時間加入到對象t中,

            輸入/輸出示例:

            輸入城市1的火炬傳遞時間,輸入end結束:  01084523

            輸入城市2的火炬傳遞時間,輸入end結束:  01091224

            輸入城市3的火炬傳遞時間,輸入end結束:  011020304

            輸入格式不對,請重新輸入

            輸入城市3的火炬傳遞時間,輸入end結束:  01102030

            輸入城市4的火炬傳遞時間,輸入end結束:  end

            火炬傳遞的時間為:4天4小時18分17秒

            [說明]源程序文件必須為myfb.cpp,并放在T盤根目錄下,供閱卷用

            国产在线精品一区二区三区不卡_亚洲第一极品精品无码_永久免费无码网站在线观看_亚洲av综合日韩