[問題] 輸入未知個數,由Enter中斷
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Win7 + Codeblocks
問題(Question):
下面是我練習寫的氣泡排序法
但程式碼寫死了輸入個數
現在想改成,完全不事先知道輸入個數
而是在DOS視窗輸入數字和空白間隔時
31 51 12 98 23 77...
直到鍵盤按了Enter
程式才知道全部有多少個數字要處理
翻了書,感覺書上的動態記憶體章節、malloc
還不夠我要達到的功能
請提示該怎麼寫
thank
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int arr[4],temp,i,j;
printf("input:");
scanf("%d%d%d%d",&arr[0],&arr[1],&arr[2],&arr[3]);
printf("%d %d %d %d\n",arr[0],arr[1],arr[2],arr[3]);
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
{
if(arr[j]<arr[j+1])
{
temp= arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
}
}
}
printf("%d %d %d %d",arr[0],arr[1],arr[2],arr[3]);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.106.192
→
03/24 10:46, , 1F
03/24 10:46, 1F
要學習能夠按即時情況的寫法啊
※ 編輯: dharma 來自: 118.163.106.192 (03/24 11:09)
→
03/24 11:08, , 2F
03/24 11:08, 2F
→
03/24 11:35, , 3F
03/24 11:35, 3F
→
03/24 11:36, , 4F
03/24 11:36, 4F
推
03/24 11:47, , 5F
03/24 11:47, 5F
→
03/24 11:48, , 6F
03/24 11:48, 6F
→
03/24 11:48, , 7F
03/24 11:48, 7F
→
03/24 12:34, , 8F
03/24 12:34, 8F
→
03/24 12:35, , 9F
03/24 12:35, 9F
推
03/24 14:08, , 10F
03/24 14:08, 10F
推
03/25 00:39, , 11F
03/25 00:39, 11F