用c语言写定义一个有20个元素的整型数组,从键盘输入数据后,根据自己学号的奇偶求出下标为奇数或偶数的元素的平均值。
时间: 2024-03-25 11:41:49 浏览: 62
好的,以下是用 C 语言实现的代码:
```c
#include <stdio.h>
int main() {
int arr[20];
int i, sumOdd = 0, sumEven = 0, countOdd = 0, countEven = 0;
printf("请输入20个整数:\n");
for (i = 0; i < 20; i++) {
scanf("%d", &arr[i]);
if (i % 2 == 0) { // 下标为偶数
sumEven += arr[i];
countEven++;
} else { // 下标为奇数
sumOdd += arr[i];
countOdd++;
}
}
printf("下标为偶数的元素的平均值为:%.2f\n", (float)sumEven / countEven);
printf("下标为奇数的元素的平均值为:%.2f\n", (float)sumOdd / countOdd);
return 0;
}
```
这个程序定义了一个包含 20 个元素的整型数组,并从键盘上读入这些元素。根据学号的奇偶性,它将累加下标为奇数或偶数的元素,并计算它们的平均值。最后,程序输出这两个平均值。
相关问题
C语言定义一个有20个元素的整型数组,从键盘输入数据后根据自己学号的奇偶求出下标为奇数或偶数的元素的平均值。
```
#include <stdio.h>
int main() {
int arr[20];
int i, sum_even = 0, sum_odd = 0, count_even = 0, count_odd = 0;
int stu_num = 20210001; // 假设学号为 20210001
// 从键盘输入数组元素
for (i = 0; i < 20; i++) {
printf("请输入第%d个元素:", i + 1);
scanf("%d", &arr[i]);
}
// 根据学号的奇偶,统计下标为奇数或偶数的元素的和及个数
for (i = 0; i < 20; i++) {
if (stu_num % 2 == 0) { // 学号为偶数,统计下标为偶数的元素
if (i % 2 == 0) {
sum_even += arr[i];
count_even++;
}
} else { // 学号为奇数,统计下标为奇数的元素
if (i % 2 == 1) {
sum_odd += arr[i];
count_odd++;
}
}
}
// 计算平均值并输出结果
if (stu_num % 2 == 0) { // 学号为偶数,输出下标为偶数的元素的平均值
if (count_even > 0) {
printf("下标为偶数的元素的平均值为:%.2f\n", (float)sum_even / count_even);
} else {
printf("没有下标为偶数的元素\n");
}
} else { // 学号为奇数,输出下标为奇数的元素的平均值
if (count_odd > 0) {
printf("下标为奇数的元素的平均值为:%.2f\n", (float)sum_odd / count_odd);
} else {
printf("没有下标为奇数的元素\n");
}
}
return 0;
}
```
以上代码中,我们假设学号为 20210001,然后根据该学号的奇偶性来统计下标为奇数或偶数的元素的和及个数,并最终计算平均值输出结果。
C语言编程并运行定义一个有20个元素的整型数组,从键盘输入数据后根据自己学号的奇偶求出下标为奇数或偶数的元素的平均值。
下面是实现该功能的C语言代码:
```c
#include <stdio.h>
int main() {
int arr[20];
int i, sum_odd = 0, sum_even = 0, count_odd = 0, count_even = 0;
int num;
printf("请输入20个整数:\n");
for (i = 0; i < 20; i++) {
scanf("%d", &arr[i]);
}
printf("请输入你的学号:");
scanf("%d", &num);
for (i = 0; i < 20; i++) {
if (i % 2 == num % 2) {
// 下标为奇数
if (i % 2 == 1) {
sum_odd += arr[i];
count_odd++;
}
// 下标为偶数
else {
sum_even += arr[i];
count_even++;
}
}
}
if (num % 2 == 1) {
printf("下标为奇数的元素的平均值为:%f\n", (float)sum_odd / count_odd);
} else {
printf("下标为偶数的元素的平均值为:%f\n", (float)sum_even / count_even);
}
return 0;
}
```
代码解释:
1. 定义一个长度为20的整型数组`arr`。
2. 通过循环从键盘输入20个整数,存入数组`arr`中。
3. 从键盘输入一个整数`num`表示学号。
4. 遍历数组`arr`,当下标为奇数或偶数时,根据`num`的奇偶性累加元素值和元素个数。
5. 根据`num`的奇偶性求出下标为奇数或偶数的元素的平均值,并输出结果。
阅读全文