下面是一个解决该问题的C程序示例:
#include
int main() {
int num, count = 0, sum = 0;
float average;
printf("请输入5个数字:\n");
for (int i = 0; i < 5; i++) {
scanf("%d", &num);
if (num > 0) {
count++;
sum += num;
}
}
if (count > 0) {
average = (float)sum / count;
printf("正数的个数为 %d\n", count);
printf("正数的平均值为 %.2f\n", average);
} else {
printf("没有输入任何正数\n");
}
return 0;
}
该程序首先声明了变量num
用于存储输入的数字,count
用于记录正数的个数,sum
用于累加正数的和,average
用于存储正数的平均值。
然后,程序通过for
循环读取5个数字,并使用scanf
函数将输入的数字存储到变量num
中。在每次循环中,如果num
大于0,则说明是正数,count
加1,sum
累加该正数。
循环结束后,程序根据count
的值判断是否有输入正数。如果count
大于0,则计算正数的平均值并打印出结果;如果count
等于0,则说明没有输入任何正数。
最后,程序返回0,表示正常结束。