怎么使用C语言做一个射击类小游戏。

我也有梦想的 2017-01-04 08:19:46
期末作业用C语言写一个小游戏,我做一子弹和移动都OK了,唯独是敌机随机出现搞不定,求大神帮帮忙啊。代码如下
...全文
1302 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
m0_45938931 2019-11-27
  • 打赏
  • 举报
回复
显示错误 找不到graphics头目录
gitupmen 2019-11-25
  • 打赏
  • 举报
回复
用什么原件写呢
qq_41276509 2017-12-05
  • 打赏
  • 举报
回复
楼主的游戏做的怎么样了? 可不可以发来玩一下
赵4老师 2017-01-05
  • 打赏
  • 举报
回复
srand放main函数里面调用一次
我也有梦想的 2017-01-04
  • 打赏
  • 举报
回复
引用 6 楼 ipqtjmqj的回复:
[quote=引用 5 楼 qq_37167928 的回复:] [quote=引用 4 楼 ipqtjmqj的回复:]随机出现用随机数啊,stdlib.h里面有srand, rand这两个函数
大神您好,其实我知道用那两个的。可是,我放进函数的时候有问题~没有理想中的效果[/quote] srand调用一次,rand调用多次,使用取模%将rand的返回调整到自己需要的范围[/quote] 这样,好的,我再试试。
ipqtjmqj 2017-01-04
  • 打赏
  • 举报
回复
引用 5 楼 qq_37167928 的回复:
[quote=引用 4 楼 ipqtjmqj的回复:]随机出现用随机数啊,stdlib.h里面有srand, rand这两个函数
大神您好,其实我知道用那两个的。可是,我放进函数的时候有问题~没有理想中的效果[/quote] srand调用一次,rand调用多次,使用取模%将rand的返回调整到自己需要的范围
我也有梦想的 2017-01-04
  • 打赏
  • 举报
回复
引用 4 楼 ipqtjmqj的回复:
随机出现用随机数啊,stdlib.h里面有srand, rand这两个函数
大神您好,其实我知道用那两个的。可是,我放进函数的时候有问题~没有理想中的效果
ipqtjmqj 2017-01-04
  • 打赏
  • 举报
回复
随机出现用随机数啊,stdlib.h里面有srand, rand这两个函数
我也有梦想的 2017-01-04
  • 打赏
  • 举报
回复
怎么发出来就没有换行符了
我也有梦想的 2017-01-04
  • 打赏
  • 举报
回复
#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> #include <graphics.h> typedef struct { int x; int y; }Coord; int score = 0, life = 3;//分数和生命值。 Coord mposition, bullet, fposition;//飞机坐标,子弹坐标,敌机坐标。 void Iterface();//总界面。 void Mposition();//飞机位置。 void Bullet();//子弹位置 void Fposition();//敌机位置 void print();//打印游戏画面 void Iterface() { int i, j; char str[10]; initgraph(550, 660); HWND hwnd = GetHWnd(); SetWindowText(hwnd, "星际迷航 制作:工贸梦之队"); Sleep(2000); /*settextstyle(40, 0, "隶体"); setcolor(RED); outtextxy(255, 140, "NEW"); settextstyle(40, 0, "楷体"); for (i = 0; i <= 255; i++) { for (j = 0; j <= 255; j++) { setcolor(RGB((i + j + 128) % 255, i, j)); outtextxy(205, 200, "星际迷航"); } } Sleep(2000); settextstyle(22, 0, "隶体"); outtextxy(310, 300, "←_←"); settextstyle(22, 0, "楷体"); outtextxy(180, 300, "容我装个B"); setcolor(LIGHTMAGENTA); Sleep(2500); outtextxy(175, 300, "请按任意键开始游戏!"); getch(); cleardevice();*/ settextstyle(24, 0, "楷体"); outtextxy(345, 40, "得分:"); sprintf(str, "%d", score); outtextxy(420, 40, str); outtextxy(345, 65, "死亡:"); sprintf(str, "%d", life); outtextxy(420, 65, str); settextstyle(22, 0, "楷体"); setcolor(LIGHTBLUE); outtextxy(350, 100, "操作说明:"); outtextxy(350, 125, "W: 射击"); outtextxy(350, 175, "A: 左移"); outtextxy(350, 200, "D: 右移"); outtextxy(350, 225, "空格: 暂停"); } void Mposition() { IMAGE img1; loadimage(&img1, "D:\\飞机.JPG"); putimage(mposition.x, mposition.y, &img1); } void print() { IMAGE img; int i,j=0; setcolor(BLACK); for (i = 0; i <= 550; i += 30) { settextstyle(20, 30, "楷体"); outtextxy(i, 0, "■"); } setcolor(WHITE); rectangle(29, 29, 334, 633); rectangle(28, 28, 335, 634); loadimage(&img, "D:\\TT.JPG"); putimage(29, 29, &img); Mposition(); Bullet(); } void Bullet() { IMAGE img; loadimage(&img, "D:\\子弹.JPG"); putimage(bullet.x, bullet.y, &img); } void Fposition() { IMAGE img; srand(time(NULL)); fposition.x = rand() % 300; loadimage(&img, "D:\\敌机.JPG"); putimage(fposition.x,

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧