English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

請各為大大們幫忙了 實在是想了6小時想不出來 才上來發問的




#include
#include

int main (void)
{

int num[5][5]={{67,78,69},
{85,65,75},
{63,73,83},
{72,82,92},
{54,64,74}};
char str[2];
int sum[4],d[4];
printf("輸入bub後開始排序\n");
scanf("%s",str);
system("cls");

if (str[0]=='b' && str[1]=='u' && str[2]=='b')
{
sum[0]=num[0][0]+num[0][1]+num[0][2];
d[0]=sum[0];
printf("%d %.2f\n",sum[0],(float)d[0]/3);

sum[1]=num[1][0]+num[1][1]+num[1][2];
d[1]=sum[1];
printf("%d %.2f\n",sum[1],(float)d[1]/3);

sum[2]=num[2][0]+num[2][1]+num[2][2];
d[2]=sum[2];
printf("%d %.2f\n",sum[2],(float)d[2]/3);

sum[3]=num[3][0]+num[3][1]+num[3][2];
d[3]=sum[3];
printf("%d %.2f\n",sum[3],(float)d[3]/3);

sum[4]=num[4][0]+num[4][1]+num[4][2];
d[4]=sum[4];
printf("%d %.2f\n",sum[4],(float)d[4]/3);
}

//學號要用輸入的 用氣泡排序法

printf(" 中文 英文 計程 總分 名次\n");
//95231001 67 78 69 sum[0] d[0]
//95231002 85 65 75 sum[1] d[1]
//95231003 63 73 83 sum[2] d[2]
//95231004 72 82 92 sum[3] d[3]
//95231005 54 64 74 sum[4] d[4]
//就像這樣 我問題出再不知道怎麼把 二維陣列 跟總分 平均 放進表格裡面
//跟 if的敘述式不知道怎麼修改成for
//請不要用太難的語法 @@ 只學過for 副程式 scanf 跟一些基本的
//還有大大們覺得我寫法有問題 請幫我修改一下唄~~要用for喔


system("pause");
return 0;

}

2006-12-17 13:14:21 · 3 個解答 · 發問者 DrlfORfaN 2 in 電腦與網際網路 程式設計

是要按照排名來用泡泡排序法^^

2006-12-17 17:15:08 · update #1

int main(int argc, char *argv[])

請問大大 這行我不太懂耶
int argc, char *argv[]
這行意思可以解釋一下麻
謝謝~

2006-12-17 17:26:17 · update #2

謝謝啦~~~第二位大大解釋的很清楚
我懂了!!

2006-12-18 14:32:56 · update #3

3 個解答


我不懂你說的泡沫排序是針對哪個數值來排序……
//Power by Microsoft Visual Studio 2005
//可以使用 Dev-C++ 編譯此程式
#include
#include
#include
int main(int argc, char *argv[]){
//=====START=====//
int num[5][3]={{67,78,69},{85,65,75},{63,73,83},{72,82,92},{54,64,74}};
char str[4];
// 3 個字母
//str[3]='\0'字串結束字元
int sum[5],d[5],i;
printf("輸入bub後開始排序 ");
scanf("%s",str);
system("cls");
if (stricmp(str,"bub")==0){
for(i=0;i<5;i++){
sum[i]=num[i][0]+num[i][1]+num[i][2];
d[i]=sum[i];
printf("9523100%d %d %d %d %d %.2f\n",i+1,num[i][0],num[i][1],num[i][2],sum[i],(float)d[i]/3);
}
}
printf(" 中文 英文 計程 總分 名次\n");
//=====END=====//
system("PAUSE");
return 0;
}

2006-12-17 17:13:05 · answer #1 · answered by Big_John-tw 7 · 0 0

【亞洲36588合法彩券公司直營 官網: A36588.NET 】

【 最新活動→迎接新會員,首存狂送20% 】

【運動→電子→對戰→現場→彩球 】

【免費服務 →電影區、討論區、KTV歡唱、運動轉播、即時比分、24H客服 】

【亞洲36588合法彩券公司直營 官網: A36588.NET 】

2014-09-03 02:25:04 · answer #2 · answered by Anonymous · 0 0

int argc, char *argv[]
這行只是main函式"命令列引數"所需的變數

基本上 在DOS LINUX下
你執行程式 並非像WINDOWS介面 按個鈕執行
而是KEYIN執行檔名稱
那麼 這時候 你可以在執行檔後面增加額外的引數給程式
這跟修改CODE裡面的變數是一樣的 
只是前者比較方便

argc 是命令參數列的引數個數(包含執行檔名稱)
ans假設是我執行檔名稱
EX: ans 123 456
那麼我的argc就是3
這是為了要在主程式內判斷USER輸入"個數"是否如預期

argv 即是你輸入引數的陣列 目前這例子是宣告成CHAR
EX: 如上例
argv[1]="123" argv[2]="456"
SO 你可以宣告兩個CHAR來接收這兩個資訊
char a=argv[1];
char b=argv[2];

當然 你也可以用INT 不一定要為CHAR格式
希望你看的懂 !!

我對資料結構 離散數學 反而爛的一踏糊塗 比較不熟悉
非本系沒學那麼深 = = 玩玩語法罷了

2006-12-18 04:25:47 · answer #3 · answered by Anonymous · 0 0

fedest.com, questions and answers