C++音乐播放系统

C++音乐播放系统

学习c++的同学们都知道,c++是一个一本正经的编程语言,因该没有人用它来做游戏、做病毒、做...做...做音乐播放系统吧!!

音乐的好处

  • 提升情绪:音乐能够影响我们的情绪。快节奏的音乐能够增加兴奋和活力,而慢节奏的音乐则能够帮助放松和减压。选择适合自己心情的音乐,可以帮助我们调整情绪状态。

  • 减轻压力:听音乐可以帮助释放压力。研究发现,愉悦的音乐能够降低我们的应激反应,减轻紧张和焦虑感。

  • 提高认知能力:学习音乐可以促进大脑的发育和认知能力的提高。音乐的学习过程需要我们使用多个感官和认知技能,如记忆、注意力和空间感知等。

  • 增强专注力:音乐可以帮助我们集中注意力。一些研究表明,在进行需要专注的任务时,背景音乐可以提高工作效率和注意力的集中程度。

  • 促进社交:音乐有助于建立社交联系。参与音乐活动,如合唱团、乐队或音乐课程,能够与他人分享共同的兴趣爱好,增强社交关系。

  • 增强记忆力:音乐与记忆有很强的联系。通过将信息与音乐进行关联,能够帮助记忆和提高记忆力。

  • 提高创造力:音乐可以激发创造力。音乐的创作和演奏过程中,我们可以发挥自己的想象力和创造力,表达自己的情感和思想。

既然音乐这么有用,我忍不住用c++做一个音乐播放系统

c++发出声音

c++是一种功能强大、灵活且高效的编程语言,适用于各种应用场景。它在计算机科学和软件工程领域有着广泛的应用,是一门值得学习和掌握的编程语言。它提供了丰富的特性和工具,使得开发人员能够编写高质量、可维护和高性能的代码。然而,由于其复杂性和灵活性,学习和掌握c++可能需要一定的时间和经验。

c++如何在不加入任何特殊库的情况下发出声音呢?

方法十分的简单:

cpp 复制代码
#include <Windows.h>
int main() {
    Beep(440, 1000); // 发出440Hz的声音,持续1秒钟
    return 0;
}

Beep函数!!

Beep函数的作用很简单,就是发出不同高低、不同长短的嗡鸣声。但要想让这个东西形成音乐,好像还差点东西。。。

乐谱与赫兹对照

我在网上经过20分钟的查找,找到了一个十分可靠的赫兹与C调的对照表:

因此我们可以做三个数组,分别代表低音、中音以及高音,再将这些数据打上去,得到了下面是三个数组

cpp 复制代码
int s1[2][10]={{0,262,294,330,349,392,440,494},
			   {0,277,311,-99,370,415,466,-99}};

int s2[2][10]={{0,523,587,659,698,784,880,988},
			   {0,554,622,-99,740,831,932,-99}};

int s3[2][10]={{0,1046,1175,1318,1397,1568,1760,1976},
			   {0,1109,1245,-999,1480,1661,1865,-999}};

这样在进行Beep操作就简单多了~~

把歌打到c++上

这里属于暴力打代码,我就把代码放在下面了~~

cpp 复制代码
#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
int s1[2][10]={{0,262,294,330,349,392,440,494},
			   {0,277,311,-99,370,415,466,-99}};
			   
int s2[2][10]={{0,523,587,659,698,784,880,988},
			   {0,554,622,-99,740,831,932,-99}};
			   
int s3[2][10]={{0,1046,1175,1318,1397,1568,1760,1976},
			   {0,1109,1245,-999,1480,1661,1865,-999}};
 
void cppmusic()
{
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],800);
	
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],800);
	
	Beep(s2[0][3],400);
	Beep(s2[0][5],400);
	Beep(s2[0][1],600);
	Beep(s2[0][2],200);
	Beep(s2[0][3],1600);
	
	Beep(s2[0][4],400);
	Beep(s2[0][4],400);
	Beep(s2[0][4],600);
	Beep(s2[0][4],200);
	Beep(s2[0][4],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],200);
	Beep(s2[0][3],200);
	
	Beep(s2[0][3],400);
	Beep(s2[0][2],400);
	Beep(s2[0][2],400);
	Beep(s2[0][1],400);
	Beep(s2[0][2],800);
	Beep(s2[0][5],800);
	
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],800);
	
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],800);
	
	Beep(s2[0][3],400);
	Beep(s2[0][5],400);
	Beep(s2[0][1],600);
	Beep(s2[0][2],200);
	Beep(s2[0][3],1600);
	
	Beep(s2[0][4],400);
	Beep(s2[0][4],400);
	Beep(s2[0][4],600);
	Beep(s2[0][4],200);
	Beep(s2[0][4],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],400);
	Beep(s2[0][3],200);
	Beep(s2[0][3],200);
	
	Beep(s2[0][5],400);
	Beep(s2[0][5],400);
	Beep(s2[0][4],400);
	Beep(s2[0][2],400);
	Beep(s2[0][1],1200);
}
 
int main()
{
	cppmusic();
	return 0;
}

另外想要循环播放也很简单,只要加个循环就行了~~

相关推荐
wjs20241 小时前
JavaScript 语句
开发语言
bIo7lyA8v1 小时前
算法稳定性分析中的输入扰动建模的技术9
算法
CoderCodingNo1 小时前
【GESP】C++三级真题 luogu-B4499, [GESP202603 三级] 二进制回文串
数据结构·c++·算法
sinat_286945191 小时前
AI Coding 时代的 TDD:从理念到工程落地
人工智能·深度学习·算法·tdd
炽烈小老头1 小时前
【 每天学习一点算法 2026/04/12】x 的平方根
学习·算法
ASKED_20191 小时前
从排序到生成:腾讯广告算法大赛 2025 baseline解读
人工智能·算法
田梓燊2 小时前
leetcode 160
算法·leetcode·职场和发展
_深海凉_2 小时前
LeetCode热题100-颜色分类
python·算法·leetcode
cmpxr_2 小时前
【C】局部变量和全局变量及同名情况
c语言·开发语言
hetao17338372 小时前
2026-04-09~12 hetao1733837 的刷题记录
c++·算法