#include <stdio.h>
#include <conio.h>
#include <windows.h>
void gotoxy(int x,int y)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE) ;
COORD position = {x,y} ;
SetConsoleCursorPosition(hStdout,position ) ;
} /*dinh nghia ham gotoxy*/
void main()
{
int x=10,y;
for (y=15;y>=10;y=y-1);
{
gotoxy(x,y);
printf("H");
Sleep(300);
}
for (x=15;x>=10;x--);
{
gotoxy(x,y);
printf("H");
Sleep(300);
}
getch();
}
đoạn code thứ nhất là in chữ H từ dưới lên; còn cái thứ 2 là từ phải sang trái nhưng lúc chạy từng đoạn thì nó chỉ in ra chữ H sau cùng, em test với code in từ trên xuống và từ trái qua thì lại hoạt động bình thường :surrender:
khi em chuyển qua hàm while
while (y>=10)
{
y--;
gotoxy(x,y);
printf("H");
Sleep(300);
}
thì nó in từ dưới lên bình thường nên em đoán là lỗi hàm for, nhưng không biết lỗi ở đâu :canny:
mọi người xem giúp code của em có lỗi nào ? :confuse:
em dùng vs 2008
#include <conio.h>
#include <windows.h>
void gotoxy(int x,int y)
{
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE) ;
COORD position = {x,y} ;
SetConsoleCursorPosition(hStdout,position ) ;
} /*dinh nghia ham gotoxy*/
void main()
{
int x=10,y;
for (y=15;y>=10;y=y-1);
{
gotoxy(x,y);
printf("H");
Sleep(300);
}
for (x=15;x>=10;x--);
{
gotoxy(x,y);
printf("H");
Sleep(300);
}
getch();
}
đoạn code thứ nhất là in chữ H từ dưới lên; còn cái thứ 2 là từ phải sang trái nhưng lúc chạy từng đoạn thì nó chỉ in ra chữ H sau cùng, em test với code in từ trên xuống và từ trái qua thì lại hoạt động bình thường :surrender:
khi em chuyển qua hàm while
while (y>=10)
{
y--;
gotoxy(x,y);
printf("H");
Sleep(300);
}
thì nó in từ dưới lên bình thường nên em đoán là lỗi hàm for, nhưng không biết lỗi ở đâu :canny:
mọi người xem giúp code của em có lỗi nào ? :confuse:
em dùng vs 2008
Comment