BestAns

路漫漫其修远兮,吾将上下而求索

VC绘图/游戏简易教程--4:结合流程控制语句来绘图

教程总目录:https://www.codeabc.cn/bestans/post/concise-lesson-contents(里面包括VC下的graphics.h的配置方法)

[学习目标]

熟练使用循环、判断语句

[熟悉for语句]

这步需要自学,看看自己手边的书,是怎样讲for语句的,简单看看就行。

[范例]

例如,画10条直线的代码:

#include <graphics.h>
#include <conio.h>

int main()
{
	initgraph(640, 480);

	for(int y=100; y<200; y+=10)
		line(100, y, 300, y);

	_getch();
	closegraph();
	return 0;
}

换一下循环的范围和间隔,看看效果。

还可以用来画渐变色,例如:

#include <graphics.h>
#include <conio.h>

int main()
{
	initgraph(640, 480);

	for(int y=0; y<256; y++)
	{
		setcolor(RGB(0,0,y));
		line(100, y, 300, y);
	}

	_getch();
	closegraph();
	return 0;
}

[熟悉if语句]

这步需要自学,看看自己手边的书,是怎样讲if语句的,简单看看就行。

配合 if 语句,实现红色、蓝色交替画线:

#include <graphics.h>
#include <conio.h>

int main()
{
	initgraph(640, 480);

	for(int y=100; y<200; y+=10)
	{
		if ( y/10 % 2 == 1)    // 判断奇数行偶数行
			setcolor(RGB(255,0,0));
		else
			setcolor(RGB(0,0,255));

		line(100, y, 300, y);
	}

	_getch();
	closegraph();
	return 0;
}

[作业]

  1. 画围棋棋盘。
  2. 画中国象棋的棋盘。
  3. 画国际象棋的棋盘,看手册找到颜色填充语句,实现国际象棋棋盘的区块填充。
  4. 自学 while 语句。

学到这里,已经可以画出很多东西了。把自己想象中的图案绘制一下吧。

分享到