下面是一个解决该问题的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,表示正常结束。