参考方法:
#include <stdio.h> #include <stdlib.h> #include <windows.h> int main(void) { SetConsoleOutputCP(437); char a=219; printf("\1\1\n"); for(int i=0;i<=9;i++) { for(int j=0;j<=i;j++) printf("%c",a); printf("\n"); } return 0; }
#include<stdio.h> int main(void) { for(int i=1;i<9;i++) { if(i%2==0) { printf("■□■□■□■□\n"); }else{ printf("□■□■□■□■\n"); } } }
#include <stdio.h> #include <stdlib.h> #include <windows.h> int main(void) { SetConsoleOutputCP(437); int a=219; for(int i=0;i<8;i++) { for(int j=0;j<4;j++) { if(i%2==0) printf("%c ",a); else printf(" %c",a); } printf("\n"); } }
想法:不玩行数和列数的数字游戏,在我的眼中从每行来看只有两种状态不断在切换:
第一行:先白后黑,后白,。。。交替,这个容易实现
第二行:先黑后白,后黑,。。。交替,这个也容易实现
第三行:其实就是第一行的状态重复
列状态的切换简单,行状态专门用一个数组来存储,只有两种状态(0,1)
参考代码:
#include<stdio.h> void f7(){ int i=0,j=0; //行输出只有两种状态,不断交替 int position[8]={1,0,1,0,1,0,1,0}; for(i=0;i<8;i++){ if(position[i]==1){ for(j=0;j<4;j++){ printf("%c%c",0xa8,0x80);//输出黑色方格,在黑色DOS窗口下是一个白色的方格 printf(" "); //输出2个空格,在黑色DOS窗口下像一个黑色方格 } }else{ for(j=0;j<4;j++){ printf(" "); printf("%c%c",0xa8,0x80); } } printf("\n"); } } int main(){ f7(); return 0; }
在 VS2017 环境下生成棋盘:
#include<stdio.h> #include<stdlib.h> int main() { int i,j; for(i=0;i<8;i++) { for(j=0;j<8;j++) { if((i+j)%2==0) { printf("%c%c",0xa8,0x80); } else { printf(" "); } } printf("\n"); } system("pause"); return 0; }
感谢您的支持,我会继续努力的!
支付宝扫一扫,即可进行扫码打赏哦
1680c-exercise-example10
参考方法:
1679c-exercise-example9
参考方法:
1678c-exercise-example9
参考方法:
1677c-exercise-example9
想法:不玩行数和列数的数字游戏,在我的眼中从每行来看只有两种状态不断在切换:
第一行:先白后黑,后白,。。。交替,这个容易实现
第二行:先黑后白,后黑,。。。交替,这个也容易实现
第三行:其实就是第一行的状态重复
列状态的切换简单,行状态专门用一个数组来存储,只有两种状态(0,1)
参考代码:
1676c-exercise-example9
在 VS2017 环境下生成棋盘: