c语言跳舞代码easyx
时间: 2024-01-19 17:02:32 浏览: 121
以下是一个使用EasyX图形库实现的C语言跳舞代码的例子:
```c
#include <graphics.h>
#include <conio.h>
#include <time.h>
int main()
{
initgraph(640, 480); // 初始化图形界面
setbkcolor(WHITE); // 设置背景颜色为白色
cleardevice(); // 清屏
// 定义跳舞小人的坐标
int x = 320, y = 240;
// 定义跳舞小人的各个部位的坐标
int head_x = x, head_y = y - 80;
int body_x = x, body_y = y - 40;
int left_hand_x = x - 30, left_hand_y = y - 40;
int right_hand_x = x + 30, right_hand_y = y - 40;
int left_leg_x = x - 20, left_leg_y = y + 10;
int right_leg_x = x + 20, right_leg_y = y + 10;
// 定义跳舞小人的颜色
COLORREF head_color = RGB(255, 0, 0);
COLORREF body_color = RGB(0, 255, 0);
COLORREF hand_color = RGB(0, 0, 255);
COLORREF leg_color = RGB(255, 255, 0);
// 循环绘制跳舞小人
while (!kbhit()) // 当没有按键按下时循环
{
// 绘制跳舞小人
setfillcolor(head_color);
fillellipse(head_x, head_y, 20, 20); // 头
setfillcolor(body_color);
bar(body_x - 20, body_y - 20, body_x + 20, body_y + 20); // 身体
setfillcolor(hand_color);
bar(left_hand_x - 10, left_hand_y - 10, left_hand_x + 10, left_hand_y + 10); // 左手
bar(right_hand_x - 10, right_hand_y - 10, right_hand_x + 10, right_hand_y + 10); // 右手
setfillcolor(leg_color);
bar(left_leg_x - 10, left_leg_y - 10, left_leg_x + 10, left_leg_y + 10); // 左腿
bar(right_leg_x - 10, right_leg_y - 10, right_leg_x + 10, right_leg_y + 10); // 右腿
// 改变跳舞小人的坐标
head_x += 5;
body_x += 5;
left_hand_x += 5;
right_hand_x += 5;
left_leg_x += 5;
right_leg_x += 5;
// 判断跳舞小人是否超出屏幕边界,如果超出则重新回到屏幕左侧
if (head_x > 640 + 20)
{
head_x = -20;
body_x = -20;
left_hand_x = -50;
right_hand_x = 10;
left_leg_x = -40;
right_leg_x = 0;
}
// 随机改变跳舞小人的颜色
head_color = RGB(rand() % 256, rand() % 256, rand() % 256);
body_color = RGB(rand() % 256, rand() % 256, rand() % 256);
hand_color = RGB(rand() % 256, rand() % 256, rand() % 256);
leg_color = RGB(rand() % 256, rand() % 256, rand() % 256);
Sleep(50); // 等待50毫秒
cleardevice(); // 清屏
}
closegraph(); // 关闭图形界面
return 0;
}
```
阅读全文