声明一个包含 10 个元素的整型数组,使用随机数为数组成员进行初始化, 输出这个数组的成员,随机打乱数组
发布网友
发布时间:2022-09-22 09:08
我来回答
共2个回答
热心网友
时间:2023-11-24 17:10
1、首先,定义两个整型变量,控制二维数组的输出。
2、接着,给二维数组n[3][4]初始化不同的数值。
3、用二重循环,输出数组中的各个数值。
4、二维数组可以用大括号括起来的数字直接赋值,内层大括号中每对表示一行,每对内层大括号中的值表示一行中的各数值。
5、运行程序,可以看到二维数组中的值,成功输出了。
6、只给二维数组中的部分元素赋值,例如只给一行赋初值。
7、运行程序,可以看到数组中,只有第一行有设置的初值,其他行的值都为0。
热心网友
时间:2023-11-24 17:10
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void rand_sort(int *arr,int len);
void display(int *arr,int len);
void main(void)
{
int arr[10];
srand( (unsigned)time( NULL ) );
/* 产生10个100内的随机数 */
printf("产生10个100内的随机数:\n");
for(int i = 0; i < 10; i++)
arr[i] = rand()%100;
/* 打印随机数 */
display(arr,10);
/* 将数据中的数据,随机排序并输出(10) */
printf("随机排序10次:\n");
for(int j = 0; j < 10; j++)
{
rand_sort(arr,10);
display(arr,10);
}
}
void rand_sort(int *arr,int len)
{
int tmp = 0;
int pos1 = 0,pos2 = 0;
for(int i = 0; i < len; i++)
{
pos1 = rand()%10;
pos2 = rand()%10;
tmp = arr[pos1];
arr[pos1] = arr[pos2];
arr[pos2] = tmp;
}
}
void display(int *arr,int len)
{
for(int i = 0; i < len; i++)
printf("%d ",arr[i]);
printf("\n");
}