一个运用Beep函数实现的弹奏出音乐的小程序。
#include<windows.h>
#include<conio.h>
#include<stdio.h>
void main()
{
char ch;
int a=523,b=578,c=659,d=698,e=784,f=880,g=988,a1=a*2,b1=b*2,c1=c*2,d1=d*2,e1=e*2,f1=f*2,g1=g*2,a2=a/2,b2=b/2,c2=c/2,d2=d/2,e2=e/2,f2=f/2,g2=g/2;//音调参数
char j[1000]={"两只老虎爱跳舞,小兔子乖乖拔萝卜,我和小鸭子学走路,童年是最美的礼物。小螺号呀嘀嘀地吹,我学海鸥展翅飞,不怕风雨不怕累,快快把本领都学会。宝贝,星星为你指路,哦?宝贝,月亮为你祝福,哦!成长是快乐的旅途,勇敢迈开你的脚步。宝贝,妈妈怀里安睡,妈妈。宝贝,爸爸是你椅背,爸爸。你是我们的心肝宝贝,爸爸妈妈的爱永相随。"};//输入歌词;
char h[1000]={'1','2','3','1','2','5','5','0','3','N','N','6','6','M','K','5','3','0','1','1','1','N','N','5','3','5','0','J','2','K','K','J','I','K','2','2','G','F','E','J','1','2','3','1','2','5','5','0','3','6','6','A','7','6','5','0','1','I','1','6','5','5','3','0','J','2','K','K','J','I','J','1','1','I','J','K','M','A','C','C','M','K','C','7','7','0','K','6','N','N','M','N','O','5','5','0','0','3','M','M','5','A','B','D','6','6','M','M','M','N','O','N','O','C','B','B','B','M','A','C','C','M','K','C','7','7','0','K','6','N','N','M','N','O','5','5','0','0','3','M','M','5','A','B','D','6','6','M','M','M','N','O','N','O','C','B','B','B'};//输入乐谱
for (int i=0;i<1000;i++)
{
ch=h[i];
printf("%c",j[i]);
switch(ch)
{
case '0':Beep(0,500);break;
case '1':Beep(a,500);break;
case '2':Beep(b,500);break;
case '3':Beep(c,500);break;
case '4':Beep(d,500);break;
case '5':Beep(e,500);break;
case '6':Beep(f,500);break;
case '7':Beep(g,500);break;
case 'A':Beep(a1,500);break;
case 'B':Beep(b1,500);break;
case 'I':Beep(a,250);break;
case 'J':Beep(b,250);break;
case 'K':Beep(c,250);break;
case 'L':Beep(d,250);break;
case 'M':Beep(e,250);break;
case 'N':Beep(f,250);break;
case 'O':Beep(g,250);break;
case 'C':Beep(a1,250);break;
case 'D':Beep(b1,250);break;
case 'G':Beep(e2,250);break;
case 'F':Beep(f2,250);break;
case 'E':Beep(g2,250);break;
default:break;
}
}
}