铁码冰河 发表于 2021-2-19 17:01

学了几天C语言写了个打飞机游戏


代码如下#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <math.h>
int fenshu=0;

int random(int m){
    return rand()%m;
}

void jifenban(){
    printf("\n\t\t\t");
    printf("╔═══════════════╗\n");
    printf("\t\t\t");
    printf("║你已击中%2d个 ║\n",fenshu);
    printf("\t\t\t");
    printf("╚═══════════════╝\n\n\n");
}

int main(){

    int i,j,k;
    int x,y;
    int x0,y0;
    int vx,vy;
    int x1=1,y1=1;
    int fire=0;
    int kill=0;
    char c;

    printf("\n\n\n\n\n\t\t\t");
    printf("╔════════════════════╗\n");
    printf("\t\t\t");
    printf("║ 欢迎进入打飞机游戏!║\n");
    printf("\t\t\t");
    printf("╚════════════════════╝\n\n\n\t\t\t\t\t\t\t\t\t\t");
    Sleep(2000);
    system("cls");
    while(fenshu<10){

      if(kill==0){
            x0=random(61);
            y0=random(11);
            x=x0;
            y=y0;
            vx=1;
            vy=1;
            kill=1;
            Sleep(200);
      }
      
      system("cls");
      jifenban();

      x=x+vx;
      y=y+vy;

      if(x<0){
            x=0;
            vx=-vx;
      }
      if(x>60){
            x=60;
            vx=-vx;
      }

      if(y<0){
            y=0;
            vy=-vy;
      }
      if(y>10){
            y=10;
            vy=-vy;
      }
   

      if(fire){
            for(i=0;i<y;i++){
                for(j=0;j<x1;j++){
                  printf(" ");
                }
                printf("!\n");
            }

            if(x1+2<x){
                for(j=0;j<x1;j++){
                  printf(" ");
                }
                printf("!");
                for(j=x1+2;j<x;j++)
                  printf(" ");
                printf("o\n");
            }
            if(x1+2==x){
                for(j=0;j<x1;j++){
                  printf(" ");
                }
                printf("x\a\n");
                fenshu++;
                kill=0;
            }
            if(x1+2>x){
                for(j=0;j<x;j++){
                  printf(" ");
                }
                printf("o");
                for(j=x;j<x1+1;j++)
                  printf(" ");
                printf("!\n");
            }
            
            
            for(i=y;i<y1+10;i++){
                for(j=0;j<x1;j++){
                  printf(" ");
                }
                printf("!\n");
            }


            fire=0;
      }

      
      else{
            for(i=0;i<y;i++){
                printf("\n");
            }
            for(j=0;j<x;j++){
                  printf(" ");
                }
            printf("o\n");

            for(i=y;i<y1+10;i++){
               
                printf("\n");
            }

      }

      for(j=0;j<x1;j++)
            printf(" ");
      printf("A\n");
      
      for(j=0;j<x1;j++)
            printf(" ");
      printf("/|+|\\\n");
   
      for(j=0;j<x1;j++)
            printf(" ");
      printf("-v-v-\n");
      
      if(kbhit()){
            c=getch();
            if(c==-32){
                c=getch();
                switch(c){
                  case 72:y1--;break;
                  case 80:y1++;break;
                  case 75:x1=x1-2;break;
                  case 77:x1=x1+2;break;
                  default:break;
                }
                if(y1<1)
                  y1=1;
                if(x1<0)
                  x1=0;
            }

            else if(c==' '){
                fire=1;
            }
      }

      Sleep(20);
    }

    system("cls");
    printf("\n\n\n\n\n\t\t\t");
    printf("╔═══════════════╗\n");
    printf("\t\t\t");
    printf("║   恭喜通关!║\n");
    printf("\t\t\t");
    printf("╚═══════════════╝\n\n\n");
    Sleep(2000);
}

      


hxs1 发表于 2022-11-27 10:33

铁码冰河 发表于 2021-2-21 00:23
这个不难可以自己写一个,B站搜河海大学童晶

NB啊,几天就这么牛逼,肯定有基础,会其它语言,新手不是

铁码冰河 发表于 2021-2-23 21:58

dabaigege 发表于 2021-2-23 11:03
楼主我又问题求助 可以私聊一下联系方式吗

你直接问吧,我也是新手,未必有能力给你答疑

kakis 发表于 2021-2-20 01:54

可以的 感觉写的是那么回事职 {:1_921:}

xinyu 发表于 2021-2-20 23:35

楼主,能否做一个注释版,看的头晕眼花{:1_907:}

铁码冰河 发表于 2021-2-21 00:23

xinyu 发表于 2021-2-20 23:35
楼主,能否做一个注释版,看的头晕眼花

这个不难可以自己写一个,B站搜河海大学童晶

xinyu 发表于 2021-2-21 10:03

铁码冰河 发表于 2021-2-21 00:23
这个不难可以自己写一个,B站搜河海大学童晶

好的,谢谢,我也去学习一下:lol

maqiao144 发表于 2021-2-21 10:48

好的,谢谢,我也去学习一下

博弟弟丶 发表于 2021-2-22 03:26

这个会不会牵扯到算法 还是和思维逻辑就关系

biaxiaoliong 发表于 2021-2-22 07:30

手机c编程用什么软件好!??

runlover 发表于 2021-2-22 09:23

牛B了,学了几天就到这水平,本身有基础吧,我学了两个月了!大哥

timelessxp 发表于 2021-2-22 09:29

挺不错的,顶一一下。
页: [1] 2 3
查看完整版本: 学了几天C语言写了个打飞机游戏