题目是这样的:编写一程序P7-748.C实现以下功能
从键盘上输入矩阵的阶数n(n<=14), 矩阵中元素的值等于其位置的行数和列数之和的n倍(行列的值从0开始计数),如n=3时,矩阵为
0 3 6
3 6 9
6 9 12
先输出该矩阵(显示时每个数宽度为4、右对齐),然后计算输出sum1和sum2的值:sum1为矩阵中所有不靠边元素之和、sum2为矩阵的一条对角线元素之和。
我的解答时这样的:
#include <stdio.h>
int main(void)
{
int s1[14][14], i, j, n, sum1 = 0, sum2 = 0, sum3 = 0, sum;
printf("Enter n:");
scanf("%d", &n);
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
s1[i][j] = (i + j) * n ;
}
}
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
printf("%4d", s[i][j]);
}
printf("\n");
}
for (i = 0; i < n; i++)
{
sum1 += s1[i][i];
for (j = 0; j < n; j++)
{
sum2 += s1[i][j];
if (i == 0 || j == 0 || i == n - 1 || j == n - 1)
{
sum3 += s1[i][j];
}
}
}
sum = sum2 - sum3;
printf("sum1=%d\n", sum1);
printf("sum=%d", sum);
return 0;
}
然后就弄死不对!!会的给个答案吧!谢谢!!