前言:
而今小伙伴们对“矩阵转置计算公式”大概比较看重,你们都需要剖析一些“矩阵转置计算公式”的相关内容。那么小编在网摘上网罗了一些关于“矩阵转置计算公式””的相关文章,希望咱们能喜欢,我们快快来了解一下吧!判断闰年
输入一个年份,判断该年是否是闰年。
题目分析:
这是一道公司面试和各种C语言考试中常考的题目。虽然这道题目十分简单,但是作为一个专业的程序员这是必备的常识。所谓闰年,是要符合下面两个条件之一:
(1)该年份能被4整除,但不能被100整除;
(2)该年份能被4整除,又能被400整除。
只要符合以上的两条件之一的年份都是闰年。最简单的判断闰年的方法是用条件判断语句(if-else语句)配合逻辑表达式进行判断,充分地利用逻辑表达式进行判断可使程序的可读性更好,效率更高。
#include "stdio.h"main(){ int year; printf("Please a year:\n"); scanf("%d",&year); /*判断是否是闰年*/ if((year % 4 == 0 && year % 100 !=0)||(year % 400 ==0 )) printf("%d is leap year!\n",year); else printf("%d is not leap year!\n",year); getche();}
运行结果:
矩阵的转置运算
题目要求:
用键盘从终端输入一个3行4列的矩阵,编写一个函数对该矩阵进行转置操作。
题目分析:
这个问题的解决关键是要解决两个问题:(1)数据在内存中的存储问题,也就是数据结构的问题;(2)如何通过函数来实现矩阵的转置运算。显然,可以用一个二维数组来存储矩阵的数据,通过将二维数组的指针作为函数的参数进行传递,来实现矩阵转置函数的功能。
#include "stdio.h"#include <stdio.h>void InputMatrix(int (*a)[4],int ,int );void OutputMatrix(int (*b)[3],int ,int );void MatrixTranspose(int (*a)[4],int (*b)[3]);int main(void){ int a[3][4],b[4][3]; /*a 存放原矩阵,b存放a 矩阵的转置矩阵*/ printf("Please input 3×4 matrix\n"); InputMatrix(a,3,4); MatrixTranspose(a,b); printf("The Transposex Matrix is\n"); OutputMatrix(b,4,3); getche(); return 0;}void InputMatrix(int (*a)[4],int n,int m){ /*输入n*m阶的矩阵 */ int i,j; for(i=0;i<n;i++) for(j=0;j<m;j++) scanf("%d",*(a+i)+j);}void OutputMatrix(int (*b)[3],int n,int m){ /* 输出n*m阶矩阵的值 */ int i,j; for(i=0;i<n;i++) { for(j=0;j<m;j++) printf("%d ",*(*(b+i)+j)); printf("\n"); }}void MatrixTranspose(int (*a)[4],int (*b)[3]){ /*矩阵的转置运算*/ int i,j; for(i=0;i<4;i++) for(j=0;j<3;j++) b[i][j]=a[j][i];}
运行结果:
标签: #矩阵转置计算公式