题目:输入一个正整数n(3<=n<=6),再输入n阶矩阵中的元素(由键盘输入),求各行元素之和。
由键盘输入矩阵中的元素:
#include<stdio.h>
#define M 6
#define N 6
int main()
{
int i,j,n,sum;
int a[M][N];
printf("输入n(3<=n<=6):");
scanf("%d",&n);
printf("输入%d个数形成矩阵:\n",n*n);//用空格隔开
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
printf("%3d ",a[i][j]);
}
printf("\n");
}
for(i=0;i<n;i++)
{
sum=0;
for(j=0;j<n;j++)
{
sum+=a[i][j];
}
printf("第%d行的元素之和为%d\n",i+1,sum);
}
return 0;
}
若嫌键盘输入麻烦,可用随机函数:
# include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define M 6
#define N 6
int main()
{
int i,j,n,sum;
int a[M][N];
printf("输入n(3<=n<=6):");
scanf("%d",&n);
srand(time(0));
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
a[i][j]=rand()%(20-0+1)+0;//产生的数在0~20之间
}
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
printf("%3d ",a[i][j]);
}
printf("\n");
}
for(i=0;i<n;i++)
{
sum=0;
for(j=0;j<n;j++)
{
sum+=a[i][j];
}
printf("第%d行的元素之和为%d\n",i+1,sum);
}
return 0;
}