输入10个互不相同的整数并保存到数组中,找到最大元素并删除它,输出删除后的数组。C语言
时间: 2024-02-01 08:16:09 浏览: 88
以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int arr[10]; // 定义一个长度为10的整型数组
int max = 0, maxIndex = 0;
// 循环读入10个整数
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
if (arr[i] > max) { // 找到最大值及其下标
max = arr[i];
maxIndex = i;
}
}
// 从数组中删除最大元素
for (int i = maxIndex; i < 9; i++) {
arr[i] = arr[i+1];
}
// 输出删除后的数组
printf("删除最大元素后的数组:\n");
for (int i = 0; i < 9; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这段代码通过循环读入10个整数,并在读入时记录最大值及其下标。然后,通过循环将最大元素从数组中删除,并输出删除后的数组。
相关问题
c语言输入10个互不相同的整数并保存到数组中,找到最大元素并删除它,输出删除后的数组。
下面是实现该功能的C语言代码:
```c
#include <stdio.h>
int main() {
int arr[10];
int maxIndex = 0;
// 输入10个互不相同的整数
printf("请输入10个互不相同的整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 找到最大元素的下标
for (int i = 1; i < 10; i++) {
if (arr[i] > arr[maxIndex]) {
maxIndex = i;
}
}
// 删除最大元素
for (int i = maxIndex; i < 9; i++) {
arr[i] = arr[i + 1];
}
// 输出删除后的数组
printf("删除最大元素后的数组为:\n");
for (int i = 0; i < 9; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行结果如下:
```
请输入10个互不相同的整数:
5 6 2 10 4 8 9 3 1 7
删除最大元素后的数组为:
5 6 2 4 8 9 3 1 7
```
c语言编程输入10个互不相同的整数并保存到数组中,找到最大元素并删除它,输出删除后的数组。
好的,以下是代码实现:
```c
#include <stdio.h>
int main() {
int arr[10];
int max = 0;
int maxIndex = 0;
printf("请输入10个互不相同的整数:\n");
// 输入10个整数并保存到数组中
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
if (arr[i] > arr[maxIndex]) {
max = arr[i];
maxIndex = i;
}
}
// 删除最大元素并输出删除后的数组
for (int i = maxIndex; i < 9; i++) {
arr[i] = arr[i + 1];
}
printf("删除最大元素后的数组为:\n");
for (int i = 0; i < 9; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
代码说明:
1. 定义一个长度为10的整型数组 `arr` ,用来保存输入的整数。
2. 通过循环输入10个整数,并且在输入的过程中,找到最大元素并记录其下标。
3. 根据最大元素的下标,从数组中删除最大元素。
4. 输出删除最大元素后的数组。
注意:以上代码假设输入的10个整数互不相同,如果输入的数中有重复的元素,需要在输入时进行去重处理。
阅读全文