我从简单到难,一起走上漫漫刷题路!
我会持续在我的博客中更新我每天刷题的内容!
相互交流!
大家一键三连,多多关注!
这是今天我给大家带来的题!以后难度逐渐加深!
1.X形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的X形图案。
输入描述:
多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
输出描述:
针对每行输入,输出用“*”组成的X形图案。
#include <stdio.h> int main() { int a; while (scanf("%d", &a) != EOF) { for (int i = 0; i < a; i++) { for (int j = 0; j < a; j++) { if ((i == j) || (j == a - i - 1)) { printf("*"); } else { printf(" "); } } printf("\n"); } } return 0; }
2.带空格直角三角形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。
输入描述:
多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。
输出描述:
针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
#include <stdio.h> int main() { int n = 0; int i = 0; int j = 0; int k = 0; while (scanf("%d", &n) != EOF) { for (i = n; i > 0; i--) { for (j = 0; j < i - 1; j++) { printf(" "); } for (k = n - j; k > 0; k--) { printf("* "); } printf("\n"); } } return 0; }
3.金字塔图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的金字塔图案。
输入描述:
多组输入,一个整数(2~20),表示金字塔边的长度,即“*”的数量,,也表示输出行数。
输出描述:
针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
#include <stdio.h> int main() { int a = 0; while (scanf("%d", &a) != EOF) { for (int i = 0; i < a; i++) { for (int j = 0; j < a - i - 1; j++) { printf(" "); } for (int k = 0; k <= i; k++) { printf("* "); } printf("\n"); } } return 0; }
4. 翻转金字塔图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的翻转金字塔图案。
输入描述:
多组输入,一个整数(2~20),表示翻转金字塔边的长度,即“*”的数量,也表示输出行数。
输出描述:
针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
#include <stdio.h> int main() { int n = 0; while (scanf("%d", &n) != EOF) { for (int i = 0; i < n; i++) { for (int j = 0; j < i; j++) { printf(" "); } for (int k = 0; k < n-i; k++) { printf("* "); } printf("\n"); } } return 0; }
5. 菱形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的菱形图案。
输入描述:
多组输入,一个整数(2~20)。
输出描述:
针对每行输入,输出用“*”组成的菱形,每个“*”后面有一个空格。
#include <stdio.h> void printUp(int n) { int i, j, k; for (int i = 1; i <= n; i++) { for (int j = 1; j <= n + 1 - i; j++) { printf(" "); } for (int k = 1; k <= i; k++) { printf("* "); } printf("\n"); } } void printDown(int n) { int i, j, k; for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { printf(" "); } for (int k = 1; k <= n + 1 - i; k++) { printf("* "); } printf("\n"); } } int main() { int n; while (scanf("%d", &n) != EOF) { printUp(n); for (int i = 1; i <= n + 1; i++) { printf("* "); } printf("\n"); printDown(n); } }
6.K形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的K形图案。
输入描述:
多组输入,一个整数(2~20)。
输出描述:
针对每行输入,输出用“*”组成的K形,每个“*”后面有一个空格。
#include <stdio.h> int main() { int n = 0; int i = 0; int j = 0; int k = 0; while (scanf("%d", &n) != EOF) { for (i = 0; i < n + 1; i++) { for (j = n + 1 - i; j > 0; j--) { printf("* "); } printf("\n"); } for (i = 0; i < n; i++) { for (j = 0; j <= i + 1; j++) { printf("* "); } printf("\n"); } } return 0; }
7.箭形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的箭形图案。
输入描述:
本题多组输入,每行一个整数(2~20)。
输出描述:
针对每行输入,输出用“*”组成的箭形。
#include <stdio.h> int main() { int n = 0; int i = 0; int j = 0; int k = 0; while (scanf("%d", &n) != EOF) { for (i = n; i > 0; i--) { for (j = 2 * i; j > 0; j--) { printf(" "); } for (k = i; k <= n; k++) { printf("*"); } printf("\n"); } for (i = 0; i < n + 1; i++) { printf("*"); } printf("\n"); for (i = 0; i < n; i++) { for (j = 2 * (i + 1); j > 0; j--) { printf(" "); } for (k = 0; k < n - i; k++) { printf("*"); } printf("\n"); } } return 0; }
8.反斜线形图案
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的反斜线形图案。
输入描述:
多组输入,一个整数(2~20),表示输出的行数,也表示组成反斜线的“*”的数量。
输出描述:
针对每行输入,输出用“*”组成的反斜线。
#include <stdio.h> int main() { int a=0,n=0,m=0; while(scanf("%d",&a)!=EOF) { for(n=1;n<=a;n++) { for(m=1;m<n;m++) printf(" "); printf("*\n"); } } return 0; }