-1
我已經創建了一個隨機數組,然後它會按升序對數字進行排序,然後我想打印排序數字的中位數是多少,但我不知道我在我的程序中做錯了什麼,它只是不會給我中位數。我知道這一定是東西是如此簡單,但我似乎無法找出我在做什麼錯(C程序)隨機數字數組程序,並按升序排序,然後找到中位數
int main()
{
int *tenarray = (int *) malloc(sizeof(int) * SIZE);
int i;
int j;
int num;
int swap;
int median;
srand(time(NULL));
for (i = 0; i < SIZE; i++)
{
num = rand() % 100;
tenarray[i] = num;
printf("%d\n", tenarray[i]);
}
for (i=0; i<SIZE; i++)
{
for (j=0; j<SIZE+1; j++)
{
if(tenarray[j] > tenarray[j+1])
{
swap = tenarray[j];
tenarray[j] = tenarray[j+1];
tenarray[j+1] = swap;
}
}
}
for(i=0; i<SIZE; i++)
{
printf("Ascending bubble sort is: %d\n", tenarray[i]);
}
median = (tenarray[5]);
printf("median is: %d\n", median);
system("PAUSE");
return 0;
}
你確認他們是在排序?你有沒有做過任何類型的調試?如果你有,你可能會發現你寫錯了你的排序功能。但我會把它作爲一個練習讓你弄清楚。 – paddy
歡迎來到Stack Overflow!請說明迄今爲止的研究/調試工作。請先閱讀[問]頁面。 –