C语言自定义一个函数,求10个同学的平均成绩,并在主函数输入输出
时间: 2023-05-21 11:05:22 浏览: 101
好的,以下是代码示例:
#include <stdio.h>
float calculate_average(float[]);
int main() {
float grades[10];
// 输入同学的成绩
for (int i = 0; i < 10; i++) {
printf("请输入同学[%d]的成绩: ", i);
scanf("%f", &grades[i]);
}
// 计算平均成绩
float average = calculate_average(grades);
// 输出平均成绩
printf("10个同学的平均成绩为: %.2f\n", average);
return 0;
}
float calculate_average(float grades[]) {
float sum = 0;
// 求和
for (int i = 0; i < 10; i++) {
sum += grades[i];
}
// 求平均
float average = sum / 10;
return average;
}
希望这个代码可以解决你的问题!
相关问题
c语言自定义函数实现将一个数组逆序存储,在主函数中输入数组数据并输出结果。
好的,以下是实现该功能的C语言代码:
```c
#include <stdio.h>
void reverseArray(int arr[], int len) {
int left = 0, right = len - 1;
while (left < right) {
int temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left++;
right--;
}
}
int main() {
int arr[10];
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
reverseArray(arr, 10);
printf("逆序存储后的数组为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
和C++版本的实现类似,这里同样定义了一个名为 `reverseArray` 的函数,该函数接受一个整型数组和数组的长度作为参数,函数内部使用双指针的方式将数组逆序存储。
在主函数中,同样定义了一个长度为10的整型数组 `arr`,使用循环依次读入用户输入的10个整数。然后调用 `reverseArray` 函数将数组逆序存储,最后输出结果。
同样需要注意,在输入数据时应当对用户输入进行校验,确保用户输入的是合法的整数。
用c语言自定义函数实现将一个数组逆序存储,在主函数中输入数组数据并输出结果。
可以参考以下的C语言代码实现:
```c
#include <stdio.h>
void reverseArray(int arr[], int size) {
int temp;
for (int i = 0; i < size / 2; i++) {
temp = arr[i];
arr[i] = arr[size - i - 1];
arr[size - i - 1] = temp;
}
}
int main() {
int arr[100], size;
printf("Enter the size of array: ");
scanf("%d", &size);
printf("Enter the elements of array: ");
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
reverseArray(arr, size);
printf("The reversed array is: ");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
该程序首先在主函数中获取数组的大小和元素,然后调用 `reverseArray` 函数将数组逆序存储。最后,在主函数中输出逆序存储后的数组。