編寫程序,從鍵盤輸入10個int類型數,按從小到大順序進行排序,然後輸出。要求用函數sort()進行排序, 用函數input()輸入數據,用函數output()輸出數據。
(1) 主函數定義數組a[N],N定義為10
(2) 函數聲名:
(3) 主函數調用函數實現程序功能。
(4) 函數定義
下面的代碼考慮輸入的是否是整數
#include<stdio.h>
#define N 10
void input();
void sort();
void output();
void main()
{
int a[N];
input(a, N);
sort(a, N);
output(a, N);
getch();
}
void input(int *a, int n)
{
int i = 0;
char c;
printf("\nEnter the %d of numbers: ", n);
for (i = 0; i < n; i++)
{
printf("Please input number %d : ", i + 1);
while(scanf("%d", &a[i]) != 1)
{
scanf("%s", &a[i]);
printf("Sorry, [%s] is not a number. Please input number %d : ", &a[i], i);
}
}
}
void sort(int *a, int n)
{
int i, j, temp;
for(i = 0; i < n; i++)
{
for(j = i; j < n; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
void output(int *a, int n)
{
int i;
printf("\nSorted array:");
for(i = 0; i < n; i++)
{
printf("\t%d",a[i]);
}
}