输入一个n,打印n行n列。
比如:输入一个4,打印如下:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
/*
思路分析:打印矩阵,按行方式打印 然后一个一个打印出来
因此需要两个for 一个控制行数 一个控制打印内容
因为是逐渐增加的,因此需要定义一个变量去存储值
*/
printf("输入n");
int n;
scanf("%d",&n);
int k = 1;
for (int i = 0; i <= n; i++){
for (int j = 1; j <= n; j++){
printf("%d", k);
k = k + 1;
}
printf("\n");
}
打印右三角形
/*
思路分析:因为是要打印右三角形,其实就是补上空格的过程
一个for控制行数 两个并列的for分别控制空格和*号
空格的个数和*号的个数要和行数找到关系
*/
printf("输入一个数");
int n;
scanf("%d", &n);
for (int i = 0; i <= n; i++){
for (int j = 0; j <= n - i - 1; j++){
printf(" ");
}
for (int m = 0; m <= i; m++){
printf("*");
}
printf("\n");
}
打印等腰三角形
/*
思路分析:打印等腰三角形,其实就是在右三角形的基础上补上右边的*号
因此在内循环控制*号打印的循环语句中 找到*号个数和行数的关系作为判断条件即可
*/
printf("输入一个数");
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++){
for (int j = 0; j <= n - i - 1; j++){
printf(" ");
}
for (int m = 0; m <= 2*i; m++){
printf("*");
}
printf("\n");
}