(1)用 Beep函数 ,要 包含 头文件 #include <windows.h>
(2)Beep函数有2个参数,第一个参数是声音的频率,第二个参数是所发声音长度毫秒
Beep(523,500); -- 中音 多,发0.5秒即500毫秒
Beep(587,500); -- 中音 来
Beep(659,500); -- 中音 米
Beep(698,500); -- 中音 法
Beep(784,500); -- 中音 少
Beep(880,500); -- 中音 拉
Beep(980,500); -- 中音 梯
Beep(1060,500); -- 高音 多
(3)休止符 用 Sleep(时间,单位毫秒);
如果 一拍用500毫秒,休息一拍 则为 Sleep(500);
弹出抬棺音乐,则要按曲子一个音符一个音符地去写。
例如:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main () {
int t1=500,t05=250,t15=750;
Beep(523,t1);Beep(587,t1);Beep(659,t1);
Beep(698,t1);Beep(784,t1);Beep(880,t1);
Beep(980,t1);Beep(1060,t1);
Sleep(t1);
Beep(523,t05);Beep(587,t05);Beep(659,t05);
Beep(698,t05);Beep(784,t05);
return(0);
}
曲子: 1234567高1 发音各500毫秒,停500毫秒, 12345 发音各250毫秒。
https://zhidao.baidu.com/question/376141521471063844
宏定义:
// 钢琴八个音的音频
#define SOUND_DOU 523 // 多
#define SOUND_LAI 587 // 来
#define SOUND_MI 659 // 米
#define SOUND_FA 698 // 法
#define SOUND_SOU 784 // 少
#define SOUND_LA 880 // 拉
#define SOUND_XI 980 // 梯
#define SOUND_DO 1060// 多
example:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <conio.h>
int main () {
int t1=500,t05=250,t15=750;
while(true)
{
if(kbhit())
{
if(GetKeyState('A') & 0x8000)
Beep(523,t05);
if(GetKeyState('S') & 0x8000)
Beep(587,t05);
if(GetKeyState('D') & 0x8000)
Beep(659,t05);
if(GetKeyState('F') & 0x8000)
Beep(698,t05);
if(GetKeyState('G') & 0x8000)
Beep(784,t05);
if(GetKeyState('H') & 0x8000)
Beep(880,t05);
if(GetKeyState('J') & 0x8000)
Beep(980,t05);
if(GetKeyState('K') & 0x8000)
Beep(1060,t05);
}
}
return(0);
}