<samp id="uu9tx"></samp>
        <samp id="uu9tx"><tr id="uu9tx"><nav id="uu9tx"></nav></tr></samp>
        <delect id="uu9tx"><legend id="uu9tx"><meter id="uu9tx"></meter></legend></delect>
                <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp><nav id="uu9tx"></nav>
                <samp id="uu9tx"></samp>
                  <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp>
                  江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
                  2010年秋江蘇二級C上機真題

                      江蘇省高等學校非計算機專業學生

                      計算機基礎知識和應用能力等級考試上機試卷(2010年秋)

                      二級C語言  (試卷代號C01)

                      (本試卷完成時間70分鐘)

                    一、改錯題(16)

                    【程序功能】

                      查找介于n1n2(O<n1<n2<32768)之間所有滿足下列條件的整數:(1)該數的十進

                    制表示中有且僅有兩個相同的數字位;(2)該數是素數。

                    【測試數據與運行結果】

                      測試數據:n1=900

                               n2=1200

                      屏幕輸出:

                      911    919     929    977    991    997    1009    1013

                      1019   1021    1031   1033   1051   1061   1091    1103

                      1109   1123    1129   1153   1163   1187   1193

                    【含有錯誤的源程序】

                      #inelude<stdio.h>

                      #include<math.h>

                      int validate(int n)

                      {  int i,j,k=0,num[5]={0},size=0;

                         do

                         {  num[size]=n%10;

                            n=n/10;

                            size++;

                         }while(n<0);

                         for(i=0;i<size-1;i++)

                           for(j=i+1;j<size;j++)

                             if(num[i]==num[j])

                              k=k+1;

                        if(k>1)

                          return 1;

                        else

                          return 0;

                      }

                      int prime(int)

                      {  int i;

                         for(i=2;i<=(int)sqrt(n);i++)

                           if(n%i==0)retum 0;

                        return 1;

                      }

                      void main()

                      {  int i,count=0,n1,n2;

                         scanf("%d%d",&n1,&n2);

                         for(i=n1;i<=n2;i++)

                         { if(validate(int i)&&prime(int i))

                           {  count++;

                             printf("%d\t",i);

                             if(count%8==0)printf("\n");

                           }

                         }

                      }

                  【要求】

                  1.  將上述程序錄入到文件myf1.C,根據題目要求及程序中語句之間的邏輯關系對程序

                    中的錯誤進行修改。

                  2.  改錯時,可以修改語句中的一部分內容,調整語句次序,增加少量的變量說明或編譯預

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

                  3.  改正后的源程序(文件名myf1.c)保存在T:盤根目錄中供閱卷使用,否則不予評分。

                   

                  二、編程題(24)

                  【程序功能】

                    字符串變換。

                  【編程要求】

                  1.  編寫函數void change(char *a,char *b,char *c)。函數功能是首先把b指向的字符串逆向存放,然后將a指向的字符串和b指向的字符串按排列順序交叉合并到c指向的數組中,兩個字符串中過長的剩余字符接在c指向數組的尾部。例如,a指向的字符串為

                  "abcdefg",b指向的字符串為"1324",C指向的數組中字符串應為"a4b2c3dlefg"。

                  2.編寫main函數。函數功能是聲明字符型數組s1、s2t,用測試數據初始化數組s1

                   s2,再用s1、s2t作為實參調用函數change,將數組s1、s2t中的字符串輸出到屏幕及文件myf2.out中。最后將考生本人的準考證號字符串輸出到文件myf2.out中。

                  【測試數據與運行結果】

                    測試數據:s1:abcdefg

                      s2:1324

                    屏幕輸出:s1:abcdefg

                             s2:4231

                      The result is:a4b2c3dlefg

                  【要求】   

                  1.源程序文件名為myf2.c,輸出結果文件名為myf2.out。

                  2.數據文件的打開、使用、關閉均用C語言標準庫中緩沖文件系統的文件操作函數實現。

                  3.源程序文件和運行結果文件均需保存在T:盤根目錄中供閱卷使用

                  4.不要復制擴展名為objexe的文件到T:盤中。

                   

                   

                  亚洲欧美日韩国产一区二区三区_全亚洲免费一级黄片_国产一区二区三区不卡视频手机版_国产污三级网站在线观看