C++问题求助:给定一个3*4的数组,求每一列的平方和,并输出。有没有代码?

如题所述

#include <iostream>
using namespace std;
void main()
{

int an[3][4]
={ 1,2,3,4,
5,6,7,8,
9,10,11,12}; //3*4的数组,其中的数字自己可以改哈
int rs[4]; //用于存答案,共4个,rs[0]~rs[3]
for(int i=0;i<4;i++)
{
rs[i]=0;
for(int j=0;j<3;j++)
{
rs[i]+=an[j][i]*an[j][i]; //就是rs[i]=rs[i]+an[j][i]*an[j][i];
}
cout<<"第"<<i+1<<"列:"<<rs[i]<<endl; //i=0表示第一列,所以i+1
}
getchar();
}

希望能帮到你!
不懂的话可以Q我
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-13
#include <stdio.h>
#include <math.h>

#define A 12
#define B 9

void paixu(int m[],int shu);

main()
{
int a[A];
int b[B];
int i;
double a1,b1;

printf("请输入数组A的值:(数之间用回车间隔)\n");
for (i=0;i<A;i++)
{
scanf("%d",&a[i]);
}
printf("请输入数组B的值:(数之间用回车间隔)\n");
for (i=0;i<B;i++)
{
scanf("%d",&b[i]);
}
paixu(a,A);
paixu(b,B);
a1=sqrt(a[0])+sqrt(a[1])+sqrt(a[2]);
b1=sqrt(b[0])+sqrt(b[1])+sqrt(b[2]);
printf("PA/PB=%lf\n",a1/b1);
}

void paixu(int m[],int shu)
{
int i=0;
int j=0;
int tmp;

for (i=0;i<shu;i++)
{
for (j=i;j<shu;j++)
{
if (m[i]<m[j])
{
tmp=m[j];
m[j]=m[i];
m[i]=tmp;
}
}
}
}
第2个回答  2011-08-13
#include<iostream.h>

void fun(int matrix[3][4])
{
int Sadd;
for(int i=0; i<3; i++)
{
Sadd = 0;
for(int j=0; j<4; j++)
{
Sadd += matrix[i][j]*matrix[i][j];
}
cout << Sadd <<endl;
}
}

int main()
{
int a[3][4] = {1,1,1,1,2,2,2,2,3,3,3,3};
fun(a);
return 0;
}

#include<iostream.h>

void fun(int matrix[3][4])
{
int Sadd;
for(int i=0; i<3; i++)
{
Sadd = 0;
for(int j=0; j<4; j++)
{
Sadd += matrix[i][j]*matrix[i][j];
}
cout << Sadd <<endl;
}
}

int main()
{
int a[3][4] = {1,1,1,1,2,2,2,2,3,3,3,3};
fun(a);
return 0;
}
#include<iostream.h>

void fun(int matrix[3][4])
{
int Sadd;
for(int i=0; i<3; i++)
{
Sadd = 0;
for(int j=0; j<4; j++)
{
Sadd += matrix[i][j]*matrix[i][j];
}
cout << Sadd <<endl;
}
}

int main()
{
int a[3][4] = {1,1,1,1,2,2,2,2,3,3,3,3};
fun(a);
return 0;
}
输出结果:
4
16
36
相似回答