数码宝贝龙仔兽进化图:c语言编程问题

来源:百度文库 编辑:高校问答 时间:2024/05/04 03:09:30
这是一个小人移动的程序,怎么样叫一个函数使得他跳出循环时显示出它期间运行了多久时间

#include <bios.h>
#define UP 0x4800
#define DOWN 0x5000
#define LEFT 0x4b00
#define RIGHT 0x4d00
#define Esc 0x011b
void main(void)
{
int key,x,y,a,b;
int i,j;
clrscr();
gotoxy(1,1);
printf("\3");
gotoxy(40,10);
x=40;
y=10;
printf("\1");
gotoxy(x,y);
for(;;)
{
a=x;
b=y;
key=bioskey(0);
switch(key)
{
case UP:
{
y--;
if(y==0)
{
y++;
b++;
}
gotoxy(x,y);
}break;

case DOWN:
{
y++;
if(y==26)
{
y--;
b--;
}
gotoxy(x,y);
}break;

case LEFT:
{
x--;
if(x==0)
{
x++;
a++;
}
gotoxy(x,y);
}break;

case RIGHT:
{
x++;
if(x==80)
{
x--;
a--;
}
gotoxy(x,y);
}break;

case Esc: exit(0);

default: continue;
}
printf("\1");
gotoxy(a,b);
printf(" ");
gotoxy(x,y);
if (x==1)
{if (y==1) break;}
}
}

定义两个结构:struct time t1,t2;
在要统计的代码前用gettime(&t1);后面再添加gettime(&t2);
输出:
printf ( "%d" ,
( t2.ti_hour - t1.ti_hour ) *60 * 60 * 1000 +
( t2.ti_min - t1.ti_min ) *60 *1000 +
( t2.ti_sec - ti.ti_sec ) * 1000
( t2.ti_hund - ti.ti_hund ) /10 );
就可以得到运行时间,可以精确到毫秒

注意要包含dos.h