当前位置:首页 > 代码 > 正文

c语言打飞机源代码(飞机游戏c语言源代码)

admin 发布:2022-12-19 12:54 112


今天给各位分享c语言打飞机源代码的知识,其中也会对飞机游戏c语言源代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何用C语言编译求解,请附上详细C语言代码

回溯用递归算法来实现比较简洁,我写了一个简单的递归函数来实现你的题目要求,仅供参考,具体内容见附图。

说明:

函数:OutputSet(int *ASet,int Len)

功能:输出集合ASet,Len为集合元素个数

函数:SetList(ASet,Len,Maxlen,MaxElm)

功能:用递归法生成并输出要求的所有集合

参数:ASet:代表集合的指针

Len:集合元素个数

MaxLen:集合允许的最大元素个数

MaxElm:允许的最大元素值。

注:题目中允许的最大元素值是100,

因此应将SetList调用中的99改为100。

另外SetList中的循环代码还可以进一步优化,把j=0改成j=i。

C语言的源代码是什么意思啊

C语言源代码,就是依据C语言规则所写出的程序代码,常见的存储文件扩展名为.c文件和.h文件,分别对应C源文件(source file)和C头文件(header file)。

C语言是一门编程语言,简单点说,就是由人类书写按照一定规范书写的字符,通过一定手段(编译链接)转换后,可以让电脑或者其它电子芯片"读懂",并按照其要求工作的语言。

在所有的编程语言中,C语言是相对古老而原始的,同时也是在同类语言中更接近硬件,最为高效的编程语言。

扩展资料:

C语言广泛应用于底层开发。它的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

它能提供了许多低级处理的功能,可以保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

参考资料:百度百科-源码

求一些恶搞程序的C语言源代码

一个打飞机的游戏,DEVc++编译通过:

#include stdio.h

#include conio.h

#include stdlib.h

#include windows.h

#include time.h

#define zlx 10   //增量坐标(x)让游戏框不靠边

#define zly 3    //增量坐标(y)让游戏框不靠边

#define W 26   //游戏框的宽度

#define H 24   //游戏框的高度

int jiem[22][22]={0}, wj=10;   //界面数组, 我机位置(初值为10)

int speed=4,density=30, score=0,death=0;  //敌机速度, 敌机密度, 玩家成绩,死亡次数

int m=0,n=0;   // m,n是控制敌机的变量

void gtxy (int x, int y)   //控制光标位置的函数

{ COORD zb;   //zb代指坐标

zb.X = x;  zb.Y = y;

SetConsoleCursorPosition ( GetStdHandle (STD_OUTPUT_HANDLE), zb );

}

void Color(int a)   //设定颜色的函数(a应为1-15)

{ SetConsoleTextAttribute( GetStdHandle(STD_OUTPUT_HANDLE), a ); }

void yinc(int x=1,int y=0)   //隐藏光标的函数

{ CONSOLE_CURSOR_INFO  gb={x,y};   //gb代指光标, y设为0即隐藏

SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), gb);

 }

void csh( )  //初始化函数

{ int i;

Color(7);

gtxy(zlx,zly); printf("╔");  gtxy(zlx+W-2,zly); printf("╗");  //左上角和右上角的框角

gtxy(zlx,zly+H-1); printf("╚"); gtxy(zlx+W-2,zly+H-1); printf("╝"); //下边两框角

for(i=2;iW-2;i+=2) {gtxy(zlx+i,zly);  printf("═"); }      //打印上横框

for(i=2;iW-2;i+=2) {gtxy(zlx+i,zly+H-1); printf("═"); }  //打印下横框

for(i=1;iH-1;i++) { gtxy(zlx,zly+i);  printf("║"); }       //打印左竖框

for(i=1;iH-1;i++) {gtxy(zlx+W-2,zly+i); printf("║"); }  //打印右竖框

Color(14); gtxy(19,2);  printf("歼灭敌机");  Color(10);

gtxy(37,5); printf("设置:Esc ");

gtxy(37,7); printf("发射:↑ ");

gtxy(37,9); printf("控制:← → ");

gtxy(37,11);printf("得分:%d",score);

gtxy(37,13); printf("死亡:%d",death);

yinc(1,0);

}

void qcjm( )  //清除界面函数

{ int i,j;

for(i=0;iH-2;i++)

for(j=0;jW-4;j++){gtxy(zlx+2+j,zly+1+i); printf(" ");}

}

void feiji( )  //飞机移动函数

{ int i,j;

for(i=21;i=0;i--)  //从底行往上是为了避免敌机直接冲出数组

  for(j=0;j22;j++)

     {if(i==21jiem[i][j]==3) jiem[i][j]=0;  //底行赋值0 以免越界

       if(jiem[i][j]==3) jiem[i][j]=0, jiem[i+1][j]=3;

     }

if(jiem[20][wj]==3jiem[21][wj]==1) death++;

}

void zidan( )  //子弹移动函数

{ int i,j;

for(i=0;i22;i++)

  for(j=0;j22;j++)

     { if(i==0jiem[i][j]==2) jiem[i][j]=0;

       if(jiem[i][j]==2) { if(jiem[i-1][j]==3) score+=100,printf("\7");

                                  jiem[i][j]=0,jiem[i-1][j]=2; }

     }

}

void print(  )  //输出界面函数

{int i,j;

qcjm( );

for(i=0;i22;i++)

for(j=0;j22;j++)

{ gtxy(12+j,4+i);

   if(jiem[i][j]==3) {Color(13);printf("□");}

   if(jiem[i][j]==2) {Color(10);printf(".");}

   if(jiem[i][j]==1) {Color(10);printf("■");}

}

gtxy(37,11); Color(10); printf("得分:%d",score);

gtxy(37,13); printf("死亡:%d",death);

}

void setting( )  //游戏设置函数

{ qcjm( );

gtxy(12,4);printf("选择敌机速度:");

gtxy(12,5);printf("  1.快 2.中 3.慢");

switch(getche( ))

    {case '1': speed=2; break;

     case '2': speed=4; break;

     case '3': speed=5; break;

     default: gtxy(12,6);printf("  错误!默认值");

   }

gtxy(12,7);printf("选择敌机密度:");

gtxy(12,8);printf("  1.大 2.中 3.小");

switch(getche( ))

     {case '1': density=20; break;

      case '2': density=30; break;

      case '3': density=40; break;

      default: gtxy(12,9); printf("  错误!默认值");

     }

for(int i=0;i22;i++)

 for(int j=0;j22;j++) jiem[i][j]=0;

jiem[21][wj=10]=1;  jiem[0][5]=3;

gtxy(12,10); printf("  按任意键保存...");

getch( );

qcjm( );

}

void run( )  //游戏运行函数

{ jiem[21][wj]=1;  //值为1代表我机(2则为子弹)

jiem[0][5]=3;   //值为3代表敌机

SetConsoleTitle("歼灭敌机");  //设置窗口标题

while(1)

{ if (kbhit( ))   //如有键按下,控制我机左右移动、发射或进行设定

    { int key;

      if((key=getch( ))==224) key=getch( );

     switch(key)

       {case 75: if(wj0) jiem[21][wj]=0,jiem[21][--wj]=1; break;

        case 77: if(wj20) jiem[21][wj]=0,jiem[21][++wj]=1; break;

        case 72: jiem[20][wj]=2; break;

       case 27: setting( );

      }

   }

   if(++n%density==0)   //控制产生敌机的速度

     { n=0;srand((unsigned)time(NULL));

       jiem[0][rand( )%20+1]=3;

     }

    if(++m%speed==0) { feiji( ); m=0; }  //控制敌机移动速度(相对子弹而言)

    zidan( );   //子弹移动

    print( );   //输出界面

    Sleep(120);   //延时120毫秒

  }

}

int main( )

{ csh( );

  run( );

  return 0;

}

用C语言编写飞机航班订票系统,实现信息的增加,删除,修改,查询操作的源代码。

哎,亲爱的同学,自己做做这个作业吧~

找工作的时候至少你是写过代码的,要不然啥都抄,找工作的时候连个链表的说不清楚,你以为面试的时候你还可以借助知道获取场外帮助?

如何在C语言中按下键就让物体向下移动,按左就让它向左运动等。。

// 就是类似打飞机的程序呗,直接复制以下源码在VC6.0 中编译通过!

#includestdio.h

#includeWindows.h

#includetime.h

#include"stdio.h"

#include conio.h

#define N 35

int scr[22][N]={0},pl=9,width=24,speed=3,density=30;

int score=0,death=0;

void print(int a[][N])

{

  system("cls");

  int i,j;

  for(i=0;i22;i++)

  {

    a[i][width-1]=4;

    for(j=0;jwidth;j++)

    {

      if(a[i][j]==0) printf(" ");

      if(a[i][j]==1) printf("\5");

      if(a[i][j]==2) printf(".");

      if(a[i][j]==3) printf("\3");

      if(a[i][j]==4) printf("|");

      if(i==0  j==width-1) printf("score:%d",score);

      if(i==1  j==width-1) printf("death:%d",death);

      if(i==2  j==width-1) printf("setting:ESC");

    }

    printf("\n");

  }

}

void movebul(int a[][N])

{

  int i,j=0;

  for(i=0;i22;i++)

  {

    if(i==0  a[i][j]==2)a[i][j]==0;

    if(a[i][j]==2)

    {

      if(a[i-1][j]==3) score+=10,printf("\7");

      a[i][j]=0,a[i-1][j]=2;

    }

  }

}

void movepla(int a[][N])

{

  int i,j; 

  for(i=21;i=0;i--)

    for(j=0;jwidth;j++)

    { 

      if(i==21a[i][j]==3) a[i][j]=0;

      if(a[i][j]==3)a[i][j]=0,a[i+1][j]=3; 

    } 

    if(a[20][pl]==3a[21][pl]==1)death++;

}

void setting(void)

{

  int sw=0,i,j;

   

  system("cls");

  do

  { 

    sw=0;

    printf("\n游戏界面的大小:1.大2.小"); 

    switch(getchar())

    { 

      case'1':width=34;break;

      case'2':width=24;;break; 

      default:printf("\n错误,请重新选择...\n"); 

      sw=1; 

    }

  }while(sw);

  do

  { 

    sw=0; 

    printf("\n请选择敌机密度:1.大2.中3.小"); 

    switch(getchar())

    { 

      case'0':density=10;break;

      case'1':density=20;break;

      case'2':density=30;break;

      case'3':density=40;break; 

      default:printf("\n错误,请重新选择...\n"); 

      sw=1;

    } 

  }while(sw);

  do

  { 

    sw=0; 

    printf("\n敌机的飞行速度:1.快2.中3.慢");

    switch(getchar())

    { 

      case'1':speed=2;break;

      case'2':speed=3;break;

      case'3':speed=4;break; 

      default:printf("\n错误,请重新选择...\n"); 

      sw=1;

    } 

  }while(sw); 

  for(i=0;i22;i++) 

    for(j=0;j45;j++) 

      scr[i][j]=0; 

  scr[21][pl=9]=1; 

  printf("\n按任意键保存...");

  getchar();

}

void menu(void)

{

  printf("说明:按AD控制我机左右飞行,W发射子弹\n设置:请按Esc\n开始游戏:任意键");

  if(getchar()==27) setting();

}

void main()

{

  menu();

  int i=0,j=0;

  scr[21][pl]=1;

  scr[0][5]=3;

  while(1)

  {

    if(kbhit())

    switch(getch())

    {

      case'a':

      case'A':if(pl0)

      scr[21][pl]=0,scr[21][--pl]=1;break;

      case'd':

      case'D':if(plwidth-2)

      scr[21][pl]=0,scr[21][++pl]=1;break;

      case'w':

      case'W':scr[20][pl]=2;break;

      case 27:setting();break;

    }

    if(++j%density==0)

    {

      j=0;

      srand(time(NULL));

      scr[0][rand()%width]=3;

    }

    if(++i%speed==0) movepla(scr);

    movebul(scr);

    print(scr);

    if(i==30000) i=0;

  }

}

求几个比较有趣,简单的C语言源代码 小白自己敲着练一下手感

最简单的模拟计时器:

#includestdio.h

#includeconio.h

#includewindows.h

int m=0,s=0,ms=0;  //m是分 s是秒 ms是毫秒

//以下是5个自编函数

void csh( );  //初始化界面

void yinc(int x,int y);  //隐藏光标的函数(y值设为0就会隐藏)

void jishi( );  //计时器运行(每100毫秒变化一次)

void Color (short x, short y);  //设定颜色的函数(y设为0就是黑底)

void gtxy (int x, int y);  //控制光标位置的函数

int main(  )  //主函数

{  csh( );

   getch( );

   while(1)

       { jishi( );

         Sleep(100);  //间隔100毫秒

         if( kbhit( ) )break;  //有键按下就退出循环

       }

    return 0;

}

void csh( )   //初始化界面

{Color(14,0);    //设定淡黄字配黑底

printf(“\n\n\t    计时器”);

Color(10,0);   //设定淡绿字配黑底

printf("\n\t┌───────────┐");

printf("\n\t│           │");

printf("\n\t└───────────┘");

gtxy(10,4);   //光标到屏幕第10列4行处输出

Color(7,0);   //恢复白字黑底

printf(" 00:00:00 ");

yinc(1,0 );   //隐藏光标(yinc代表隐藏)

return;

}

void jishi( )  //计时器运行

{ms+=1;

if(ms==10){s+=1;ms=0;}

if(s==60){m+=1;s=0;}

gtxy(10,4);

Color(9,0);   //设定淡蓝字配黑底

if(m9) printf(" %d:",m);

else printf(" 0%d:",m);

Color(14,0);   //设定淡黄字配黑底

if(s9) printf("%d:",s);

else printf("0%d:",s);

Color(12,0);   //设定淡红字配黑底

printf("0%d",ms);

}

void gtxy (int x, int y)   //控制光标位置的函数

{ COORD pos;

pos.X = x;

pos.Y = y;

SetConsoleCursorPosition ( GetStdHandle (STD_OUTPUT_HANDLE), pos );

}

void Color (short ForeColor= 7, short BackGroundColor= 0)   //设定颜色的函数

{ HANDLE  handle = GetStdHandle ( STD_OUTPUT_HANDLE );

SetConsoleTextAttribute ( handle, ForeColor + BackGroundColor * 0x10 );

}

void yinc(int x,int y)   //隐藏光标的设置(gb代表光标)

{ CONSOLE_CURSOR_INFO  gb={x,y};   //x为1-100,y为0就隐藏光标

SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), gb);

}

关于c语言打飞机源代码和飞机游戏c语言源代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/8407.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载