编程从键盘输入10个不为0的整型数,统计其中负数的个数并求出所有正数的平均值。(常规方法、用指针法)
时间: 2023-10-25 18:19:14 浏览: 34
常规方法实现:
```c
#include <stdio.h>
int main()
{
int a[10], count = 0, sum = 0, positive_count = 0;
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
if (a[i] < 0)
{
count++;
}
else if (a[i] > 0)
{
sum += a[i];
positive_count++;
}
}
double average = (double)sum / positive_count;
printf("负数的个数为%d,所有正数的平均值为%.2lf\n", count, average);
return 0;
}
```
指针法实现:
```c
#include <stdio.h>
int main()
{
int a[10], count = 0, sum = 0, positive_count = 0;
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++)
{
scanf("%d", &(*(a + i)));
if (*(a + i) < 0)
{
count++;
}
else if (*(a + i) > 0)
{
sum += *(a + i);
positive_count++;
}
}
double average = (double)sum / positive_count;
printf("负数的个数为%d,所有正数的平均值为%.2lf\n", count, average);
return 0;
}
```