史萊姆論壇

返回   史萊姆論壇 > 專業主討論區 > 程式語言討論區
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


發文 回覆
 
主題工具 顯示模式
舊 2006-05-25, 11:26 AM   #1
leowang 帥哥
長老會員
 
leowang 的頭像
榮譽勳章
UID - 2461
在線等級: 級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時
註冊日期: 2002-12-06
文章: 4729
精華: 0
現金: 101679 金幣
資產: 668410953 金幣
預設 程式 - C語言陣列問題

這問題我寫不出來 有那位大大幫解答
http://home.pchome.com.tw/web/itaxd/problem.bmp
最後要印出成績表和最高分者
如上圖所示

此帖於 2006-05-25 04:59 PM 被 leowang 編輯.
__________________
https://lh3.googleusercontent.com/RuWvUdY-gxGU8oiOD6DIEoKZhLD-Hn-ITKj1LgD3QY6MehzkoddZNew3f3AFLA8dbxbnK-uiFipPzO3GpT5iL4VTIKCiYhgfnQiP5DROmn_5YIpA9zrseGljottMSbiTsw=w1280

金錢的數量,決定馬子的漂亮
硬碟的容量,決定男人的力量

製作Mail Logo按這裡
leowang 目前離線  
送花文章: 257, 收花文章: 1161 篇, 收花: 4928 次
回覆時引用此帖
舊 2006-05-25, 03:06 PM   #2 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:96 | 在線時長:9665小時 | 升級還需:132小時級別:96 | 在線時長:9665小時 | 升級還需:132小時級別:96 | 在線時長:9665小時 | 升級還需:132小時級別:96 | 在線時長:9665小時 | 升級還需:132小時級別:96 | 在線時長:9665小時 | 升級還需:132小時級別:96 | 在線時長:9665小時 | 升級還需:132小時
註冊日期: 2002-12-07
文章: 13249
精華: 0
現金: 26241 金幣
資產: 3024051 金幣
預設

語法:
#include <stdio.h>
#include <stdlib.h>

typedef struct DATA{
 long S_NO;       //學號
 /*作業成績*/
 int math;
 int C_Lang;
 int En;
 int Total
}Student_Data;

int main(int argc, char *argv[])
{
  Student_Data s[5]; //一維陣列

 //...輸入及計算

  system("PAUSE");	
  return 0;
}
至於用 二維陣列 設計
語法:
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  long s[5][4]; //二維陣列
 /*
  s[0][0] 表示: 學號800701 的數學成績
   s[0][1] 表示: 學號800701 的C語言成績
   s[0][2] 表示: 學號800701 的英文成績
   s[0][3] 表示: 學號800701 的總分
 */

 //...輸入及計算

  system("PAUSE");	
  return 0;
}
mini 目前離線  
送花文章: 1999, 收花文章: 7957 篇, 收花: 26749 次
回覆時引用此帖
舊 2006-05-25, 04:49 PM   #3 (permalink)
長老會員
 
leowang 的頭像
榮譽勳章
UID - 2461
在線等級: 級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時級別:111 | 在線時長:12773小時 | 升級還需:219小時
註冊日期: 2002-12-06
文章: 4729
精華: 0
現金: 101679 金幣
資產: 668410953 金幣
預設

這是我寫的 我先用一維陣列 加入第二個學生(參數)就錯誤ㄌ
PHP 語法:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
   
int isum 0,sum1 0;     
   
int scores1[3]; 
   
int scores2[3];
   
scores1[0] = 60;    
   
scores1[1] = 50;
   
scores1[2] = 81;;
   
scores2[0] = 49;    
   
scores2[1] = 70;
   
scores2[2] = 63
      
for ( 03i++) {
      
sum += scores1[i];
      
sum1 += scores2[i];
   }
   
printf("學  號│數學│C │英文│總分\n" );
   
printf("800701│60  │50│81  │ %d\n"sum);
   
printf("800702│49  │70│63  │ %d\n"sum1);
   
getchar(); 
   return 
0;

這要怎解決呢
leowang 目前離線  
送花文章: 257, 收花文章: 1161 篇, 收花: 4928 次
回覆時引用此帖
舊 2006-05-26, 02:11 AM   #4 (permalink)
管理員
 
getter 的頭像
榮譽勳章
UID - 6433
在線等級: 級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時級別:96 | 在線時長:9733小時 | 升級還需:64小時
註冊日期: 2002-12-08
住址: 天線星球
文章: 8157
精華: 0
現金: 19955 金幣
資產: 765391 金幣
預設

引用:
作者: leowang
這是我寫的 我先用一維陣列 加入第二個學生(參數)就錯誤ㄌ
[php]
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int i, sum = 0,sum1 = 0;
int ...
你的程式少了一個 ; 號,在這一行 scores2[2] = 63 的地方當然會錯。

程式還能改寫成以下

語法:
#include <stdio.h> 
#include <stdlib.h> 
int main(void) 
    { 
     int i, j, max[2] = {0}, sum[5] = {0};      
     int scores[][3] = {{60,50,81},{49,70,63},{70,33,55},{63,64,54},{83,87,76}};  
   
     for ( i = 0; i < 5; i++) 
	      for ( j = 0; j < 3; j++) 
              { sum[i] += scores[i][j]; } 
	 
	 max[0] = sum[0];
 	 for ( i = 0; i < 5; i++) 
	     {
		  for ( j = 0; j < 5; j++) 
		     { 
		      if ( max[0] < sum[i] )
		         { 
		          max[0] = sum[i];
		          max[1] = i; 
		         }        
		     }       
	      }
		   
     printf(" 學  號│數學│ C  │英文│總分\n" ); 
     for ( i = 0; i < 5; i++) 
       {
	    printf("%7d│", 800701+i);  
	    for ( j = 0; j < 3; j++) 
	        { printf("%3d │", scores[i][j]); }
		printf("%3d\n",sum[i]);   
       }
     printf("\n最高者 : %d",800701+max[1]);  
   
     getchar();  
     return 0; 
    }
想想看跟你得程式跟我改寫的有何差異 ...,

陣列給初值不用那麼麻煩,一個一個給,可以向變數一樣在宣告時就指定。
ex:
int FF[5] = {0}; 表示該 FF 陣列初值為 0
int AB[3] = {60,50,81}; 表示該 AB 陣列初值依序為 60, 50 ,81
int CD[2][3] = {{60,50,81},{49,70,63}}; 表示該 CD 陣列初值依序為 60, 50, 81, 49, 70, 63


mini 大的是一種叫做結構的語方式,我推測你應該是還沒學到這種

結構的好處可以把好幾種不同性質的資料包成一包。

此帖於 2006-05-26 08:13 AM 被 getter 編輯.
__________________
在「專業主討論區」中的問題解決後,要記得按一下 http://forum.slime.com.tw/images/stamps/is_solved.gif 按鈕喔,
這是一種禮貌動作。

一樣是在「專業主討論區」中發問,不管問題解決與否,都要回應別人的回答文喔。
不然搞 [斷頭文],只看不回應,下次被別人列入黑名單就不要怪人喔。

天線寶寶說再見啦~ ... 天線寶寶說再見啦~

迪西:「再見~ 再見~」

Otaku Culture Party 關心您 ...
getter 目前離線  
送花文章: 37855, 收花文章: 6441 篇, 收花: 26052 次
回覆時引用此帖
發文 回覆



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 05:57 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1