Board logo

標題: 班上成績處理 (陣列、極端值應用) [打印本頁]

作者: stephen    時間: 2010-5-1 11:12     標題: 班上成績處理 (陣列、極端值應用)

本帖最後由 stephen 於 2010-5-1 11:15 編輯

班上成績處理 (陣列、極端值應用)

1. 決定學生人數
2. 利用 rand() 來產生亂數作為學生成績
3. 求出每個學生的平均
4. 求出第一名與最後一名
5. 列印學生成績

[attach]18[/attach]
作者: b1081081    時間: 2010-5-1 11:15

哈哈我寫好ㄌ
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main(void){
  5.    
  6.     srand(time(NULL));
  7.     int stu_num;
  8.     int max[2];
  9.     max[1] = 0;
  10.     int min[2];
  11.     min[1] = 100;
  12.     cout << "輸入學生人數" << endl;
  13.     cin >> stu_num;
  14.     int title[stu_num][5];
  15.    
  16.     for(int i = 0; i < stu_num; i++){
  17.         title[i][0] = i + 1;
  18.         title[i][1] = 1 + rand()%100;
  19.         title[i][2] = 1 + rand()%100;
  20.         title[i][3] = 1 + rand()%100;
  21.         title[i][4] = (title[i][1]+title[i][2]+title[i][3]) / 3;
  22.         if(title[i][4] > max[1]){
  23.             max[0] = i + 1;
  24.             max[1] = title[i][4];
  25.         }else if(title[i][4] < min[1]){
  26.             min[0] = i + 1;
  27.             min[1] = title[i][4];
  28.         }
  29.     }
  30.    
  31.     cout << max[0] << "號的平均值最大,平均值為" << max[1] << endl;
  32.     cout << min[0] << "號的平均值最小,平均值為" << min[1] << endl;
  33.    
  34.     system("pause");
  35.     return 0;
  36. }
複製代碼

作者: p17johnny    時間: 2010-5-1 11:19

  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. int main(void){
  5.     cout<<"感謝各位的協助"<<endl;
  6.     srand(time(NULL));
  7.     int stu_num;
  8.     int max[2];
  9.     max[1] = 0;
  10.     int min[2];
  11.     min[1] = 100;
  12.     cout << "**請輸入學生人數**" << endl;
  13.     cin >> stu_num;
  14.     int jj[stu_num][5];
  15.    
  16.     for(int i = 0; i < stu_num; i++){
  17.         jj[i][0] = i + 1;
  18.         jj[i][1] = 1 + rand()%100;
  19.         jj[i][2] = 1 + rand()%100;
  20.        jj[i][3] = 1 + rand()%100;
  21.         jj[i][4] = (jj[i][1]+jj[i][2]+jj[i][3]) / 3;
  22.         if(jj[i][4] > max[1]){
  23.             max[0] = i + 1;
  24.             max[1] = jj[i][4];
  25.         }else if(jj[i][4] < min[1]){
  26.             min[0] = i + 1;
  27.             min[1] =jj[i][4];
  28.         }
  29.     }
  30.    
  31.     cout << "!!!"<<max[0] << "號的平均值最大!!!1,~平均值為" << max[1] <<"~"<< endl;
  32.     cout <<"!!!"<< min[0] << "號的平均值最小,平均值為" << min[1] <<"~"<< endl;
  33.    
  34.     system("pause");
  35.     return 0;
  36. }
複製代碼

作者: yachen392    時間: 2010-5-1 11:21

  1. #include<iostream>
  2. #include <cstdlib>
  3. using namespace std;

  4. int main(){
  5.     int stu_n=50;//人數
  6.     int data[stu_n][5];//學生數量成績
  7.     int min[2];
  8.     min[0]=100;
  9.     int max[2];
  10.     max[0]=0;
  11.   
  12.   for(int i=0; i<stu_n; i++){
  13.        data[i][0]=i+1;        // 座號
  14.        data[i][1]=rand()%100; // 成績1
  15.        data[i][2]=rand()%100; // 成績2
  16.        data[i][3]=rand()%100; // 成績3
  17.        data[i][4]=(data[i][1]+data[i][2]+data[i][3])/3;//平均
  18.   
  19.   if(data[i][4]>max[1]){
  20.        max[0]=i+1;
  21.        max[1]=data[i][4];               
  22.   }
  23.   if(data[i][4]<min[1]){
  24.       min[0]=i+1;
  25.       min[1]=data[i][4];                  
  26.   }
  27.    
  28.   cout << data[i][0] << "   " ;
  29.   cout << data[i][1] << "   " ;
  30.   cout << data[i][2] << "   " ;
  31.   cout << data[i][3] << "   " << endl ;
  32.    }
  33.    cout << "第一名是" << max[0] << "號 平均是" << max[1] << endl;
  34.    cout << "最後一名是" <<min[0] << "號 平均是" << min[1] << endl;
  35.    system("pause");
  36.    return 0;  
  37. }
複製代碼

作者: chuangjoy    時間: 2010-5-1 11:26

  1. #include <cstdlib>
  2. #include <iostream>
  3. using namespace std;
  4. int main(void){
  5.    
  6.     int stu_n = 50;
  7.     int data[stu_n][6];
  8.     int min[2];
  9.     min[1] = 100;
  10.     int max[2];
  11.     max[1] = 0;
  12.    
  13.     cout << "請輸入學生人數" << endl;
  14.     cin >> stu_n;
  15.      
  16.     for(int i = 0 ; i < stu_n ; i++){
  17.             data[i][0] = i + 1;   //座號
  18.             data[i][1] = rand()%100;  //成績 1
  19.             data[i][2] = rand()%100;  //成績 2
  20.             data[i][3] = rand()%100;  //成績 3
  21.             data[i][4] = (data[i][1] + data[i][2] + data[i][3]) / 3;  //平均
  22.             
  23.     if(data[i][4] > max[1]){
  24.                   max[0] = i+1;
  25.                   max[1] = data[i][4];
  26.                           
  27.             }else if(data[i][4] < min[1]){
  28.                   min[0] = i+1;
  29.                   min[1] = data[i][4];
  30.             }
  31.             
  32.     }
  33.    
  34.     for(int i = 0 ; i < stu_n ; i++){
  35.             cout << data[i][0] << "    ";
  36.             cout << data[i][1] << "    ";
  37.             cout << data[i][2] << "    ";
  38.             cout << data[i][3] << "    ";
  39.             cout << data[i][4] << "    ";
  40.             cout << endl;
  41.     }
  42.    
  43.     cout << "第一名是 " << max[0] << " 號,平均為 " << max[1] << "分" << endl;
  44.     cout << "最後一名是 " << min[0] << " 號,平均為 " << min[1] << "分" << endl;
  45.    
  46.     system("pause");
  47.     return 0;
  48. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2