当前位置: 代码迷 >> C语言 >> 求助!随机数问题!
  详细解决方案

求助!随机数问题!

热度:182   发布时间:2006-03-04 12:53:00.0
求助!随机数问题!

各位好:请帮我研究研究如何出现正确的随数:让随机出现的障碍在我的方块里。
#include<graphics.h>
#include<stdlib.h>
#include<time.h>
#include<conio.h>
struct Maze{
int left,top,right,bottom;
};
struct Maze graph={50,50,450,450}; file://迷宫总框
struct Maze dot[201]; file://障碍物数量
void draw_maze_graph(struct Maze *g); file://绘制迷宫图
void draw_random_dot(struct Maze dot[201]); file://随机出现障碍物
int main(void)
{
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,"c:\\tc");
srand(time(NULL));
draw_maze_graph(&graph);
draw_random_dot(dot);
getch();
closegraph();
return 0;
}
void draw_maze_graph(struct Maze *g)
{
int i;
setcolor(2);
rectangle(50,50,450,450);
for(i=1;i<=20;i++) file://绘制迷宫里的线,每条线的长度20
{
rectangle(g->left,g->top+20*i-20,g->right,g->top+20*i-20);
rectangle(g->left+20*i-20,g->top,g->left+20*i-20,g->bottom);
}
}
void draw_random_dot(struct Maze dot[201]) file://出现随机障碍
{
int i;
setfillstyle(1,3); file://the 0 element is null
for(i=1;i<=200;i++) file://draw 200 dot,如何能按我的意图出现障碍?
{
dot[i].left=51+rand()%380;
dot[i].left=dot[i].left/10*10;
dot[i].top=51+rand()%380;
dot[i].top=dot[i].top/10*10;
dot[i].right=dot[i].left+20;
dot[i].bottom=dot[i].top+20;
bar(dot[i].left,dot[i].top,dot[i].right,dot[i].bottom);
}
}

搜索更多相关的解决方案: 随机数  

----------------解决方案--------------------------------------------------------
dot[i].left=51+(rand()%380/20)*20;
dot[i].top=51+(rand()%380/20)*20;


----------------解决方案--------------------------------------------------------
  相关解决方案