用指针写输入五个数求平均值
时间: 2023-09-13 09:08:25 浏览: 158
下面是使用指针的C语言代码:
```c
#include <stdio.h>
int main() {
int num[5];
int *p = num; // 指向数组的指针
int sum = 0;
printf("请输入五个数:\n");
for(int i = 0; i < 5; i++) {
scanf("%d", p+i); // 通过指针输入数值
sum += *(p+i); // 通过指针访问数值并求和
}
printf("平均值为:%.2f\n", (float)sum/5); // 输出平均值
return 0;
}
```
在上面的代码中,首先定义了一个数组 `num` 和一个指向该数组的指针 `p`。然后通过循环使用指针输入五个数值,并通过指针访问数值计算它们的和。最后输出平均值,注意要将和除以5.0转换成浮点数再输出。
相关问题
c语言用指针求三个数的最大值最小值和平均值
以下是使用指针求三个数的最大值、最小值和平均值的C语言代码:
```c
#include <stdio.h>
void Score(int b[], int* max, int* min, float* avg) {
int i;
*min = *max = *avg = b[0];
for (i = 1; i < 5; i++) {
if (b[i] < *min) {
*min = b[i];
}
if (b[i] > *max) {
*max = b[i];
}
*avg += b[i];
}
*avg = *avg / 5;
}
int main() {
int a[5], min, max;
float avg;
for (int i = 0; i < 5; i++) {
scanf("%d", &a[i]);
}
Score(a, &max, &min, &avg);
printf("max=%d, min=%d, avg=%.1f\n", max, min, avg);
return 0;
}
```
这段代码中,我们定义了一个名为Score的函数,该函数接受一个整型数组b、一个指向最大值的指针max、一个指向最小值的指针min和一个指向平均值的指针avg作为参数。在函数中,我们使用循环遍历整型数组b,找到其中的最大值、最小值,并计算出平均值。最后,我们将最大值、最小值和平均值分别存储到指针max、min和avg所指向的内存地址中。
在main函数中,我们定义了一个名为a的整型数组,用于存储5名学生的成绩。然后,我们使用scanf函数从标准输入中读取5个整数,并将它们存储到数组a中。接着,我们调用Score函数,将数组a和三个指针作为参数传递给它,计算出最大值、最小值和平均值,并将它们打印到标准输出中。
c语言使用返回值指针函数编写输入三个整数求三个正确平均值
以下是使用返回值指针函数编写的C语言程序,用于输入三个整数并求它们的平均值:
```c
#include <stdio.h>
int* average(int a, int b, int c) {
static int result[3]; // 定义一个静态数组,用于存储结果
result[0] = (a + b + c) / 3; // 计算平均值
result[1] = a;
result[2] = b;
return result; // 返回结果数组的指针
}
int main() {
int num1, num2, num3;
printf("请输入三个整数:");
scanf("%d %d %d", &num1, &num2, &num3);
int* ptr = average(num1, num2, num3); // 调用返回值指针函数
printf("平均值:%d\n", *ptr); // 输出平均值
printf("输入的三个整数:%d %d %d\n", *(ptr+1), *(ptr+2), *(ptr+3)); // 输出输入的三个整数
return 0;
}
```
阅读全文