11.20

发布时间 2023-12-17 17:22:50作者: 刘梦磊

7.程序的功能是:键盘输入一个5行5列的矩阵,判断这个矩阵是否是对称矩阵。程序的主函数如下所示,请写出InputMatrix函数和IsSymmetricMatrix函数的定义(所谓对称矩阵,就是对于矩阵每个元素a[i][j]都满足a[i][j]=a[j][i])。(某年期末考题)

#include<stdio.h>

int main(){

int a[5][5]={0};

void InputMatrix(int a[][5]);           //键盘输入矩阵元素

int IsSymmetricMatrix(int a[][5]); //判断是否对称矩阵

InputMatrix(a);

if(IsSymmetricMatrix(a)==1)         //IsSymmetricMatrix函数返回1表示是对称矩阵

printf("是对称矩阵 ");

  else                             //IsSymmetricMatrix函数返回0表示不是对称矩阵

printf("不是对称矩阵 ");

  return 0;

}

程序代码:

#include <stdio.h>

#include <stdbool.h>

 

#define N 5

 

void InputMatrix(int matrix[N][N]) {

    printf("请输入一个5行5列的矩阵:\n");

    for (int i = 0; i < N; i++) {

        for (int j = 0; j < N; j++) {

            scanf("%d", &matrix[i][j]);

        }

    }

}

 

bool IsSymmetricMatrix(int matrix[N][N]) {

    for (int i = 0; i < N; i++) {

        for (int j = i + 1; j < N; j++) {

            if (matrix[i][j] != matrix[j][i]) {

                return false;

            }

        }

    }

    return true;

}

 

int main() {

    int matrix[N][N];

 

    InputMatrix(matrix);

 

    if (IsSymmetricMatrix(matrix)) {

        printf("这个矩阵是对称矩阵。\n");

    } else {

        printf("这个矩阵不是对称矩阵。\n");

    }

 

    return 0;

}

 

8.(某年期末考题)

 

程序代码:

 

#include <stdio.h>

 

void printMultiplicationTable() {

    for (int i = 1; i <= 9; i++) {

        for (int j = 1; j <= i; j++) {

            printf("%d * %d = %d\t", j, i, j * i);

        }

        printf("\n");

    }

}

 

int main() {

    printMultiplicationTable();

 

    return 0;

}