#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
char words[6][10];
int i,j;
char t[10];
strcpy(words[0],"JAVA");
strcpy(words[1],"Assembly");
strcpy(words[2],"Delpha");
strcpy(words[3],"Basic");
strcpy(words[4],"Fortran");
strcpy(words[5],"Cobl");
for(i=0;i<6;i++)
printf("%s\n",words[i]);
for(i=0;i<6;i++){
for(j=i+1;j<6;j++){ // 從i+1開始是因為 從0~i 都確定了
t[0] = words[i][0];
if(words[j][0]<t[0]){
// 如果word[j][0] < t[0]
// 則把 word[i] 和 word[j] 交換
// 所以巢狀迴圈的內圈每跑完一次就會
// 比如說第一次跑完就會決定出 Assembly 是在最前面的
// 因為A的asciicode最小
// 把完 8 次就會依序決定出前8個最小的
strcpy(t,words[j]);
strcpy(words[j],words[i]);
strcpy(words[i],t);
}
}
}
cout << endl ;
for(i=0;i<6;i++)
printf("%s\n",words[i]);
system("PAUSE");
return EXIT_SUCCESS;
}

這位大大~~~感謝你百忙之中抽空解答~~~~但我們老師說他還沒教指標(*argv[]) 和p[0]*q[0]+p[1]*q[1]+p[2]*q[2]; ~~~所以你寫ㄉ程式~~可以在改一下嗎???~~~單純用陣列變數去寫~~~~感恩ㄟ~~~ 還有第二題和第6題你好像看錯意思ㄌ~~第2題是要比字串ㄉ字元大小來排列~ 第6題是~~~~~~0~60個小時,每小時75元~~~~~~61~75個小時以1.25倍計算 76個小時以上以1.75倍計算~~~~例如70小時應該是60*75+(70-60)*75*1.25 真的麻煩你了~~~~~~感激不盡~~~~~ 在請問此程式若是要我自行輸入字串呢???
能否請您幫以下巢狀迴圈做一註解 方便理清程式的概念 謝謝您~ for(j=i+1;j&lt;6;j++) { t[0] = words[i][0]; //此處 if(words[j][0]&lt;t[0]) //此處 { strcpy(t,words[j]); //此處 strcpy(words[j],words[i]); //此處 strcpy(words[i],t); //此處 }
忘了說 正是這一題的巢狀迴圈 @o@