C/C++实现你的浪漫表白:浪漫流星雨表白程序,

2023-05-16

想要讨女朋友欢心也巩固自己所学的知识,各位小伙伴有自己的想法了吗?准备好想要怎样实施了吗?有什么美好的计划了吗?如果没有的话那么别慌,我知道,在座的各位肯定都是有自己的心仪的姑娘,那么今天就教大家一招,做一个表白程序去进行表白,别等了,赶紧打开你的IED,跟着代码敲起来,不然的话,喜欢的人都跟别人跑了!

直接源码分享:

#include<stdio.h>
#include<graphics.h>    //图形库:easyX201905
#include<conio.h>
#include<time.h>

#define MAXSTAR 1314
#define MAXMETEOR 520

//结构体
//几个星星:1000
struct Star
{
    int x, y;
    int color;
    int step;
}star[MAXSTAR];
//流星结构
struct Meteor
{
    int x, y;
    int style;
    int step;
}meteor[MAXMETEOR];

IMAGE img1, img2;//1.定义图片变量

void printText()
{
    //设置文字颜色
    settextcolor(RGB(255, 0, 255));//三原色:红,绿,蓝
    //调整字体大小
    settextstyle(50, 0, "华文行楷");
    //你的文采:发到公屏上
    /*
        海底月是天上月,眼前人是心上人
        春分十里,我喜欢你
        终是庄周圆了梦
        这是我的手背,这是我的脚背,你是我的宝贝。
        一粥一饭/不及你/颦颦一笑
        问君能有几多愁?家人未入眼帘人消瘦
        我喜欢你,像风走了八万里,不问归期
        白酒清欢无别事,我在等风也在等你
        就承认一笑倾城一见自难忘
        问君能有几多愁?佳人未入眼帘人消瘦
        ABCDEFGHIJKLMNOPQRSTVWXYZ
    */

    //在指定位置输出字符串
    outtextxy(450, 20, "七夕到了,炮姐我喜欢你");

    //设置文字颜色
    settextcolor(RGB(0, 255, 255));//三原色:红,绿,蓝
    //调整字体大小
    settextstyle(40, 0, "华文行楷");

    outtextxy(200, 100, "终是庄周圆了梦");
    outtextxy(200, 150, "春分十里,我喜欢你");
    outtextxy(200, 200, "一粥一饭不及你颦颦一笑");
    outtextxy(200, 250, "就承认一笑倾城一见自难忘");
    outtextxy(200, 300, "海底月是天上月,眼前人是心上人");
    outtextxy(200, 350, "白酒清欢无别事,我在等风也在等你");
    outtextxy(200, 400, "ABCDEFGHIJKLMNOPQRSTVWXYZ");
    outtextxy(200, 450, "    我喜欢你,像风走了八万里,不问归期");
    outtextxy(200, 500, "问君能有几多愁?佳人未入眼帘人消瘦");
    outtextxy(200, 550, "这是我的手背,这是我的脚背,你是我的宝贝。");
    outtextxy(300, 600, "----------------------------------爱你的艺辰");

    _getch();//按键
}

//放大招:流星雨
//初始化星星
void initStar(int i)
{
    //随机产生坐标,颜色,速度
    star[i].x = rand() % 1200;
    star[i].y = rand() % 800;
    star[i].color = RGB(rand() % 256, rand() % 256, rand() % 256);
    star[i].step = rand() % 10;
}
//画星星
void drawStar(int i)
{
    //画像素点:在初始化星星的坐标
    putpixel(star[i].x, star[i].y, star[i].color);
    //移动星星:给它速度
    star[i].x += star[i].step;
    //跑到窗口外面的星星:初始化
    if (star[i].x >= 1200)
    {
        putpixel(star[i].x, star[i].y, star[i].color);
        initStar(i);
    }
}

//流星
//初始化流星
void initMeteor(int i)
{
    meteor[i].x = rand()%2200-1000;//[-1200,1199]
    meteor[i].y = rand()%20-200;
    meteor[i].style = rand() % 2;    //0,1
    meteor[i].step = rand() % 30 + 1;//+3 :流星的速度不为0
}
//画流星:贴图技术
void drawMeteor(int i)
{
    //3.贴图:显示图片
    for (i = 0; i < MAXMETEOR; i++)
    {
        switch (meteor[i].style)
        {
        case 0:
            putimage(meteor[i].x, meteor[i].y, &img1,SRCPAINT);
            break;
        case 1:
            putimage(meteor[i].x, meteor[i].y, &img2, SRCPAINT);
            break;
        }
    }
}
//移动流星
void moveMeteor(int i)
{
    for (i = 0; i < MAXMETEOR; i++)
    {
        meteor[i].x += meteor[i].step;
        meteor[i].y += meteor[i].step;
        if (meteor[i].x >= 1200 || meteor[i].y >= 800)
        {
            initMeteor(i);
        }
    }
}
int main()
{
    //2.加载图片
    loadimage(&img1, "1.jpg", 50, 50);
    loadimage(&img2, "2.jpg", 50, 50);
    //界面:初始化图形环境宽度,高度
    initgraph(1200, 800);
    //随机函数种子:如果不播种:随机出来的是伪随机
    srand((unsigned int)time(NULL));
    printText();

    int i = 0;
    for ( i = 0; i < MAXSTAR; i++)
    {
        initStar(i);
    }
    for (i = 0; i < MAXMETEOR; i++)
    {
        initMeteor(i);
    }
    drawMeteor(i);

    while (1)
    {
        BeginBatchDraw();
        cleardevice();
        for (i = 0; i < MAXSTAR; i++)
        {
            drawStar(i);
        }
        drawMeteor(i);
        moveMeteor(i);
        Sleep(100);
        EndBatchDraw();
    }
    

    while (1);    //卡屏 _getch()函数
    closegraph();//关闭图形环境
    return 0;
}

代码都给你们了,还在等什么呢?GOGOGO!
C语言编程基础
http://www.makeru.com.cn/live/1758_311.html?s=45051
夯实C语言,从小白到大牛的进阶之路!
http://www.makeru.com.cn/live/5413_1980.html?s=45051
自学的难度很大,如果你想更快提升自己的编程能力和编写项目的水平,欢迎一起共同成长!

点击链接加入群聊【嵌入式单片机Linux C交流群②】:【715272998 点这里进入】

有一些源码和资料分享,欢迎转行也学习编程的伙伴,和大家一起交流成长会比自己琢磨更快哦!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C/C++实现你的浪漫表白:浪漫流星雨表白程序, 的相关文章

  • armv8-M 32bit处理器

    https www eet china com mp a14579 html https developer arm com ip products processors cortex m 最早的Cortex M0属于Armv6 M架构 x
  • 作为ARM Cortex-M家族的继承者 Cortex-M23与M33有哪五大特色?

    http news eeworld com cn xfdz article 2017011259937 html 集微网消息 xff0c ARM处理器在嵌入式设备领域的应用非常广泛 基于ARM Cortex处理器的片上系统 xff08 So
  • emmc5.1, ufs2.0, ufs3.0

    总的来说 xff0c UFS3 0的综合性能 xff0c 特别是持续读写速度有着秒杀UFS2 1前辈的表现 xff0c 只是在随机读写和SQLite性能上 xff0c 却依旧和双通道的UFS2 1持平 xff0c 有些小遗憾 最后 xff0
  • 串行Norflash是如何实现XIP的?

    先说问题 xff1a 要想程序在串行的Norflash中运行 xff0c 到底需要做哪些工作 xff1f Norflash和Nandflash想必大家都知道 恕本人才学疏浅 xff0c 最近突然发现Norflash可以并行连接实现XIP x
  • ARM汇编语言 - 简介 [一]

    origin https zhuanlan zhihu com p 82490125 ARM汇编语言 简介 一 兰新宇 talk is cheap 说明 xff1a 本系列文章将主要以ARMv7和ARMv8架构为例 xff0c 介绍ARM汇
  • ARM汇编语言 - 简介 [二]

    上文介绍了ARM的数据传送指令 xff0c 本文将主要介绍ARM中的移位 序转和位操作等数据处理指令 移位指令 移位包括逻辑移位和算术移位 xff0c 所谓 逻辑 就是将寄存器中存放的内容仅仅视为一串bits xff0c 移位的时候只需要将
  • 智能小车开发的重点之一电机该如何选型

    一 智能小车的分类 二 电机的分类 无刷电机要好于有刷电机 xff0c 优点 xff1a 1 没有损耗 xff0c 有刷电机有寿命 2 静音 xff0c 有刷电机噪音比较大 无刷电机分为带霍尔传感器和不带霍尔传感器两种 xff0c 因为无刷
  • ARM汇编语言 - 简介 [三]

    上文介绍了ARM的数据处理指令 xff0c 本文将主要介绍ARM中的跳转指令 跳转指令 无条件跳转 ARM中的基础跳转指令就一个字母 34 B 34 xff0c 代表Branch xff0c 相比起x86中和它功能基本相同的 34 jmp
  • CAN总线35周年特别篇 -- CAN总线的前世今生

    origin https mp weixin qq com s MloRz 4sio8QGdNItNRBjQ CAN总线35周年之际 xff0c 花了一晚上时间整理翻译了下 xff0c 通过这个帖子大家会对当前市场上各种CAN名词有的全面系
  • 微控制器CPU性能测试基准CoreMark

    origin https www cnblogs com henjay724 p 8729364 html 痞子衡嵌入式 xff1a 微控制器CPU性能测试基准 EEMBC CoreMark 大家好 xff0c 我是痞子衡 xff0c 是正
  • 意外发现,Cortex-M7的性能和诸多关键参数碾压A7和R7

    origin https www amobbs com thread 5676525 1 1 html 之前一直以为ARM A R M M排在最后也最便宜 xff0c 肯定性能最低 xff0c 但最近意外发现并非如此 xff0c M7居然完
  • gcc之-fomit-frame-point

    Kernel里的dump stack oops打印出来的backstrace调用链表是怎样实现的呢 xff1f 大家都知道当发生函数调用的时候 xff0c 函数的参数传递 xff0c 返回值传递都要遵循一定的规则 xff0c 在ARM体系架
  • Lauterbach trace32与 jlink

    一直不太明白trace32为何这么贵 xff0c 这篇文章讲了一些 xff0c 稍微明白一点了 一个小工具背后的故事 昨天我们推送了华为任正非2012年的讲话稿 真正的出路 xff1a 重读任正非2012实验室讲话 任总是在商场上真刀真枪干
  • 嵌入式开发输出调试信息的几种方法(常规法及非常规法)!

    origin https mp weixin qq com s 7LolqWUeJ4tCENh6yVmvXw 嵌入式开发的一个特点是很多时候没有操作系统 xff0c 或者没有文件系统 xff0c 常规的打印log到文件的方法基本不适用 最常
  • 从零开始,耗时两年,19岁小伙自制一块32位Risc-V处理器,可玩「贪吃蛇」

    从零开始 xff0c 耗时两年 xff0c 19岁小伙自制一块32位Risc V处理器 xff0c 可玩 贪吃蛇 脚本之家 今天 关注 脚本之家 xff0c 与百万开发者在一起 本文经机器之心 xff08 微信公众号 xff1a almos
  • 揭秘被Arm编译器所隐藏的浮点运算~

    以下文章来源于Mculover666 xff0c 作者mculover666 引言 笔者接触嵌入式领域软件开发以来 xff0c 几乎用的都是 ARM Cortex M 内核系列的微控制器 感谢C语言编译器的存在 xff0c 让我不用接触汇编
  • main之前初始化流程

    本文分别介绍Keil调用的ARMCC以及ARM NONE EABI GCC两个编译器在main之前的操作 xff1a Keil MDK启动文件 总结一下MDK的启动流程 xff1a 1 系统初始化 xff0c 包括中断向量表的重新映射 2
  • 嵌入式单片机之STM32F103C8T6最小系统板电路设计参考

    STM32F103C8T6最小系统板电路设计 一 电源部分 设计了一个XH插座 xff0c 以便使用3 7V锂电池供电 xff0c 接入电压不允许超过6V 二 指示灯部分 电源指示灯可以通过一个短路帽控制亮灭 xff0c 以达到节电的目的
  • 国产射频前端,攀登新高峰

    2022年 xff0c 国产射频前端开启新篇章 射频前端包括功率放大器 xff08 PA xff09 滤波器 xff08 Filter xff09 开关 xff08 Switch xff09 低噪声放大器 xff08 LNA xff09 天
  • slam相关文章

    1 视觉SLAM漫谈 http www cnblogs com gaoxiang12 p 3695962 html 2 学习SLAM需要哪些预备知识 xff1f https www zhihu com question 35186064 3

随机推荐

  • 工业机器人主要核心

    主要核心为三部分 xff0c 控制器 xff08 就是用来控制机器人动作的那个手持设备 xff0c 可以用来编程 xff0c 一般用vxworks和linux xff0c wince来实现 xff09 伺服电机和减速器用来实现机器人的动作
  • 想搞工业机器人 这五大方面你必须了解

    origin http www robot china com news 201510 09 25754 html 1 工业机器人控制系统硬件结构 控制器是 机器人 系统的核心 xff0c 国外有关公司对我国实行严密封锁 近年来随着微电子技
  • 为什么我选择并且推崇用ROS开发机器人?

    origin http www leiphone com news 201701 zBHXGJcsRTioj4gH html 雷锋网 公众号 xff1a 雷锋网 按 xff1a 本文来自知乎 xff0c 作者贾子枫 xff0c 雷锋网已获授
  • 一飞智控CEO齐俊桐:一篇文章教你看透无人机飞控这十年

    origin http www leiphone com news 201702 YO2bskI7smE1U8TA html 无人机 又一个被国人玩坏了的单词 科幻电影里的无人机 10年前说自己是搞无人机的 xff0c 无不引来疑惑和赞叹的
  • 机器人框架

    ROS Rock Yarp Orocos
  • 列王的纷争-深度传感器已被巨头瓜分?

    origin http mt sohu com 20170325 n484729546 shtml 我们常常说苹果富可敌国 但是你这么说其实是在侮辱苹果 苹果可比美国政府有钱多了 根据最新消息 xff0c 美国政府账上的现金 xff0c 只
  • 不得不看!国内深度摄像头方案大起底

    origin http pieeco baijia baidu com article 517947 引言 xff1a 市场对深度视觉技术需求趋于井喷 xff0c 但可以提供产品和方案的公司寥寥无几 xff0c 本文分析了国内三家各具特点的
  • VR中的9轴传感器(重力加速度/陀螺仪/磁力计)

    origin http blog csdn net dabenxiong666 article details 53836503 前言 传感器的调试过程 xff0c 一般根据原厂提供demo代码 xff0c 调试数据接口 xff0c 将数据
  • STM32中AD采样的三种方法分析

    在进行STM32F中AD采样的学习中 xff0c 我们知道AD采样的方法有多种 xff0c 按照逻辑程序处理有三种方式 xff0c 一种是查询模式 xff0c 一种是中断处理模式 xff0c 一种是DMA模式 三种方法按照处理复杂方法DMA
  • 神经网络:比原来更容易学习了

    origin http geek csdn net news detail 195039 原文 xff1a NEURAL NETWORKS YOU VE GOT IT SO EASY 作者 xff1a Steven Dufresne 翻译
  • NuttX 编译系统

    origin http blog csdn net zhumaill article details 24400441 xff08 嵌入式 实时操作系统 rtos nuttx 7 1 makefile xff09 NuttX 编译系统 转载
  • NuttX 启动流程

    origin http blog csdn net zhumaill article details 23261543 xff08 嵌入式 实时操作系统 rtos nuttx 7 1 stm32 源代码分析 xff09 NuttX 启动流程
  • nuttx操作系统的移植以及下载

    origin http blog csdn net seawolfe article details 70244672 1 在ubuntu根目录下 xff1a root 64 ubuntu apt get update 更新包 2 root
  • 机器人峰会厂商

    origin http www chinarobtop com exhibition exhibition php 埃夫特 清能德创 芜湖瑞思 芜湖哈特 山东帅克机械 宁波慈兴轴承 A6 成都卡诺普 绿的谐波
  • 机器人公司

    1 螺趣科技 2 米兔机器人 3 360
  • 解:高性能MEMS IMU解决方案-ADXRS290

    origin https ezchina analog com message 34890 对于复杂且高动态惯性配置的MEMS IMU应用 xff0c 评估功能时需要考虑许多属性 在设计周期早期评估这些属性优于追逐开放性成果 xff0c 从
  • 关于DIY电池均衡器--被动均衡---蓄电池--电瓶车电池组电压均衡的经历

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 前言 随着电动车长时间的反复使用 xff0c 电池参数难免会发生变化 xff0c 当电池组中各节电池参数不一时 xff0c 便会出现充电时
  • CMakeLists.txt与Makefile 的区别

    我平时一般是在windows使用VS编程 xff0c 但是偶尔在网上查资料的时候也会下载一些别人的代码 xff0c 其中就经常对CMakeLists txt和Makefile文件产生疑惑 xff0c 下面我来分析一下这两个经常使用的地方 C
  • 链接提示 extern "C"

    在 C 43 43 中调用 C 代码时 xff0c 需要给编译器指定 xff23 代码要按照 xff23 语言的编译器编译 xff0c 否则编译器会将 xff23 代码按照默认的C 43 43 编译器来编译 xff23 代码 xff0c 这
  • C/C++实现你的浪漫表白:浪漫流星雨表白程序,

    想要讨女朋友欢心也巩固自己所学的知识 xff0c 各位小伙伴有自己的想法了吗 xff1f 准备好想要怎样实施了吗 xff1f 有什么美好的计划了吗 xff1f 如果没有的话那么别慌 xff0c 我知道 xff0c 在座的各位肯定都是有自己的