#包含
#包含
#包含
#包含
#包含
无符号频率[ 100 ];
char hight[100];
未指定时间[ 100 ];
未指定速率;
Void主) )
{
语音unsigned f )、char h[]、unsigned t[] )、int r、int num );
voidmusicunsignedf )、unsigned t[]、int num );
int flag=0;
文件* f1;
int i,n,menu;
char FileName[30];
while1)。
{ f1=NULL;
i=n=0;
printf 本程序以编码格式播放音乐。 \n ‘;
printf\n在记事本中编辑乐谱,输入文件名并播放音乐\n );
printf 乐谱文件可以自制,也可以抄别人的n ) );
printf\n现在可以输入数字,然后按回车播放音乐。 \n );
printf1指定音乐music1n );
printf2指定音乐music2n );
printf3以程序文件名播放音乐\n );
printf4退出n );
while1)。
{
printf 菜单=); scanf’%d ‘,menu );
ifmenu==1) ) ) ) )。
{
src py 文件名称,’ music1.txt ‘;
布雷克;
}
ifmenu==2) )
{
src py 文件名称,’ music2.txt ‘;
布雷克;
}
ifmenu==3) )。
{
扫描’ % s ‘,文件名称);
布雷克;
}
ifmenu==4) )。
退出0;
}
printf 该文件的音乐代码如下。 \n );
if ) f1=fopen 文件名称,’ r ‘ ) )==NULL ) ) ) ) ) ) ) ) ) )。
{
printf ‘无法打开文件! \n ‘;
退出1;
}
FcanfF1,’ %d ‘,rate );
while ! feofF1 )标志!=1)
{
FcanfF1,’ %d%c%d ),frequency[i],hight[i],time[i];
printf%d%c%d )、frequency[i]、hight[i]、time[i];
iftime[I]!=-1 )
{
I; n;
}
else
flag=1;
}
printfn );
setFrequency,hight,time,rate,n );
多用途frequency,time,n );
floseF1;
}
getch ;
}
voidsetunsignedf )、char h[]、unsigned t[]、int r、int num ) )。
{
int i,k;
forI=0; I
{
t[i]=t[i]*r;
交换机h I ) ) ) ) ) ) ) ) )。
{
case ‘H’:k=4; 布雷克;
case ‘M’:k=2; 布雷克;
case ‘L’:k=1;
}
开关f [ I ] ) ) ) ) ) ) ) ) )。
{
case 1: f[i]=262*k; 布雷克;
case 2: f[i]=296*k; 布雷克;
case 3: f[i]=330*k; 布雷克;
case 4: f[i]=349*k; 布雷克;
case 5: f[i]=392*k; 布雷克;
case 6: f[i]=440*k; 布雷克;
case 7: f[i]=494*k; 布雷克;
}
}
}
void music 未指定f )、未指定t [ ]、int num ) )。
{
int i;
forI=0; I
{
beepfI ),t I ) );
}
}