#include <stdio.h>int main() { int arr[30]; int avg[6]; int sum = 0, count = 0; // 初始化数组 for (int i = 0; i < 30; i++) { arr[i] = 2 + i * 2; } // 计算每五个数的平均值 for (int i = 0; i < 30; i++) { sum += arr[i]; count++; if (count == 5) { avg[i / 5] = sum / 5; sum = 0; count = 0; } } // 输出结果 for (int i = 0; i < 6; i++) { printf("avg[%d] = %d\n", i, avg[i]); } return 0;}
时间: 2024-01-24 22:04:47 浏览: 22
这是一个C语言程序,其功能是将一个由30个元素构成的数组arr中的数值按照每5个一组进行平均,然后存储到另一个长度为6的数组avg中,并输出avg数组中的数值。程序的运行过程如下:
首先,程序通过for循环初始化数组arr,将其中的元素赋值为2 + i * 2,其中i从0到29递增。
然后,程序再次通过for循环对数组arr进行遍历,将每5个数值的和计算出来,并将计算出的平均值存储到数组avg中,同时在计算完每组平均值之后,程序会将计数器count和累加器sum重置为0,以便计算下一组平均值。
最后,程序再次通过for循环遍历数组avg,并输出其中的数值。
如果您有任何疑问,请随时提出。
相关问题
用c语言统计数组中与全部元素平均值相同的元素的个数intfun
以下是用C语言编写的统计数组中与全部元素平均值相同的元素的个数的函数intfun:
```c
#include <stdio.h>
int intfun(int arr[], int size){
int sum = 0, i, count = 0;
float avg;
for(i=0; i<size; i++){
sum += arr[i];
}
avg = (float)sum/size;
for(i=0; i<size; i++){
if(arr[i] == avg){
count++;
}
}
return count;
}
int main(){
int arr[] = {2, 4, 6, 8, 10};
int size = sizeof(arr)/sizeof(arr[0]);
int result = intfun(arr, size);
printf("The number of elements that are equal to the average of all elements is: %d", result);
return 0;
}
```
在这个函数中,我们先求出了数组中所有元素的总和,并计算了平均值。然后,我们遍历整个数组,如果某个元素等于平均值,则将计数器加一。最后,返回计数器的值,即为数组中与全部元素平均值相同的元素的个数。
在主函数中,我们定义了一个数组arr和它的大小size,并调用intfun函数来计算与平均值相同的元素的个数,并将结果打印出来。
输入10个整数存放到一个数组中,把所有的大于这十个数的平均值的数,按照从小到大的顺序输出。如果没有大于平均数的数,则输出“count=0”用c语言解决这个问题
好的,我会根据您的要求进行回答。关于您的问题,以下是c语言的代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 10, i, count = 0;
float avg, sum = 0;
int arr[n], output[n];
// 输入10个整数
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
sum += arr[i];
}
// 计算平均值
avg = sum / n;
// 找出大于平均值的数
for (i = 0; i < n; i++) {
if (arr[i] > avg) {
output[count] = arr[i];
count++;
}
}
// 如果有大于平均值的数,则按照从小到大的顺序输出
if (count > 0) {
int j, temp;
for (i = 0; i < count - 1; i++) {
for (j = i + 1; j < count; j++) {
if (output[i] > output[j]) {
temp = output[i];
output[i] = output[j];
output[j] = temp;
}
}
}
printf("count=%d\n", count);
for (i = 0; i < count; i++) {
printf("%d ", output[i]);
}
}
// 如果没有大于平均值的数,则输出“count=0”
else {
printf("count=0");
}
return 0;
}
```
该代码是一个控制台程序,可以接收用户输入的10个整数,输出大于平均值的数,并按照从小到大的顺序排序。如果没有大于平均值的数,则输出“count=0”。
相关推荐
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![application/pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)