找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 文档 工具 设计
查看: 80|回复: 0

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

[复制链接]

1万

主题

919

回帖

2万

积分

超级版主

教育辅助界扛把子

附加身份标识
精华
1
热心
2
听众
1
威望
57
贡献
11988
违规
0
书币
5681
注册时间
2020-4-8

论坛元老灌水之王

发表于 2022-12-27 03:03 | 显示全部楼层 |阅读模式
学了几天C语言写了个打飞机游戏

170000fhakqane8vo3zwyw.gif




代码如下

[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);
}
 
        


Great works are not done by strength, but by persistence! 历尽艰辛的飞升者,成了围剿孙悟空的十万天兵之一。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号


免责声明:
本站所发布的第三方软件及资源(包括但不仅限于文字/图片/音频/视频等仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢某程序或某个资源,请支持正版软件及版权方利益,注册或购买,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To: admin@cdsy.xyz

QQ|Archiver|手机版|小黑屋|城东书院 ( 湘ICP备19021508号-1|湘公网安备 43102202000103号 )

GMT+8, 2024-4-29 06:49 , Processed in 0.041790 second(s), 30 queries .

Powered by Discuz! CDSY.XYZ

Copyright © 2019-2023, Tencent Cloud.

快速回复 返回顶部 返回列表