我的老師給了我們代碼,該代碼應該提示用戶輸入10個數字,調用一個函數將數組從最小到最大排序,然後打印結果。我們所要做的只是讀取輸入並打印出來。這是她給我們:我必須讀取用戶輸入到數組中的10個值,然後在C中打印它們
#include <stdio.h>
#include <stdbool.h>
#define num 10
void sort_array(int *a, int b);
int main(void)
{
int array[num] = {0}, i;
for (i = 1; i < 10; i++) {
printf("Please enter %d integers ", num);
/* read the input! */
sort_array(a, num);
/* print the sorted array */
return 0;
}
void sort_array(int *a, int b)
{
bool swapped = true;
int temp, i, j = 0;
while (swapped)
{
swapped = false;
j++;
for (i = 0; i < b - 1; i +1)
{
if (a[i] > a[i+1]) {
temp = a[i];
a[i] = a [i + 1];
a[i + 1] = temp;
swapped = true;
}
}
}
}
這是我在它的嘗試:
#include <stdio.h>
#include <stdbool.h>
#define num 10
void sort_array(int *a, int b);
int main(void)
{
int array[num] = {0}, i, j;
printf("Please enter %d integers: ", num);
for (i = 0; i < 10; i++) {
scanf("%d", &array[i]);
}
/* read the input! */
sort_array(array, num);
/* print the array */
for (i = 0; i < 10; i++) {
printf("%d ", array[i]);
}
return 0;
}
void sort_array(int *a, int b)
{
bool swapped = true;
int temp, i, j = 0;
while (swapped)
{
swapped = false;
j++;
for (i = 0; i < b - 1; i +1)
{
if (a[i] > a[i+1]) {
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
swapped = true;
}
}
}
}
我知道我可能是從右側很遠,但可能有人請幫助我嗎?我正在使用Quincy進行編譯。程序會讓我輸入數字,但我必須用ctrl + c關閉程序。
對不起,如果我搞砸了格式。
難道你的程序無法正常工作?如果是這樣,請告訴你是什麼意思? –
對不起,剛剛編輯。該計劃將讓我輸入數字,但不會做任何其他事情。 –
你在'for(i = 0; i