元旦


还行吧,毕竟没怎么学好c。

还行吧

#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
void arrprint();
void arrprint_run();
void move(int x,int y);
void gotoxy(int x,int y);
int wherex() ;
int wherey() ;
void moveRight(int x);
void moveLeft(int x);
void moveUp(int x);
void moveDown(int x);
int main(){
    system("color 2a");
     
    moveRight(4);
    moveUp(4);
     
     int m=wherex();
     int n=wherey();
    system("cls"); 
    system("color 2f");
     char str[]="新年快乐,元旦快乐。";
     char str2[]="2017年到了,再不管去年那些破事儿了。";
     for(int i=0;i<80;i++){
        gotoxy(m,n);
        moveRight(1);
        gotoxy(m+8,n);
        puts(str);
        if(i>4){
             gotoxy(m+8,n+4);
             puts(str2);
          }
         
      }
    
    return 0;
} 
int wherex()  //获取光标x 
{  
    CONSOLE_SCREEN_BUFFER_INFO pBuffer;  
    GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &pBuffer);  
    return (pBuffer.dwCursorPosition.X+1);  
}  
//获取光标的位置y  
int wherey()  //获取光标y 
{  
    CONSOLE_SCREEN_BUFFER_INFO pBuffer;  
    GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &pBuffer);  
    return (pBuffer.dwCursorPosition.Y+1);  
}  
void gotoxy(int x,int y)   //设置光标 
{  
    COORD c;  
    c.X=x-1;  
    c.Y=y-1;  
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);  
} 
void moveRight(int x){
        int m=wherex();
        int n=wherey();
    for(int i=0;i<x;i++){
        move(m+i*2,n);
        system("cls");
    }
        gotoxy(m+(x-1)*2,n);
}
void moveLeft(int x){
        int m=wherex();
        int n=wherey();
    for(int i=0;i<x;i++){
        move(m-i*2,n);
        system("cls");
    }
        gotoxy(m-(x-1)*2,n);
}
void moveUp(int x){
        int m=wherex();
        int n=wherey();
    for(int i=0;i<x;i++){
        move(m,n+i*2);
        system("cls");
    }
        gotoxy(m,n+(x-1)*2);
}
void moveDown(int x){
        int m=wherex();
        int n=wherey();
    for(int i=0;i<x;i++){
        move(m,n-i*2);
        system("cls");
    }
        gotoxy(m,n-(x-1)*2);
}
void move(int x,int y){
        
        
        gotoxy(x,y);
        arrprint();
        Sleep(150); 
        gotoxy(x,y);
        arrprint_run();
        Sleep(150);
        gotoxy(x,y);
        arrprint(); 
        Sleep(150);
}
void arrprint(){
    char str[5][5]={{' ',' ','o',' ',' '},{'o','o','o','o','o'},{' ',' ','o',' ',' '},{' ','o',' ','o',' '},{'o',' ',' ',' ','o'}};
    for(int i=0;i<5;i++){
        
        for(int j=0;j<5;j++)
          printf("%c",str[i][j]);
       gotoxy(wherex()-5,wherey()+1);
       //printf("\n");
    }   
}
void arrprint_run(){
    char str[5][5]={{' ',' ','o',' ',' '},{'o','o','o','o','o'},{' ',' ','o',' ',' '},{' ',' ','o',' ',' '},{' ',' ','o',' ',' '}};
    for(int i=0;i<5;i++){
        
        for(int j=0;j<5;j++)
          printf("%c",str[i][j]);
        gotoxy(wherex()-5,wherey()+1);
        // printf("\n");
    }   
}



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容