定义一个动态数组,长度为变量n,用随机数给数组各元素赋值,然后对数组各单元

定义一个动态数组,长度为变量n,用随机数给数组各元素赋值,然后对数组各单元排序,定义swap函数交换数据单元,要求参数使用指针传递。

第1个回答  2009-12-18
注释怎么都是乱码呢?你复制到vc里之后把注释删除。没有说明语言种类,就用C编了
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void Swap(int *a, int *b)
{
int swap;
swap = *a;
*a = *b;
*b = swap;
}

void Array(int *Arr, int n)
{
int i = 0;
int j = 0;
//随机赋值
srand((int) time(0));
for(i = 0; i < n; i++)
{
Arr[i] = rand() % (100);
}
//冒泡排序
for(i = 0; i < n; i++)
{
for(j = i+1; j < n; j++)
{
if(Arr[i] < Arr[j])
Swap(&(Arr[i]), &(Arr[j]));
}
}
}

int main()
{
int n = 0; //数组长度
int *Arr = NULL;
printf("Please enter the lenth of array:\n");
scanf("%d", &n); //手动输入
Arr = (int*)malloc(sizeof(int) * n);
Array(Arr, n);
//输出结果
for(int i=0; i<n; i++)
{
printf("%d\n",Arr[i]);
}

free(Arr);
return 0;
}本回答被提问者采纳
相似回答