问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

有哪些简单有趣的c/c++小程序16

发布网友 发布时间:2023-10-09 10:09

我来回答

2个回答

热心网友 时间:2024-12-13 05:52

简单有趣的小程序有忆年共享相册、云梦助眠引导、番茄闹钟等。

1.  忆年共享相册:忆年是一款为用户提供免费的照片存储及共享的应用软件。界面非常简洁,可点击底部按钮生成相册,原图照片都储存在云端,不过期,支持批量上传和下载。在微信中一键邀请分享,能够和亲朋好友共享照片。

2.  云梦助眠引导:它是一款有专业音乐人打造的音频助眠应用。清爽的页面设计,精选了10个睡眠场景。舒缓的音乐+白噪音+人声催眠,专业度高。晚上睡不着觉是最让人头疼的事情了,这款专业的软件可以伴你迅速入眠。

3.  番茄闹钟:有别于一般的闹钟,你可以在接下来的25分钟选择一个任务然后专注的做这件事,番茄闹钟会开始计时。同时提供白噪音,让人专心沉浸在事物中。能够有效地使人集中精力做一件事,随时保持克制。

热心网友 时间:2024-12-13 05:53

2048小游戏

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

#include<time.h>

#include<windows.h>

int  jsk();   //计算空格数

void rsgm();  //重置游戏

void inkey();  //按键输入

void mvl();   //向左移动

void mvr();  //向右移动

void mvu();  //向上移动

void mvd();  //向下移动

void shc();   //输出界面

void adnum(); //添加随机数

void ifov();  //游戏是否结束

int bd[4][4];  //存储16个格子中的数字

int score = 0;  //每局得分

int best = 0;  //最高得分

int ifnum;  //1为需要添加0不需要

int over;  // 1为游戏结束0没有结束

int i,j,k;

int main( )

{ rsgm( );  //重置游戏

 inkey( );  //按键输入

 return 0;

}

void setColor(unsigned short ForeColor = 7, unsigned short BackGroundColor = 0)

{ HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);

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

}  //用于控制字符颜色的函数

 

void rsgm( ) //重置游戏

{ score = 0; ifnum = 1; over = 0; srand((unsigned)time(0)); //启动随机数发生器

int n = rand( ) % 16;  //随机函数产生0-15的数字

for (i = 0; i < 4; i++)

{for (j = 0; j < 4; j++)

{ if (n == 0) { int k = rand() % 3; if (k == 0 || k == 1) { bd[i][j] = 2; }

                         else { bd[i][j] = 4; } n--; }

               else { bd[i][j] = 0; n--; }

}

       }

adnum( );

system("cls");

shc( );

}

void inkey( ) //按键输入

{ int key;

while (1)

{ key = getch( );

         if (over) { if (key == 89|| key == 121) {rsgm( ); continue; }

                         else  if (key == 78|| key == 110) { return; }

                         else  continue; }

         ifnum = 0;

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

         switch (key)

             { case 75: mvl( ); break;

               case 77: mvr( ); break;

               case 72: mvu( ); break;

               case 80: mvd( );break;

              }

         if (score > best) { best = score; }

         if (ifnum) { adnum( ); shc( ); }

       }

}

void shc( )  //输出界面

{COORD pos = { 0, 0 };

SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);

setColor(12, 0);  //设置字体淡红色,背景为黑色

printf("  游戏: 2048     得分: %d    最高: %d\n", score, best); setColor(7, 0);

printf("***********************************************\n\n");

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

for (int i = 0; i < 4; i++)

{ printf("       │");

        for (int j = 0; j < 4; j++)

{ if (bd[i][j] != 0)

               { if (bd[i][j] < 10)

                      {if (bd[i][j] == 2) {setColor(14, 0); }

                       else if (bd[i][j] == 4) {setColor(6, 0); }

                       else if (bd[i][j] == 8) {setColor(12, 0); }

                       printf("  %d", bd[i][j]); setColor(7, 0); printf("   │"); }

                 else if (bd[i][j] < 100)

                       {if (bd[i][j] == 16) {setColor(4, 0); }

                            else if (bd[i][j] == 32) {setColor(10, 0); }

                            else if (bd[i][j] == 64) {setColor(2, 0); }

                            printf("  %d", bd[i][j]); setColor(7, 0); printf("  │"); }

                     else if (bd[i][j] < 1000)

                       {if (bd[i][j] == 128) {setColor(9, 0); }

                            else if (bd[i][j] == 256) {setColor(1, 0); }

                            else if (bd[i][j] == 512) {setColor(13, 0); }

                            printf("  %d", bd[i][j]); setColor(7, 0); printf(" │");}

                     else if (bd[i][j] < 10000)

                       {if (bd[i][j] == 1024) {setColor(5, 0); }

                            else {setColor(15, 0); }

                            printf(" %4d", bd[i][j]); setColor(7, 0); printf(" │");}

                     else {int n = bd[i][j];

                             for (int k = 1; k < 30; k++)

                               { n /= 2;

                                    if (n == 1) {setColor(7, 0); printf("2^%2d |", k); break; }

                                   }

                            }

                     }

                else {setColor(0, 0); printf("     ");setColor(7, 0); printf(" │"); }

              }

         setColor(7, 0);

         if (i <= 2) { printf("\n       ├──────┼──────┼──────┼──────┤\n"); }

         else  printf ("\n       └──────┴──────┴──────┴──────┘\n\n");

        }

       printf("***********************************************\n\n"); setColor(13, 0);

       printf("  操作:↑ ↓ ← →  ");

       if (jsk( ) == 0) { ifov( );

                       if (over) { setColor(10, 0); printf("\n\n  游戏结束!是否继续? [ Y/N ]:"); }

}

}

int jsk( ) //计算空格数

{ int n = 0;

for (i = 0; i < 4; i++)

{ for (j = 0; j < 4; j++) { if ( bd[i][j] == 0) {n++;}} }

return n;

}

void mvl( ) //向左移动

{ for (i = 0; i < 4; i++)

{for (j = 1, k = 0; j < 4; j++)

     { if (bd[i][j] > 0)

{ if ( bd[i][k] == bd[i][j])

{ bd[i][k] *= 2;  k++;

                       score = score + 2 * bd[i][j];

                       bd[i][j] = 0;  ifnum = 1; }

                else if ( bd[i][k] == 0) { bd[i][k] = bd[i][j]; bd[i][j] = 0; ifnum = 1; }

                else { bd[i][k + 1] = bd[i][j]; if ((k + 1) != j) { bd[i][j] = 0; ifnum = 1; }

                            k++; }

               }

         }

       }

}

void mvr( ) //向右移动

{for (i = 0; i < 4; i++)

{for (j = 2, k = 3; j >= 0; j--)

{if (bd[i][j] > 0)

      { if (bd[i][k] == bd[i][j])

{bd[i][k] *= 2; k--; score = score + 2 * bd[i][j]; bd[i][j] = 0; ifnum = 1; }

           else if ( bd[i][k] == 0) {bd[i][k] = bd[i][j]; bd[i][j] = 0; ifnum = 1; }

           else { bd[i][k - 1] = bd[i][j]; if ((k - 1) != j) { bd[i][j] = 0; ifnum = 1; } k--; }

          }

        }

}

}

void mvu( )  //向上移动

{for (i = 0; i < 4; i++)

{for (j = 1, k = 0; j < 4; j++)

{if (bd[j][i] > 0)

{if ( bd[k][i] == bd[j][i]) { bd[k][i] *= 2; k++;score = score + 2 * bd[j][i];

                                             bd[j][i] = 0; ifnum = 1; }

              else if ( bd[k][i] == 0) { bd[k][i] = bd[j][i]; bd[j][i] = 0; ifnum = 1; }

              else { bd[k + 1][i] = bd[j][i]; if ((k + 1) != j) { bd[j][i] = 0; ifnum = 1; }

              k++; }

          }

        }

}

}

void mvd( )  //向下移动

{ for (i = 0; i < 4; i++)

  {for (j = 2, k = 3; j >= 0; j--)

{if (bd[j][i] > 0)

{if (bd[k][i] == bd[j][i])

{bd[k][i] *= 2; k--;score = score + 2 * bd[j][i]; bd[j][i] = 0; ifnum = 1; }

              else if (bd[k][i] == 0) {bd[k][i] = bd[j][i]; bd[j][i] = 0; ifnum = 1; }

              else {bd[k - 1][i] = bd[j][i];

                      if ((k - 1) != j) {bd[j][i] = 0; ifnum = 1; } k--; }

              }

        }

}

}

void adnum( )  //添加随机数

{ srand(time(0)); int n = rand( ) % jsk( );

for (int i = 0; i < 4; i++)

{for (int j = 0; j < 4; j++)

{ if (bd[i][j] == 0) {if (n != 0) { n--; }

                             else {int k = rand() % 3;

                                           if (k == 0 || k == 1) {bd[i][j] = 2; return; }

                                           else {bd[i][j] = 4; return; } }

                               }

         }

  }

}

void ifov( )  //游戏是否结束

{for (int i = 0; i < 4; i++)

   {for (int j = 0; j < 3; j++)

      {if (bd[i][j] == bd[i][j + 1] || bd[j][i] == bd[j + 1][i]) {over = 0; return; }}

  }

 over = 1;

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
"多难兴邦"这个词,让我们懂得了什么? uc怎么进入阅读模式 进入阅读模式方法介绍 uc怎么进入小说阅读模式 uc浏览器设置阅读模式-uc浏览器设置阅读模式方法 uc电脑阅读模式怎么设置电脑上UC浏览器的阅读模式怎么打开 微信怎么判断对方把你拉黑并且删除了,还是只是拉黑了? 公司诉讼由哪个法院管辖?公司诉讼管辖确定的理论依据? 笔记本电脑开机无法进入系统笔记本电脑开机后无法进入系统 从深圳到乌镇玩三天,花销最少是多少?越少越好,如果有个计划就更好乐 马上快过年放假了,第一次去见岳父,送茅台好还是五粮液好? 如何写一些简单的电脑程序?1 编程中有哪些好玩的程序1 为什么小米2CPU检测是ARMv7processorrev2...2 一个月有一千块闲钱要怎么理财 ARMv7 Processor rev 0 (v71)是不是... 三星I919u CPU型号armv7processorrev... 一个月能存3000吧,怎么进行小额个人理财 如果一个月有一千块,你怎么理财? 我的p990处理器是ARMv7 processor rev ... 一个月1500怎么理财 印尼人在中国的多吗? 一般在哪些城市?23 ARMv7 PROCESSOR REV 10 V71 cpu... 一个月3000怎么理财 哪有哪有电视剧《老农民》全集高清完整版下载观看的地址啊? 一个月4千,怎样理财 armv7processorrev2 v71 是几核的处理器... 是不是很多中国人去印尼找老婆4 原乡电视剧(1-31集)百度影音全集大结局?143 印尼的中国人为什么不回国35 电视剧《原乡》讲的大概是几几年的事? c语言能写出什么样有意思的小程序?29 ERP系统如何导入订单13 安卓手机和苹果手机都会贬值,哪个贬值的快点? 求高手指教 怎么使用 中国商品信息服务平台 怎么弄条形码?跪...10 手机贬值速度有多快?怎么样换算合理12 有什么手机比苹果手机性能还好?45 产品的条码制定以后,如果不在中国商品信息服务平台上备案,有什...3 iPhone 为什么比安卓保值2 在中国商品信息服务平台怎么激活条码卡59 苹果手机,相比其他手机,好在什么地方?全面点!251 相同价格买安卓手机好还是苹果手机好?149 苹果发布新品后,上一代产品官网价格骤降,苹果是不是贬值大佬? 中国商品信息服务平台的条形码怎么生成?已经有数字了,但是没有... 苹果手机会贬值吗?如题 谢谢了 粉面含春威不露,丹唇未启笑先闻。刻画的是谁,出自哪? 面粉含春威不漏,丹唇未启笑先闻 描写的是谁出场47 “粉面含春威不露,单唇未启笑先闻”刻画的人物形象是谁? 粉面含春威不露,丹唇未起笑先闻是什么意思1588 粉面含春威不露 丹唇未启笑先闻的闻是什么意思26 红楼梦中粉面含春威不露 丹唇未启笑先闻是什么意思203