2024年最全C++爱心代码_使用c++编制一个爱心(2),2024年最新字节跳动+阿里+华为+小米等10家大厂面试真题

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

完整源代码

代码可以自取编译,当然了嘛,也可以用笔者的跳转连接,直接编译为exe文件

/\*
\* 该程序主要是在控制台打印一个爱心
\*/
#include <iostream>
#include <windows.h>
#include "conio.h"
using namespace std;

//函数前定义
int love();

int main()
{
    //设置控制台输出颜色
    system("color 4");//system("color 4A"):其中A代表前景色,删除则代表改变字体颜色,4代表颜色
    /\*
 \* 颜色代码对照表:https://www.bbsmax.com/A/mo5kQxQnzw/
 \*/
    //main函数调用
    love();
    return 0;
}
int love() {
    //爱心打印函数
    int i, j, k, l, m;
    char c = '/\*';
    cout << " \*\*\*\*\*\*\*\*\*\*正是江南好风景\*\*\*\*\*\*\*" << endl;
    cout << " \*\*\*\*\*\*\*\*\*\*落花时节又逢君\*\*\*\*\*" << endl;
    cout << endl;
    for (i = 1; i <= 3; i++) {
        for (j = 1; j <= 32 - 2 \* i; j++)
            cout << " ";
        for (k = 1; k <= 4 \* i + 1; k++)
            cout << c;
        for (l = 1; l <= 13 - 4 \* i; l++)
            cout << " ";
        for (m = 1; m <= 4 \* i + 1; m++)
            cout << c;
        cout << endl;
    }
    for (i = 1; i <= 3; i++) {
        for (j = 1; j <= 24 + 1; j++)
            cout << " ";
        for (k = 1; k <= 29; k++)
            cout << c;
        cout << endl;
    }
    for (i = 7; i >= 1; i--) {
        for (j = 1; j <= 40 - 2 \* i; j++)
            cout << " ";
        for (k = 1; k <= 4 \* i - 1; k++)
            cout << c;
        cout << endl;
    }
    for (i = 1; i <= 39; i++)
        cout << " ";
    cout << c << endl;
    return -1;
}


快乐的C++代码

这段代码其实只是在上述代码中添加了一段程序而已,其实本质的代码还是原来哪个

添加程序mouseRandom
// 让鼠标有自己的想法
int mouseRandom() {
    int x = GetSystemMetrics(SM_CXSCREEN);
    int y = GetSystemMetrics(SM_CYSCREEN);
    srand(time(0));
    while (1) {
        SetCursorPos(rand() % x, rand() % y);
        Sleep(300);//运行一次休眠300ms
            //键盘输入
        char key;
        if (\_kbhit()) {  // 检测键盘按键
            key = \_getch();  // 获取按键的ASCII码
            if (key == 'k') {  // 如果按下的是‘k’键,这里可以修改,高兴就好!
                cout << "恭喜你,猜对了!程序已终止!" << endl;
                system("pause");//让生成的窗体保持
                exit(0);  // 终止整个程序
            }
            if (key != 'k') {
                cout << "你按下了:" << key << " sorry!,你猜错了!程序继续!" << endl;
            }
        }
    }
    return -2;
}

预定义

主逻辑函数有了,那么该函数不定义是不是会编译失败,那么我们的前置引入和预定义就是这样的:如下:

#include <iostream>
#include <windows.h>
#include "conio.h"
using namespace std;

//函数前定义
int love();
int mouseRandom();

Main函数调用

既然我们加入了新的功能,怎么能不引入主函数进行执行呢?
当然的加入主函数了,具体不说了,代码注释都有
上代码:

int main()
{
    //设置控制台输出颜色
    system("color 4");//system("color 4A"):其中A代表前景色,删除则代表改变字体颜色,4代表颜色
    /\*
 \* 颜色代码对照表:https://www.bbsmax.com/A/mo5kQxQnzw/
 \*/
    //main函数调用
    love();
    mouseRandom();//新加入的快乐功能
    system("pause");//让生成的窗体保持
    return 0;
}

快乐的C++爱心代码(完整版)

具体的语言那些,改写的注释代码中都有,笔者这里直接上代码了,一般复制直接编译就ok了,主打的就是一个快乐!
使用改代码请遵循《网络安全法》
申明:使用该程序产生的后果与作者无关

/\*
\* 该程序主要是在控制台打印一个爱心
\*/

#include <iostream>
#include <windows.h>
#include "conio.h"
using namespace std;

//函数前定义
int love();
int mouseRandom();
//int valueKey();

int main()
{
    //设置控制台输出颜色
    system("color 4");//system("color 4A"):其中A代表前景色,删除则代表改变字体颜色,4代表颜色
    /\*
 \* 颜色代码对照表:https://www.bbsmax.com/A/mo5kQxQnzw/
 \*/
    //main函数调用
    love();
    mouseRandom();
    system("pause");//让生成的窗体保持
    return 0;
}

// 让鼠标有自己的想法
int mouseRandom() {
    int x = GetSystemMetrics(SM_CXSCREEN);
    int y = GetSystemMetrics(SM_CYSCREEN);
    srand(time(0));
    while (1) {
        SetCursorPos(rand() % x, rand() % y);
        Sleep(300);//运行一次休眠100ms
            //键盘输入
        char key;
        if (\_kbhit()) {  // 检测键盘按键
            key = \_getch();  // 获取按键的ASCII码
            if (key == 'k') {  // 如果按下的是‘k’键
                cout << "恭喜你,猜对了!程序已终止!" << endl;
                system("pause");//让生成的窗体保持
                exit(0);  // 终止整个程序
            }
            if (key != 'k') {
                cout << "你按下了:" << key << " sorry!,你猜错了!程序继续!" << endl;
            }
        }
    }
    return -2;
}

int love() {
    //爱心打印函数
    int i, j, k, l, m;
    char c = '/\*';
    cout << " \*\*\*\*\*\*\*\*\*\*欢迎来到快乐的世界\*\*\*\*\*\*\*" << endl;
    cout << " \*\*\*\*\*\*\*\*\*\*猜猜按下哪个键停止?\*\*\*\*\*" << endl;
    cout << " \*\*\*\*\*\*\*\*\*\*正是江南好风景\*\*\*\*\*\*\*\*\*\*" << endl;
    cout << " \*\*\*\*\*\*\*\*\*\*落花时节又逢君\*\*\*\*\*\*\*\*\*\*" << endl;
    cout << endl;
    for (i = 1; i <= 3; i++) {
        for (j = 1; j <= 32 - 2 \* i; j++)
            cout << " ";
        for (k = 1; k <= 4 \* i + 1; k++)
            cout << c;
        for (l = 1; l <= 13 - 4 \* i; l++)
            cout << " ";
        for (m = 1; m <= 4 \* i + 1; m++)
            cout << c;
        cout << endl;
    }


![img](https://img-blog.csdnimg.cn/img_convert/b4b4bf3cecb8bfa0f58201dfd091b03a.png)
![img](https://img-blog.csdnimg.cn/img_convert/9e25825809780179aa273ad0b71ac55e.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618668825)**

)]
[外链图片转存中...(img-nt7HAjFK-1715834226402)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618668825)**

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 请解释一下C语言中的指针。 指针是一个变量,用来存储内存地址。通过指针,可以间接访问和修改内存中的数据。C语言的指针灵活性很高,常用于动态分配内存、传递参数、访问数组等操作。 2. 如何定义一个常量指针? 可以使用const关键字定义一个常量指针。例如:const int *p; 这样定义的指针p指向的值不可修改,但可以通过修改p来指向其他地址。 3. 请解释一下C语言中的结构体。 结构体是一种用户自定义的数据类型,可以包含多个不同类型的成员变量,用来表示一个具有多个属性的对象。通过结构体可以将相关的数据组织在一起,提高程序的可读性和可维护性。 4. 如何在结构体内定义一个指针变量? 可以在结构体内定义一个指针变量,该指针变量可以指向另一个数据类型的值。例如:struct Student { int *p; }; 5. 请解释一下C语言中的动态内存分配。 动态内存分配是指程序在运行时根据需要分配和释放内存。C语言提供了四个函数:malloc、calloc、realloc和free来进行动态内存分配与释放。 6. 如何动态分配内存? 可以使用malloc函数动态分配内存。例如:int *p = (int*)malloc(sizeof(int)); 这样可以在堆中分配一个int类型大小的内存,并将该内存地址赋给指针p。 7. 如何释放动态分配的内存? 可以使用free函数释放动态分配的内存。例如:free(p); 这样可以释放指针p所指向的动态内存。 8. 列举C语言中的一些常见数据结构。 常见的数据结构包括数组、链表、栈、队列、树、图等。 9. 请解释一下C语言中的递归。 递归是指函数自己调用自己的过程。递归可用于解决问题的分解与归纳,适用于解决问题的过程可以划分为多个相似的子问题。 10. 请解释一下C语言中的位运算。 位运算是对二进制数的操作,包括按位与、按位或、按位异或等操作。位运算常用于位掩码、位操作等场景。 以上是前10道C面试题及答案。希望对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值