#include
#include
/**
* 编写函数实现对数组中10个整数由小到大排序,要求编写三个分别实现整数的
* 输入,排序,输出,主函只须调提示:以数组名作为函数参数,编写三个函数。
* input(int a[],int n)
* sort(int a[],int n)
* print(int a[],int n)
*/
/* 输入函数 */
int input(int a[],int n)
{
int i = 0;
printf("请以此输入数组元素:\n");
for(i=0; i{
scanf("%d", &a[i]);
}
return 0;
}
/* 排序函数 */
int sort(int a[],int n)
{
int i = 0, j = 0, tem = 0;
printf("正在对数组进行由小到大排序:\n");
for(i=0; i{
for(j=i+1; j{
if(a[j] < a[i])
{
tem = a[i];
a[i] = a[j];
a[j] = tem;
}
}
}
printf("排序完成!\n");
return 0;
}
/* 输出函数 */
int print(int a[],int n)
{
int i = 0;
printf("输出数组: \n");
for(i=0; i{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
int main()
{
int *a = NULL;
int n = 0;
/* 输入 */
printf("请输入数组的大小:\n");
scanf("%d", &n);
a = malloc(n*sizeof(n));
input(a, n);
/* 排序 */
sort(a, n);
/* 输出 */
print(a, n);
return 0;
}
#include
int a[10];
void input()
{
int i;
printf("输入10个整数:\n");
for (i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
}
void sort()
{
int i,q,k;
for (q = 0; q < 10; q++)
{
for (i = 0; i < 9; i++)
{
if (a[i] > a[i + 1])
{
k = a[i + 1];
a[i + 1] = a[i];
a[i] = k;
}
}
}
}
void print()
{
int i;
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
}
void main()
{
int a[10];
input(); //输入10个整数
sort(); //排序
print();
while (1);
}
#include
#include
void input(int a[],int n){
int i;
for(i = 0;i < n;i ++)
scanf("%d",&a[i]);
}
void sort(int a[],int n){
int i,j,d;
for(i = 0;i < n ;i ++){
for(j = i;j < n;j ++){
if(a[i] > a[j]){
d = a[i];
a[i] = a[j];
a[j] = d;
}
}
}
}
void print(int a[],int n){
int i;
for(i = 0;i < n;i ++){
printf("%d ",a[i]);
}
printf("\n");
}
int main()
{
int a[10],n;
n = 10;
input(a,10);
sort(a,10);
print(a,10);
return 0;
}
...
很遗憾,这个问题我一点都不明白,无从下手,根本就打不了