...产生30个随机数到数组中,删除其中的最大值,输出删除前后的数组...

发布网友 发布时间:2小时前

我来回答

1个回答

热心网友 时间:1小时前

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
const int M = 30; //控制数组大小
const int N = 100; //控制随机数大小范围在0-100之内
int main()
{
srand(time(0)); //产生随机数种子
int randArray[M] = {0};
int i = 0 ;
for (i = 0;i < M;i++) //生成30个随机数
{
randArray[i] = rand()%N+1;
}
for (i = 0;i < M;i++) //打印刚刚生成的随机数
{
printf("%d ",randArray[i]);
}
int max = randArray[0];
int num = 0;
for (i = 1;i < M;i++) //找到最大的数的位置并记录到num中,最大的数存放到max中
{
if (randArray[i]>max)
{
max = randArray[i];
num = i;
}
}
int temp = 0;
for (i = num;i<M-1;i++) //删除最大数
{
randArray[i] = randArray[i+1];
}
printf("\nThe max number is %d !\n",max);//输出最大的数
for (i = 0;i < M-1;i++) //打印删除后结果
{
printf("%d ",randArray[i]);
}
printf("\n");
return 0;
}
希望对你有帮助。

热心网友 时间:1小时前

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
const int M = 30; //控制数组大小
const int N = 100; //控制随机数大小范围在0-100之内
int main()
{
srand(time(0)); //产生随机数种子
int randArray[M] = {0};
int i = 0 ;
for (i = 0;i < M;i++) //生成30个随机数
{
randArray[i] = rand()%N+1;
}
for (i = 0;i < M;i++) //打印刚刚生成的随机数
{
printf("%d ",randArray[i]);
}
int max = randArray[0];
int num = 0;
for (i = 1;i < M;i++) //找到最大的数的位置并记录到num中,最大的数存放到max中
{
if (randArray[i]>max)
{
max = randArray[i];
num = i;
}
}
int temp = 0;
for (i = num;i<M-1;i++) //删除最大数
{
randArray[i] = randArray[i+1];
}
printf("\nThe max number is %d !\n",max);//输出最大的数
for (i = 0;i < M-1;i++) //打印删除后结果
{
printf("%d ",randArray[i]);
}
printf("\n");
return 0;
}
希望对你有帮助。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com