Ⅰ c语言 打印矩阵
你好
具体实现如下 代码有注释 帮助理解
#include <stdio.h>
void main()
{
int i,j,n;
int a[100][100];//行标和列标的最大值100可以自行修改 不过这里100足够了
printf("enter n(n<=100):");//因为预定义的数组最大就是100 因此不要超过数组行标和列标的最大值
scanf("%d",&n);
for(i=0;i<n;i++)
{
if(i%2==0)//判断行数是偶数 那么就是降序
{
for(j=0;j<n;j++)
a[i][j]=i*n+(j+1);
}
else//行数是奇数 就升序
{
for(j=n-1;j>-1;j--)
a[i][j]=i*n+(n-j);
}
}
for(i=0;i<n;i++)//输出数组a
{
for(j=0;j<n;j++)
{
printf("%d\t",a[i][j]);
}
printf("\n\n\n");
}
}
希望能帮助你哈
Ⅱ c语言编程 输入一个3*3的矩阵,打印该矩阵,并输出该矩阵的对角元素
#include<stdio.h>
#defineM3
#defineN3
voidCreate_matrix(intmatrix[M][N],intm,intn){
inti,j;
printf("开始输入矩阵内容(%d行%d列) ",m,n);
for(i=0;i<m;i++){
printf("输入第%d行的%d个元素:",i+1,n);
for(j=0;j<n;j++)
scanf("%d",&matrix[i][j]);
}
}
voidPrint_matrix(intmatrix[M][N],intm,intn){
inti,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++)
printf("%d ",matrix[i][j]);
printf(" ");
}
}
voidPrint_matrix_diagonal(intmatrix[M][N],intm,intn){
inti,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++)
if(i==j||i+j==M-1)
printf("%d ",matrix[i][j]);
else
printf(" ");
printf(" ");
}
}
intmain(void){
intmatrix[M][N];
Create_matrix(matrix,M,N);
printf("====================================================== ");
printf("您输入的矩阵为: ");
Print_matrix(matrix,M,N);
printf("对角线元素为: ");
Print_matrix_diagonal(matrix,M,N);
return0;
}
执行结果
Ⅲ C语言:输入n,怎么在屏幕上打印出N*N的矩阵
void main()
{ int i, j,n ;
scanf("%d",&n);
for( i = 0 ; i <n ; i++ )
{ for( j = 0 ; j<n ; j++ )
printf("%d ", n) ;
printf("\n") ;
}
}
Ⅳ 怎样用C语言输出矩阵
定义二维数组作为矩阵,然后用两个for循环打印出每个元素即可。
例如一个10x10的矩阵;
#define m 10
#define m 10
int a[m][n];
for(i = 0; i <m; i++){
for(j = 0; j < n; j++)
printf("%d",a[i][j]);
printf("\n");
}
Ⅳ c语言这个怎么要填13个数才能把矩阵打印出来,填12个数就一直回车无限循环
您好,很高兴回答您的问题。
在scanf函数中,包含有两部分内容,一个由双引号括起来的格式字符,包括有以%开头的格式符、以\开头的转义字符和普通字符。其中格式符就是需要输出的数据的格式、即为类型,转义字符会转变成相关含义显示,普通字符会照原样输出。这里面的%d是格式符,后面的空格是普通字符,没有转义字符,那么在输入的时候就要输入一个数字后再输入一个空格,系统才能结束输入。这个就是为什么要多输入一个字符的原因。去掉%d后面的空格,那么就不会出现这个问题了。
Ⅵ C语言,帮忙看下这道二维数组题,输入的矩阵怎么原样输出啊
在printf("转置矩阵A︐为:\n");的上面加上:
printf("原矩阵A为:\n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("\n");
}
Ⅶ C语言中怎么实现输入二维数组,打印出一个3*4矩阵
//这个问题居然没人答
float mat[3][4]={0};
int x=0;
int y=0;
for(;y<3;y++){
for(;x<4;x++){
printf("input row:%d col:%d ---->\n", y,x);
scanf("%f", mat[x][y]);
}
}
for(;y<3;y++){
for(;x<4;x++){
printf("%f ", mat[x][y]);
}
printf("\n");
}
Ⅷ c语言编程 输入一个矩阵,然后输出矩阵,有几种方法呢
输入可以不知道长宽,但是输出的长宽一定要知道的。
这样输入的时候,可以考虑把数据全都存到一维数组或者二维数组,应该就两种,因为本质上,任何维的数组都可以转化为一维数组。