C语言for()循环打印三角形、倒置三角形、菱形、九九表
2019-01-08 20:31
597 查看
C语言for()循环打印三角形、倒置三角形、菱形图形、九九表
一、三角形
#include <stdio.h>
int main(void){
//输入行数打印三角形
int n; //行数 printf("输入行数: \n"); scanf("%d",&n); /* printf(" *\n"); //1 printf(" ***\n"); //2 printf(" *****\n"); //3 printf(" *******\n"); //4 printf(" *********\n"); //5 printf("***********\n"); //6 */ /* 第1行: 5个空格, 1个* 第2行: 4个空格, 3个* 第3行: 3个空格, 5个* 第4行: 2个空格, 7个* 第5行: 1个空格, 9个* 第6行: 0个空格, 11个* 第i行: n-i个空格, *个数=2*i-1; */ for(int i=1;i<=n;i++){ //每次循环打印一行 //打印空格,空格数是n-i个 for(int j=0;j<n-i;j++){ printf(" "); } //打印*,个数是2i-1 for(int j=0;j<2*i-1;j++){ printf("*"); } //打印换行符 printf("\n"); } return 0;
}
二、倒置三角形
#include <stdio.h>
int main(void){
//输入行数打印倒置三角形
int n; //行数 printf("输入行数: \n"); scanf("%d",&n); /* printf("***********\n"); //1 printf(" *********\n"); //2 printf(" *******\n"); //3 printf(" *****\n"); //4 printf(" ***\n"); //5 printf(" *\n"); //6 */ /* 第1行: 0个空格, 11个* 第2行: 1个空格, 9个* 第3行: 2个空格, 7个* 第4行: 3个空格, 5个* 第5行: 4个空格, 3个* 第6行: 5个空格, 1个* 第i行: i-1个空格, *个数=2*n-(2*i-1); */ for(int i=1;i<=n;i++){ //每次循环打印一行 //打印空格,空格数是i-1个 for(int j=0;j<i-1;j++){ printf(" "); } //打印*,个数是2*n-(2*i-1); for(int j=0;j<2*n-(2*i-1);j++){ printf("*"); } //打印换行符 printf("\n"); } return 0;
}
三、菱形
#include <stdio.h>
int main(void){
//输入行数打印菱形
int i;
int n; //行数
printf("输入奇数行数,如5,7,9等数(偶数不能打印对称的菱形): \n"); scanf("%d",&n); /* printf(" *\n"); //1 printf(" ***\n"); //2 printf(" *****\n"); //3 printf(" *******\n"); //4 printf(" *********\n"); //5 printf("***********\n"); //6 printf(" *********\n"); //7 printf(" *******\n"); //8 printf(" *****\n"); //9 printf(" ***\n"); //10 printf(" *\n"); //11 */ /* 第1行: 5个空格, 1个* 第2行: 4个空格, 3个* 第3行: 3个空格, 5个* 第4行: 2个空格, 7个* 第5行: 1个空格, 9个* 第6行: 0个空格, 11个* 第i行: (n+1)/2-i个空格, *个数=2i-1; 第7行: 1个空格, 9个* 第8行: 2个空格, 7个* 第9行: 3个空格, 5个* 第10行: 4个空格, 3个* 第11行: 5个空格, 1个* 第i行: i-(n+1)/2 个空格, *个数=2*n-(2*i-1); */ for(i=1;i<=n;i++){ //每次循环打印一行 if(i<=(n+1)/2){ //打印空格,空格数是(n+1)/2-i for(int j=0;j<(n+1)/2-i;j++){ printf(" "); } //打印*个数是2i-1 for(int j=0;j<2*i-1;j++){ printf("*"); } } if(i>(n+1)/2){ //打印空格,空格数是i-(n+1)/2 for(int j=0;j<i-(n+1)/2;j++){ printf(" "); } //打印*个数是2*n-(2*i-1) for(int j=0;j<2*n-(2*i-1);j++){ printf("*"); } } //打印换行符 printf("\n"); } return 0;
}
四、九九表
#include <stdio.h>
int main(void){
/*
数学版乘法口诀表
1×1=1
1×2=2 2×2=4
1×3=3 2×3=6 3×3=9
1×4=4 2×4=8 3×4=12 4×4=16
1×5=5 2×5=10 3×5=15 4×5=20 5×5=25
1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36
1×7=7 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=49
1×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=64
1×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81
*/ //每次打印一行 int i; //行 一共9行 int j; //列 一共9列 for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ printf("%dX%d=%d\t",j,i,j*i); } printf("\n"); } return 0;
}
gcc 文件名 -std=c99编译以上三种图运行即可。编译器是MinGW。
本小猿代码可能臃肿,望大猿不吝赐教。
相关文章推荐
- for循环打印等腰三角形、直角三角形、菱形
- for循环图形打印(三角形菱形实心/空心,字母K)
- 关于用for()循环打印一个三角形(菱形)
- C语言用for循环打印菱形
- 用for循环打印菱形
- 使用递归做到1个for循环打印菱形
- 用for循环打印菱形
- python for循环打印菱形
- 两层for循环使用之 打印任意行数的菱形图像
- 多重for循环打印菱形
- 用for循环打印半金字塔、金字塔、正方形、倒金字塔、菱形、空心图形等
- JAVA一层for循环实现打印正三角形和到三角形
- Oracle循环结构示例,打印图形,三角形,菱形
- 用循环打印菱形_C语言算法
- 循环语句练习题2(打印三角形和菱形)
- 作业4.5-2用for循环打印菱形
- Java for循环嵌套打印菱形(可控输出行数)
- Java利用for循环输出空心三角形、空心菱形和空心矩形的代码
- 嵌套循环打印三角形 菱形 99乘法表
- php练习——用for循环打印半金字塔、金字塔、正方形、倒金字塔、菱形、空心图形等