龙空技术网

c语言判断闰年&&矩阵的转置运算

额度Y 144

前言:

而今小伙伴们对“矩阵转置计算公式”大概比较看重,你们都需要剖析一些“矩阵转置计算公式”的相关内容。那么小编在网摘上网罗了一些关于“矩阵转置计算公式””的相关文章,希望咱们能喜欢,我们快快来了解一下吧!

判断闰年

输入一个年份,判断该年是否是闰年。

题目分析:

这是一道公司面试和各种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];}

运行结果:

标签: #矩阵转置计算公式