任意输入20个互不相等的整数,c语言编写代码实现.求20个数的平均数并输出
时间: 2024-10-13 11:07:02 浏览: 25
在 C 语言中,你可以使用数组来存储这 20 个互不相等的整数,然后通过遍历数组计算它们的总和,最后除以数组长度得到平均数。下面是一个简单的示例代码:
```c
#include <stdio.h>
#define NUM_ITEMS 20
int main() {
int numbers[NUM_ITEMS];
float total = 0;
// 输入 20 个互不相等的整数
printf("请输入 %d 个互不相等的整数:\n", NUM_ITEMS);
for (int i = 0; i < NUM_ITEMS; i++) {
scanf("%d", &numbers[i]);
total += numbers[i]; // 累加所有数值
}
// 计算平均数
float average = total / NUM_ITEMS;
// 输出平均数
printf("这 20 个数的平均值是 %.2f\n", average);
return 0;
}
```
相关问题
用C语言编写任意输入20个互不相等的整数,编写代码实现以下功能:1.求20个数的平均数并输出;2.将20个数中的奇数全部输出,没有奇数提示“无奇数”;3.将20个数由大到小排序并输出。
在C语言中,可以使用以下代码来实现这个功能:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义函数用于计算平均值
double average(int arr[], int n) {
double sum = 0;
for (int i = 0; i < n; i++) {
sum += arr[i];
}
return sum / n;
}
// 定义函数判断是否有奇数,并输出
void print_odd(int arr[], int n) {
for (int i = 0; i < n; i++) {
if (arr[i] % 2 != 0) {
printf("%d ", arr[i]);
}
}
if (n == 0) {
printf("无奇数");
}
}
// 定义冒泡排序函数,按降序排列数组
void bubble_sort_descending(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] < arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int num[20];
int count = 0;
// 输入20个互不相等的整数
printf("请输入20个互不相等的整数:\n");
for (int i = 0; i < 20; i++) {
scanf("%d", &num[i]);
if (num[i] != -1 && count < 20) { // 防止输入过多数字
count++;
}
}
// 求平均数并输出
double avg = average(num, count);
printf("这20个数的平均数是 %.2f\n", avg);
// 输出奇数
print_odd(num, count);
// 排序并输出
bubble_sort_descending(num, count);
printf("\n这20个数按降序排列:\n");
for (int i = 0; i < count; i++) {
printf("%d ", num[i]);
}
return 0;
}
```
c语言任意输入20个互不相等的整数,编写代码实现以下功能:1.求20个数的平均数并输出;2.将20个数中的奇数全部输出,没有奇数提示“无奇数”;3.将20个数由大到小排序并输出。
在C语言中,你可以通过以下步骤来实现这个功能:
```c
#include <stdio.h>
int main() {
int arr[20], i = 0;
// 输入20个互不相等的整数
printf("请输入20个互不相等的整数:\n");
for (i = 0; i < 20; i++) {
scanf("%d", &arr[i]);
while (i > 0 && arr[i] < arr[i - 1]) { // 防止重复输入
printf("已输入过的数值,请重新输入第%d个数:", i);
scanf("%d", &arr[i]);
}
}
// 计算平均数并输出
float sum = 0;
for (i = 0; i < 20; i++) {
sum += arr[i];
}
float avg = sum / 20;
printf("20个数的平均值为 %.2f\n", avg);
// 检查奇数并输出
int has_odd = 0;
for (i = 0; i < 20; i++) {
if (arr[i] % 2 != 0) {
printf("%d ", arr[i]);
has_odd = 1;
}
}
if (!has_odd) {
printf("\n无奇数\n");
}
// 将数组升序排列
for (i = 0; i < 19; i++) {
for (int j = 0; j < 19 - i; j++) {
if (arr[j] < arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出排序后的数组
printf("\n排序后的20个数从大到小:");
for (i = 0; i < 20; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
阅读全文