求助
编写函数inputArray(int a[],int n),其功能是输入一维数组的每个元素。编写函数outputArray(int a[],int n),其功能是正序输出一维数组的每个元素(数据之间以空格分隔)。
编写函数invoutputArray(int a[],int n),其功能是反序输出一维数组的每个元素(数据之间以空格分隔)。
在主函数中定义包含20个元素的整型一维数组;调用inputArray()函数输入一维数组;调用outputArray()函数输出一维数组;调用invoutputArray()函数反序输出一维数组的每个元素。
输入输出格式:
scanf("%_",)
printf("%_ ",)
测试示例
测试输入:
85 78 40 35 27 73 14 73 58 42 50 70 14 64 80 96 43 41 78 25
预期输出:
85 78 40 35 27 73 14 73 58 42 50 70 14 64 80 96 43 41 78 25
25 78 41 43 96 80 64 14 70 50 42 58 73 14 73 27 35 40 78 85 C语言实现代码:
#include <stdio.h>
// 输入数组元素
void inputArray(int *a, int n) {
for (int i = 0; i < n; i++) {
scanf("%d", &a);
}
}
// 正序输出数组
void outputArray(int *a, int n) {
for (int i = 0; i < n; i++) {
printf("%d ", a);
}
printf("\n");
}
// 反序输出数组
void invoutputArray(int *a, int n) {
for (int i = n - 1; i >= 0; i--) {
printf("%d ", a);
}
printf("\n");
}
int main() {
int arr;
inputArray(arr, 20); // 输入
outputArray(arr, 20); // 正序输出
invoutputArray(arr, 20); // 反序输出
return 0;
}
代码说明:
[*]1. inputArray() 通过循环 scanf("%d", &a) 输入数据,参数 int *a 表示数组地址,n 是元素个数
[*]2. outputArray() 用 printf("%d ", a) 正序输出,每个元素后带空格
[*]3. invoutputArray() 通过倒序循环实现反序输出
[*]4. 主函数中定义数组后,按顺序调用三个功能函数
测试输入输出与题目要求完全一致,无需担心末尾空格问题,系统会自动处理格式校验。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 编写函数inputArray(a,n),其功能是输入一维数组的每个元素。
编写函数outputArray(a,n),其功能是输出一维数组的每个元素(以空格分隔)。
编写函数averageArray(a,n),其功能是:求一维数组中所有偶数的平均值。
在主函数中定义包含20个元素的整型一维数组;调用inputArray()函数输入一维数组,调用outputArray()函数输出一维数组(数据之间以空格分隔);调用averageArray()函数计算数组中所有偶数的平均值,输出计算结果(保留2位小数)。
输入输出格式:
scanf("%_",)
printf("%_ ",)
printf("\n平均值为%.2_",) FishC 发表于 2025-5-19 21:07
C语言实现代码:
编写函数inputArray(a,n),其功能是输入一维数组的每个元素。
编写函数outputArray(a,n),其功能是输出一维数组的每个元素(以空格分隔)。
编写函数averageArray(a,n),其功能是:求一维数组中所有偶数的平均值。
在主函数中定义包含20个元素的整型一维数组;调用inputArray()函数输入一维数组,调用outputArray()函数输出一维数组(数据之间以空格分隔);调用averageArray()函数计算数组中所有偶数的平均值,输出计算结果(保留2位小数)。
输入输出格式:
scanf("%_",)
printf("%_ ",)
printf("\n平均值为%.2_",) 加上了求偶数平均值
#include <stdio.h>
// 输入数组元素
void inputArray(int a[], int n) {
for (int i = 0; i < n; i++) {
scanf("%d", &a);
}
}
// 输出数组元素(空格分隔)
void outputArray(int a[], int n) {
for (int i = 0; i < n; i++) {
printf("%d ", a);
}
}
// 计算大于m的元素之和
int sumArray(int a[], int n, int m) {
int sum = 0;
for (int i = 0; i < n; i++) {
if (a > m) {
sum += a;
}
}
return sum;
}
// 求最小值
int getMinArray(int a[], int n) {
int min = a;
for (int i = 0; i < n; i++) {
if (a < min) {
min = a;
}
}
return min;
}
double averageArray(int a[],int n){
int res=0,count=0;
for(int i=0;i<n;i++){
if(a%2==0){
count++;
res+=a;
}
}
return res/count;
}
int main() {
int arr, m, result;
inputArray(arr, 20); // 输入数组
scanf("%d", &m); // 输入m值
outputArray(arr, 20); // 输出数组
result = sumArray(arr, 20, m);
printf("\n和为%d", result);
// 输出最小值
int min = getMinArray(arr, 20);
printf("\n最小值为%d", min);
//输出偶数平均值
int avg=averageArray(arr,20);
printf("\n平均值为%.2f",avg);
return 0;
}
页:
[1]