编写程序。定义一个二维数组a[3][3],每个数组元素的值由a[i][j]=※2+j※3得到,要求
编写程序。定义一个二维数组a[3][3],每个数组元素的值由a[i][j]=※2+j※3得到,要求按矩阵形式输出。通过调用函数,输出a[3][3]数组元素的总分和平均分...
编写程序。定义一个二维数组a[3][3],每个数组元素的值由a[i][j]=※2+j※3得到,要求按矩阵形式输出。通过调用函数,输出a[3][3]数组元素的总分和平均分
展开
3个回答
展开全部
编写程序。定义一个二维数组a[3][3],每个数组元素的值由a[i][j]=※2+j※3得到,要求按矩阵形式输出。通过调用函数,输出a[3][3]数组元素的总分和平均分
编程思路分析:
题目的意图是用循环语句对数组的元素赋值,循环语句输出数组元素,函数方式计算出数组元素的总分和平均分
解答办法:
使用双重for循环对数组元素进行赋值运算和矩阵形式输出
核心代码:
//对数组元素赋值
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
a[i][j] = i * 2 + j * 3;
}
}
//输出数组元素
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
printf("%d\t", a[i][j]);
}
printf("\n");
}
//计算数组元素的和值
int sum = 0;
for(int i = 0; i < 3; i++){
for(int j = 0; j < 3; j++){
sum += a[i][j];
}
}
return sum;
//平均值
int avage = 0;
avage = sum / (3*3);
展开全部
设计思想:
定义二维数组,并按照题目中的要求初始化。建议使用宏来定义二维数组的大小,这样方便修改二维数组大小,减少维护工数。
分别定义并初始化变量sum和average,用于求和,求平均数
使用双重循环,将二维数组以矩阵形式输出
使用双重循环,求二维数组的和
用3中求出的和,计算平均数
代码:
#include<stdio.h>
#define M 3
#define N 3
int main() {
int sum=0;
double average=0.0;
int a[M][N];//定义二维数组
for (int i=0; i < M; i++) {//初始化二维数组
for (int j=0; j < N; j++) {
a[i][j] = i * 2 + j * 3;
}
}
//使用双重循环,求二维数组的和
for (int i=0; i < M; i++) {
for (int j=0; j < N; j++) {
sum += a[i][j];
printf("%d ", a[i][j]);
}
printf("\n");
}
average = ((double)sum)/(M*N);//计算平均数
printf("sum = %d, average=%lf\n",sum, average);
return 0;
}
运行结果:
0 3 6
2 5 8
4 7 10
sum = 45, average=5.000000
备注提醒:
题目中说“每个数组元素的值由a[i][j]=※2+j※3得到”,应该是提问者笔误。此处,建议理解为“每个数组元素的值由a[i][j]=i*2+j*3得到”。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
//The sum of the array a and the average
void outPut(int (*p)[3])
{
int i, j, sum = 0;
float average;
//Sum of the array a
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
sum += p[i][j];
}
}
//Average of the array a
average = sum / 9.0;
//Output the result
printf("The Sum of the Array a equals : %d\nThe Average of the Array a equals : %f\n", sum, average);
}
//Use the Ver. to output the array a
void outputVer(int (*p)[3])
{
int i, j;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
printf("%3d", p[i][j]);
}
printf("\n");
}
}
//Main Function
int main(int argc, char *argv[])
{
//Definition of the variable
int i, j, a[3][3] = {};
//Initialize the array use the formula a[i][j] = 2 * i + 3 * j;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
a[i][j] = 2 * i + 3 * j;
}
}
//Output the array in Vertical
outputVer(a);
//Output the results using the function
outPut(a);
//The end of the Program
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询