KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的线段图案。
输入描述:多组输入,一个整数(1~100),表示线段长度,即“*”的数量。
输出描述:针对每行输入,输出占一行,用“*”组成的对应长度的线段。
示例1输入:
10 2
输出:
********** **
#includeint main() { int n = 0; while (~scanf("%d", &n)) { for (int i = 0; i < n; i++) { printf("*"); } printf("n"); } return 0; }
牛客测试:
图案展示:
正方形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的正方形图案。
输入描述:多组输入,一个整数(1~20),表示正方形的长度,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应边长的正方形,每个“*”后面有一个空格。
示例1输入:
4
输出:
* * * * * * * * * * * * * * * *示例2
输入:
5
输出:
* * * * * * * * * * * * * * * * * * * * * * * * *
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0; for (i = 0; i < n; i++) { int j = 0; for (j = 0; j < n; j++) { printf("* "); } printf("n"); } } return 0; }
牛客测试:
图案展示:
直角三角形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的直角三角形图案。
输入描述:多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
示例1输入:
4
复制输出:
* * * * * * * * * *示例2
输入:
5
输出:
* * * * * * * * * * * * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0; for (i = 0; i < n; i++) { int j = 0; for (j = 0; j <= i; j++) { printf("* "); } printf("n"); } } return 0; }
牛客测试:
图案展示:
翻转直角三角形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的翻转直角三角形图案。
输入描述:多组输入,一个整数(2~20),表示翻转直角三角形直角边的长度,即“*”的数量,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的翻转直角三角形,每个“*”后面有一个空格。
示例1输入:
5
输出:
* * * * * * * * * * * * * * *
复制
示例2输入:
6
输出:
* * * * * * * * * * * * * * * * * * * * *
代码展示:
#include
牛客测试:
图案展示:
带空格直角三角形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。
输入描述:多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
示例1输入:
5
复制输出:
*
* *
* * *
* * * *
* * * * *
复制
示例2输入:
4
复制输出:
*
* *
* * *
* * * *
代码展示:
#include// - 第一种写法 //int main() //{ // int n = 0; // while (~scanf(" %d", &n)) // { // int i = 0; // - n = 5 // for (i = 0; i < n; i++) // { // int j = 0; // // 先打印空格 // 5 - 1 = 4 4-0=4 4-1=3 4-2=2 4-3=1 // for (j = 0; j < n-i-1; j++) // { // printf(" "); // } // // 在打印星星 // for (j = 0; j <= i; j++) // { // printf("* "); // } // printf("n"); // } // } // return 0; //} // - 第二种找规律写法 int main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0; for (i = 0; i < n; i++) { int j = 0; for (j = 0; j < n; j++) { if (i + j < n - 1) printf(" "); else printf("* "); } printf("n"); } } return 0; }
牛客测试:
图案展示:
金字塔图案描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“* ”组成的金字塔图案。
输入描述:多组输入,一个整数(2~20),表示金字塔边的长度,即“ * ”的数量,,也表示输出行数。
输出描述:针对每行输入,输出用“ * ”组成的金字塔,每个“ * ”后面有一个空格。
示例1
输入:4
输出:
*
* *
* * *
* * * *
示例2
输入:5
输出:
*
* *
* * *
* * * *
* * * * *
代码展示:
#include描述 KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“* ”组成的金字塔图案。 输入描述:多组输入,一个整数(2~20),表示金字塔边的长度,即“ * ”的数量,,也表示输出行数。 输出描述:针对每行输入,输出用“ * ”组成的金字塔,每个“ * ”后面有一个空格。 示例1 输入:4 输出: * * * * * * * * * * 示例2 输入:5 输出: * * * * * * * * * * * * * * * int main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0, j = 0; for (i = 0; i < n; i++) { // -打印空格 for (j = 0; j < n-1-i ; j++) { printf(" "); } for (j = 0; j <=i ; j++) { printf("* "); } printf("n"); } } return 0; }
牛客测试:
图案展示:
翻转金字塔图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的翻转金字塔图案。
输入描述:多组输入,一个整数(2~20),表示翻转金字塔边的长度,即“*”的数量,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
示例1输入:
5
输出:
* * * * *
* * * *
* * *
* *
*
示例2
输入:
6
输出:
* * * * * *
* * * * *
* * * *
* * *
* *
*
代码展示:
#includeint main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0; int j = 0; // - 打印前段的空格 for (i=0; i 0) //{ for (j = 0; j < i; j++) { printf(" "); } //} for (j = 0; j < n-i; j++) { printf("* "); } printf("n"); } } return 0; }
牛客测试:
图案展示:
菱形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的菱形图案。
输入描述:多组输入,一个整数(2~20)。 输出描述:针对每行输入,输出用“*”组成的菱形,每个“*”后面有一个空格。 示例1输入:
2
输出:
* * * * * * * * *示例2
输入:
3
输出:
* * * * * * * * * * * * * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0; int j = 0; // - 打印菱形上半部分 - 组成部分:“空格” “*空格” // - 打印空格 for (i = 0; i < n; i++) //n行 { // - 打印“空格” for (j = 0; j < n - i; j++) { printf(" "); } // - 打印“*空格” for (j = 0; j <= i; j++) { printf("* "); } printf("n"); // - 打印完换行。 } for (i = 0; i < n+1; i++) //n+1行 { // - 打印“空格” for (j = 0; j < i; j++) { printf(" "); } // - 打印“*空格” for (j = 0; j < n + 1 - i; j++) { printf("* "); } printf("n"); // - 打印完换行。 } } return 0; }
牛客测试:
图案展示:
K形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的K形图案。
输入描述:多组输入,一个整数(2~20)。
输出描述:针对每行输入,输出用“*”组成的K形,每个“*”后面有一个空格。
示例1输入:
2
输出:
* * * * * * * * * * *
复制
示例2输入:
3
输出:
* * * * * * * * * * * * * * * * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0; int j = 0; // - 先打印上边 4 行 for (i = 0; i < n; i++) // n行 { for (j = 0; j < n + 1 - i; j++) // n+1列 { printf("* "); } for (j = 0; j <= i; j++) { printf(" "); } printf("n"); } // - 打印下列n+1行 for (i = 0; i < n + 1; i++) { for (j = 0; j <= i; j++) { printf("* "); } for (j = 0; j <= n-i ; j++) { printf(" "); } printf("n"); } } }
牛客测试:
图案展示:
箭形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的箭形图案。
输入描述:本题多组输入,每行一个整数(2~20)。
输出描述:针对每行输入,输出用“*”组成的箭形。
示例1输入:
2
输出:
*
**
***
**
*
示例2
输入:
3
输出:
*
**
***
****
***
**
*
代码展示:
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0; int j = 0; // 打印上面部分 输入4 打印4行 for (i = 0; i < n; i++) { // - 打印“空格” for (j = 0; j < n-i ; j++) { printf(" "); } // - 打印“*” for (j = 0; j <=i ; j++) { printf("*"); } printf("n"); } // 打印上面部分 输入4 打印5行 for (i = 0; i < n + 1; i++) { // - 打印“空格” for (j = 0; j < i; j++) { printf(" "); } // - 打印“*” for (j = 0; j < n+1-i ; j++) { printf("*"); } printf("n"); } } return 0; }
牛客测试:
图案展示:
反斜线形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的反斜线形图案。
输入描述:多组输入,一个整数(2~20),表示输出的行数,也表示组成反斜线的“*”的数量。
输出描述:针对每行输入,输出用“*”组成的反斜线。
示例1输入:
4
输出:
* * * *示例2
输入:
5
输出:
*
*
*
*
*
代码展示:
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0; int j = 0; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (j == i) { printf("*"); } else { printf(" "); } } printf("n"); } } return 0; }
牛客测试:
图案展示:
正斜线形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的正斜线形图案。
输入描述:多组输入,一个整数(2~20),表示输出的行数,也表示组成正斜线的“*”的数量。
输出描述:针对每行输入,输出用“*”组成的正斜线。
示例1输入:
4
输出:
* * * *示例2
输入:
5
输出:
* * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0, j = 0; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (j == n - 1 - i) { printf("*"); } { printf(" "); } } printf("n"); } } return 0; }
牛客测试:
图案展示:
X形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的X形图案。
输入描述:多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
输出描述:针对每行输入,输出用“*”组成的X形图案。
示例1输入:
5
输出:
* * * * * * * * *示例2
输入:
6
输出:
* * * * ** ** * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf(" %d", &n)) { int i = 0, j = 0; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (j == i) { printf("*"); } else if (j == n - 1 - i) { printf("*"); } else { printf(" "); } } printf("n"); } } return 0; }
牛客测试:
图案展示:
空心正方形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的“空心”正方形图案。
输入描述:多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数量。
输出描述:针对每行输入,输出用“*”组成的“空心”正方形,每个“*”后面有一个空格。
示例1输入:
4
输出:
* * * * * * * * * * * *
复制
示例2输入:
5
输出:
* * * * * * * * * * * * * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0, j = 0; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == 0 || i == n - 1) { printf("* "); } else if (j == 0 || j == n - 1) { printf("* "); } else { printf(" "); } } printf("n"); } } return 0; }
牛客测试:
图案展示:
空心三角形图案 描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的“空心”三角形图案。
输入描述:多组输入,一个整数(3~20),表示输出的行数,也表示组成三角形边的“*”的数量。
输出描述:针对每行输入,输出用“*”组成的“空心”三角形,每个“*”后面有一个空格。
示例1输入:
4
输出:
* * * * * * * * *示例2
输入:
5
输出:
* * * * * * * * * * * *
代码展示:
#includeint main() { int n = 0; while (~scanf("%d", &n)) { int i = 0, j = 0; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == j || j == 0 || i == n - 1) { printf("* "); } else { printf(" "); } } printf("n"); } } return 0; }
牛客测试:
图案展示:



