2016年6月10日 星期五

台中女中b001~b003

b001: 最後倒數
輸入1個正整數n,依所輸入的n再輸入n個整數,倒著印出,例如:
輸入的n4, 接著的4個數為 2 4 6 8 則印出 8 6 4 2
須宣告整數n、陣列a[10] ,i,因題目規定最多10個:int n, a[10],i;
讀入ncin >>n;
讀入n個數至陣列a[i] for(i=0; i<n; ++i) cin >>a[i];
倒著印出,且數字間空1格: for(i=n-1; i>=0; --i) cout <<a[i]<<” “;
印完所有數字後印換行: cout << endl;

b002: 找最大值
輸入1個正整數n,依所輸入的n再輸入n個整數,找出最大值印位置及值,例如:
輸入的n5, 5個數為 444 888 555 777 999 則印出 5 999
須宣告整數n、陣列a[10],i ,因題目規定最多10個:int n, a[10],i;
讀入ncin >>n;
讀入n個數至陣列a[i] for(i=0; i<n; ++i) cin >>a[i];
p=0, m=a[0]為最大: int p=0, m=a[0]
再由a[1]~a[n-1]找最大: for(i=1; i<n; ++i)
若比m大,則換成a[i],並記住位置:if(a[i]>m) { m=a[i]; p=i; }
印出位置p+1及最大值m cout <<p+1 <<” “ << m << endl;

b003: 資料分組
輸入1個正整數n,依所輸入的n再輸入n個整數,再輸入1m,算出這n個數中
  
m大的個數有x個,比m小的個數有y個,印出 x y ,例如
輸入的n5, 5個數為 5 4 3 2 1 , m4 則印出 1 3
須宣告整數n,m、陣列a[10]int n,m, a[10];
讀入ncin >>n;
以下使用i也要宣告: int i;
讀入n個數至陣列a[i] for(i=0; i<n; ++i) cin >>a[i];
讀入mcin >>m;
x=0, y=0 int x=0 , y=0;
a[0]~a[n-1]判斷>m<m for(i=0; i<n; ++i) {  以下兩行  }
若比m大,則x+1if(a[i]>m) x++;
若比m小,則y+1if(a[i]<m) y++;  // 6/11更正
印出xy中間有空1格 cout <<x <<” “ << y << endl;


0 意見:

張貼留言