用C语言3.输入10个整数存入数组,将值最大的元素与第一个元素进行值交换,值最小的元素与最后一个元素进行值交换,然后输出数组。
时间: 2023-11-02 21:59:33 浏览: 74
```c
#include <stdio.h>
void swap(int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
int main(){
int arr[10];
int max = 0, min = 0;
for(int i=0; i<10; i++){
scanf("%d", &arr[i]);
if(arr[i] > arr[max]){
max = i;
}
if(arr[i] < arr[min]){
min = i;
}
}
swap(&arr[0], &arr[max]);
swap(&arr[9], &arr[min]);
for(int i=0; i<10; i++){
printf("%d ", arr[i]);
}
return 0;
}
```
相关问题
为整型二维数组b[3][4]输入12个数据,计算并输出数组中所有正数之和、所有负数之3.输入10个整数存入数组,将值最大的元素与第一个元素进行值交换,值最小的元素与 最后一个元素进行值交换,然后输出数组。C语言
第一题:
```c
#include <stdio.h>
int main() {
int b[3][4];
int i, j, sum_pos = 0, sum_neg = 0;
printf("请输入12个整数:\n");
for(i = 0; i < 3; i++) {
for(j = 0; j < 4; j++) {
scanf("%d", &b[i][j]);
if(b[i][j] > 0) {
sum_pos += b[i][j];
} else if(b[i][j] < 0) {
sum_neg += b[i][j];
}
}
}
printf("所有正数之和为:%d\n", sum_pos);
printf("所有负数之和为:%d\n", sum_neg);
return 0;
}
```
第二题:
```c
#include <stdio.h>
int main() {
int a[10];
int i, max_idx = 0, min_idx = 0, tmp;
printf("请输入10个整数:\n");
for(i = 0; i < 10; i++) {
scanf("%d", &a[i]);
if(a[i] > a[max_idx]) {
max_idx = i;
}
if(a[i] < a[min_idx]) {
min_idx = i;
}
}
tmp = a[0];
a[0] = a[max_idx];
a[max_idx] = tmp;
tmp = a[9];
a[9] = a[min_idx];
a[min_idx] = tmp;
printf("交换后的数组为:\n");
for(i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
c语言编程:输入10个整数存入数组,将值最大的元素与第一个元素进行值交换,值最小的元素与最后一个元素进行值交换,然后输出数组(编写代码时使用数组)
```c
#include <stdio.h>
int main()
{
int arr[10];
int i, maxIndex, minIndex, temp;
// 输入10个整数
printf("请输入10个整数:\n");
for(i=0; i<10; i++){
scanf("%d", &arr[i]);
}
// 找出最大值和最小值的下标
maxIndex = 0;
minIndex = 0;
for(i=1; i<10; i++){
if(arr[i] > arr[maxIndex]){
maxIndex = i;
}
if(arr[i] < arr[minIndex]){
minIndex = i;
}
}
// 交换最大值和第一个元素
temp = arr[0];
arr[0] = arr[maxIndex];
arr[maxIndex] = temp;
// 交换最小值和最后一个元素
temp = arr[9];
arr[9] = arr[minIndex];
arr[minIndex] = temp;
// 输出数组
printf("交换后的数组为:\n");
for(i=0; i<10; i++){
printf("%d ", arr[i]);
}
return 0;
}
```
阅读全文