编写一个程序,输入nn(10>n>1),然后输入一个n行n列的矩阵,判断该矩阵是否对称矩阵(输出是或否)。
(对称矩阵(Symmetric Matrices)是指以主对角线为对称轴,各元素对应相等的矩阵)
【注意】输入n+1行,输出1行;运行效果应如下所示(输入数据间用半角空格分隔,第5行为输出),格式错误算结果错误。
3
3 3 3
3 1 2
3 2 3
是
#include <stdio.h>
int main()
{
int n;
int a[10][10];
scanf("%d", &n);
for(int i = 0;i < n;i++)
{
a[i][0] = a[i][i] = 1;
}
for(int i = 2;i < n;i++)
{
for(int j = 0;j < i;j++)
{
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
}
for(int i = 0;i < n;i++)
{
for(int j = 0;j < i + 1;j++)
{
printf("%d", a[i][j]);
}
printf("\n");
}
return 0;
}
杨辉三角金字塔形:
个人之前写过这个,跟题主实现思路也挺像的,以下可供题主参考:
//编程及注释:Code_流苏
//定义头文件
#include<stdio.h>
#include<stdlib.h>
//主函数
int main()
{
//定义三个整型变量i,j,k用于循环实现
int i, j, k;
int a[11][11]; //定义二维数组a[11][11]
printf("10行杨辉三角如下:\n");
//杨辉三角 实现 规律①(见概念说明)
for(i=1;i<=10;i++){
//两边的数令它为1,因为现在循环从1开始,就认为a[i][1]为第一个数
a[i][1] = a[i][i] = 1;
}
//杨辉三角 实现 规律②(见概念说明)
for(i=3;i<=10;i++){
for(j=2;j<=i-1;j++){
//除两边的数外都等于上两顶数之和
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
//界面美化 以及 打印输出
for(i=1;i<=10;i++){
for(k=1;k<=10-i;k++){
//这一行主要是在输出数之前打上空格占位,让输出的数更美观
printf(" ");
}
//j<=i的原因是不输出其它的数,只输出我们想要的数
for(j=1;j<=i;j++){
printf("%6d",a[i][j]);
}
//当一行输出完以后换行继续下一行的输出
printf("\n");
}
//整体执行结束后,输出换行,保持整体界面
printf("\n");
//返回0,代表程序执行结束
return 0;
}
测试图:
希望对题主有所帮助,可以的话,帮忙点个采纳!
你这代码和题目没啥关系呀
#include <iostream>
#include <iomanip>
using namespace std;
int* YangHuiData(int n);
void YangHuiShow(int *pData, int n);
int main() {
int n;
cin >> n;
int *pData = YangHuiData(n);
YangHuiShow(pData, n);
}
int* YangHuiData(int n) {
int *a = new int[n*n];
int i, j;
for (i = 0; i<n*n; i++) {
a[i] = 0;
}
a[0] = 1;
a[n] = 1;
a[n + 1] = 1;
for (i = 2; i<n; i++) {
a[i*n] = 1;
a[i*n + i] = 1;
for (j = 1; j<i; j++) {
a[i*n + j] = a[(i - 1)*n + j - 1] + a[(i - 1)*n + j];
}
}
return a;
}
void YangHuiShow(int *a, int n) {
//根据数据a指向的二维数组在屏幕上打印
//杨辉三角形,每行前面填充合适的空格
//以显示成等腰三角形,左右对称
int i, j;
for (i = 0; i<n; i++)
{
for (j = 0; j<n - i - 1; j++)
cout << setw(3) << " ";//前导空格,为单个数据的一半宽度
for (j = 0; j <= i; j++)
cout << setw(6) << a[i*n + j];
cout << endl;
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!