ege/easyx 图形模式和 文本模式不要混一起 了 童鞋
给你改了改 initgraph进入 图形模式下 就不能调文本模式下的类似printf的输出函数了,
你这压根用不到图形模式
#include<stdio.h>
//#include<graphics.h>
#include<conio.h>
#include<stdlib.h>
void gotoxy(int x,int y)
{
int i,j;
for(i=0;i<x;i++) printf("\n");
for(j=0;j<y;j++) printf(" ");
}
int dme(int x,int y)
{
system("cls");
gotoxy(x,y);//////////
printf("%c",2);
return 0;}
void main()
{//initgraph(640,480);
int x=10,y=10;
char k;
k=getchar();
switch(k)
{case '1': y=y+1;dme(x,y);break;
case '2': y=y-1;dme(x,y);break;
case '3': x=x+1;dme(x,y);break;
case '4': x=x-1;dme(x,y);break;}
//closegraph();
getch();
}
//easyx即使你要用图形模式
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
#include<stdlib.h>
void gotoxy(int x,int y)
{
int i,j;
for(i=0;i<x;i++) printf("\n");
for(j=0;j<y;j++) printf(" ");
}
int dme(int x,int y)
{
system("cls");
moveto(x,y);
outtext(2);//initgraph进入图形模式后应该用图形模式的outtext函数来输出,
//而不应该用文本模式的printf来输出
return 0;}
void main()
{initgraph(640,480);
int x=10,y=10;
char k;
k=getch();
switch(k)
{case '1': y=y+1;dme(x,y);break;
case '2': y=y-1;dme(x,y);break;
case '3': x=x+1;dme(x,y);break;
case '4': x=x-1;dme(x,y);break;}
getch();
closegraph();
getch();
}
温馨提示:答案为网友推荐,仅供参考