文章目录
- 11 打印字母C
- 12 输出国际象棋棋盘。
- 13 打印楼梯,同时在楼梯上方打印两个笑脸。
- 14 输出9*9 口诀。
- 15 有一道题要输出一个图形,然后Very Beautiful。
11 打印字母C
11 用*号输出字母C的图案。
讲道理这绝对不该是个新人能整出来的活儿,而标准答案打印出来的也根本不是C,而是个框。想要打出C这个字符还是相当有难度的,最起码得用个点阵字库之类的,不过关于如何调用点阵字库以后再讲,这里还是简单画个框。
#include<stdio.h>
void drawC(){
printf("████████\n██\n██\n████████\n");
}
int main()
{
drawC();
}
结果为
>a.exe
████████
██
██
████████
12 输出国际象棋棋盘。
比小九九唯一不一样的是需要加一条判断,即判断是黑格子还是白格子。
#include<stdio.h>
void drawChess(){
int i,j;
for(i=0;i<8;i++){
for(j=0;j<8;j++)
printf((i+j)%2==0 ? "██" : " ");
printf("\n");
}
}
int main()
{
drawChess();
}
效果如下,感觉没有在命令行中输出好看
>a.exe
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
██ ██ ██ ██
13 打印楼梯,同时在楼梯上方打印两个笑脸。
楼梯我可以理解,但笑脸是什么鬼……
#include "stdio.h"
void drawStair(){
int i,j;
printf("😁😁\n");
for(i=1;i<11;i++){
for(j=1;j<=i;j++)
printf("██");
printf("\n");
}
}
int main()
{
drawStair();
}
效果如下,我估计主要是因为十年前没有emoji,所以难点应该是如何输出笑脸。
14 输出9*9 口诀。
又是我最讨厌的循环嵌套,但这次感觉没什么发挥的余地了。
#include <stdio.h>
void draw99(){
int i,j;
for (i=1; i<10; i++){
for(j=1; j<=i; j++)
printf("%d*%d=%-3d",j,i,i*j);
printf("\n");
}
}
int main()
{
draw99();
}
结果为
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
15 有一道题要输出一个图形,然后Very Beautiful。
由于压根没看懂这题是要干嘛,反正最后是画了个叉
#include<stdio.h>
void drawBeautiful(){
int i,j;
for(i=-5; i<=5; i++){
for(j=-5; j<=5; j++)
printf(i*i==j*j ? "💗" : "💟");
printf("\n");
}
}
int main()
{
drawBeautiful();
}
效果如下
>a.exe
💗💟💟💟💟💟💟💟💟💟💗
💟💗💟💟💟💟💟💟💟💗💟
💟💟💗💟💟💟💟💟💗💟💟
💟💟💟💗💟💟💟💗💟💟💟
💟💟💟💟💗💟💗💟💟💟💟
💟💟💟💟💟💗💟💟💟💟💟
💟💟💟💟💗💟💗💟💟💟💟
💟💟💟💗💟💟💟💗💟💟💟
💟💟💗💟💟💟💟💟💗💟💟
💟💗💟💟💟💟💟💟💟💗💟
💗💟💟💟💟💟💟💟💟💟💗