鱼C论坛

 找回密码
 立即注册
查看: 1727|回复: 11

[作品展示] 洒水车的 bgm,听一遍唱一遍

[复制链接]
发表于 2023-6-7 11:49:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 zhangjinxuan 于 2023-6-26 19:57 编辑

使用 windows.h 中的 beep 函数做出的洒水车 bgm:

  1. #include <bits/stdc++.h>
  2. #include <windows.h>
  3. using namespace std;

  4. const int sounds[6][8] = {
  5.         {0, 0, 0, 0, 0, 0, 0, 0},
  6.         {0, 130, 146, 164, 174, 195, 220, 246, },
  7.         {0, 262, 294, 330, 349, 392, 440, 494, },
  8.         {0, 523, 587, 659, 698, 783, 880, 987, },
  9.         {0, 1046, 1174, 1318, 1396, 1567, 1760, 1975},
  10.         {0, 2093, 2349, 2637, 2793, 3135, 3520, 3951},
  11. };

  12. struct Tone {
  13.         int level, tone;
  14.         double times = 1;
  15. };

  16. const Tone soundlist[]= {
  17.                 {0, 0, 0},
  18.         {4, 1, 2}, {3, 6}, {3, 5}, {3, 3}, {3, 2}, {3, 3, 0.5}, {3, 2, 0.5}, {3, 1, 2}, {0, 0, 2},
  19.         {3, 3}, {3, 5}, {4, 1}, {4, 1, 2}, {4, 1}, {4, 2}, {4, 3}, {4, 2}, {4, 1}, {3, 5, 2}, {0, 0, 2},
  20.         {4, 1, 2}, {4, 2}, {4, 1}, {3, 6}, {3, 5}, {3, 6, 2}, {0, 0, 2},
  21.         {3, 5}, {3, 6}, {4, 1}, {3, 3, 2}, {3, 5}, {3, 2}, {3, 3}, {3, 2}, {3, 1}, {3, 2, 2}, {0, 0, 2},
  22.         {3, 3, 2}, {3, 5}, {3, 6, 2}, {3, 5}, {3, 6, 0.5}, {3, 5}, {3, 3}, {3, 2}, {3, 3, 0.5}, {3, 2, 0.5}, {3, 1, 2}, {0, 0, 0.5},
  23.         {3, 3}, {3, 5}, {4, 1}, {4, 1, 2}, {4, 1}, {4, 2}, {4, 3}, {4, 2}, {4, 1}, {3, 6, 2}, {0, 0, 2},
  24.         {4, 2}, {4, 3}, {4, 1, 2}, {3, 6}, {3, 5, 2}, {3, 6}, {3, 5, 0.5}, {3, 3, 0.5}, {0, 0, 2},
  25.         {3, 2}, {3, 2, 2}, {3, 6}, {3, 5}, {3, 3}, {3, 2}, {3, 3, 0.5}, {3, 2, 0.5}, {3, 1}, {0, 0, 2},
  26. };
  27. const int len = sizeof(soundlist) / sizeof(Tone);
  28. const char* s[8] = {"-", "do", "re", "mi", "fa", "sol", "la", "si"};
  29. const char* l[6] = {"null", "lowest", "low", "mid", "high", "highest"};
  30. int main() {
  31.         puts("-----Sprinkler-----");
  32.         for (int i = 1; i <= len; ++i) {
  33.                 printf("\r%d  %s  %s      ", soundlist[i].level, s[soundlist[i].tone], l[soundlist[i].tone]);
  34.                 Beep(sounds[soundlist[i].level][soundlist[i].tone], (soundlist[i].times) * 300);
  35.         }
  36.         printf("\rThank you for listening, Create by ZhangJinxuan^_^");
  37.         system("pause");
  38.     return 0;
  39. }
复制代码


是不是很像经常在你家门口吵的洒水车?

保证你听一遍唱一遍

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
myd0311 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-7 12:10:09 | 显示全部楼层
能搞python版吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 12:10:42 | 显示全部楼层

python不能直接接触底层库,不好做,你要 exe 我可以发给你。

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
myd0311 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-7 12:11:07 | 显示全部楼层
zhangjinxuan 发表于 2023-6-7 12:10
python不能直接接触底层库,不好做,你要 exe 我可以发给你。

嗯嗯,回头有空告诉你
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 12:14:27 | 显示全部楼层
一点沙 发表于 2023-6-7 12:11
嗯嗯,回头有空告诉你

好的,我也去查查资料

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
myd0311 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 14:27:15 | 显示全部楼层

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
myd0311 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-7 15:23:13 | 显示全部楼层
我家门口没有洒水车
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 15:23:28 | 显示全部楼层
liuhongrun2022 发表于 2023-6-7 15:23
我家门口没有洒水车

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
myd0311 + 1 + 1 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 15:30:10 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-7 16:12:43 | 显示全部楼层
猜猜这是什么歌曲(Python):
  1. import winsound
  2. import time
  3. for i in range(2):
  4.     winsound.Beep(262, 500)
  5.     winsound.Beep(294, 500)
  6.     winsound.Beep(330, 500)
  7.     winsound.Beep(262, 500)
  8.     time.sleep(0.2)
  9. for i in range(2):
  10.     winsound.Beep(330, 500)
  11.     winsound.Beep(349, 500)
  12.     winsound.Beep(392, 500)
  13.     time.sleep(0.7)
  14. for i in range(2):
  15.     winsound.Beep(392, 350)
  16.     winsound.Beep(440, 350)
  17.     winsound.Beep(392, 350)
  18.     winsound.Beep(349, 350)
  19.     winsound.Beep(330, 700)
  20.     time.sleep(0.1)
  21.     winsound.Beep(262, 350)
  22.     time.sleep(0.6)
  23. for i in range(2):
  24.     winsound.Beep(294, 500)
  25.     winsound.Beep(200, 500)
  26.     winsound.Beep(262, 500)
  27.     time.sleep(0.7)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-7 16:30:54 | 显示全部楼层
liuhongrun2022 发表于 2023-6-7 16:12
猜猜这是什么歌曲(Python):

光看赫兹猜不出来额
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-7 16:32:27 | 显示全部楼层
zhangjinxuan 发表于 2023-6-7 16:30
光看赫兹猜不出来额

你运行啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-4 09:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表