首页 > 其他分享 >使用C语言Beep()函数演奏歌曲

使用C语言Beep()函数演奏歌曲

时间:2023-11-17 14:24:18浏览次数:37  
标签:la mi dao 0.5 C语言 Beep re 歌曲

曲子是大佬王宗贤的《孔雀之舞》,网上没有找到五线谱,只有简谱,而且曲子速度不明确。通过相关演奏音乐的可大体得知,因为连音较多,至10个小节处为24秒,所以每个小节是2.4秒,因为是2/4拍,每个小节是2拍,所以每半个拍子对应的时长是0.6秒,对应的是一个八分音符的音长,600毫秒在函数中用变量f控制。一个十六分音符的音长为300毫秒,一个四分音符的音长为1200毫秒。高音频率翻倍,低音频率减半。

  1 #include<stdio.h>
  2 #include<windows.h>
  3 #include<math.h>
  4 void main()
  5 {
  6     int f=590;
  7 
  8     int dao=261*2,re=293*2,mi=329*2,fa=349*2,so=392*2,la=440*2,si=493*2;
  9         
 10     printf("纯音乐,敬请欣赏");
 11 
 12     Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*1.5);Beep(re,f*0.5);/**/
 13 
 14     Beep(mi,f*3);Beep(so,f);/**/
 15 
 16     Beep(re,f);Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*0.5);Beep(mi,f*0.5);/**/
 17 
 18     Beep(re,f*3);Beep(mi,f*0.5);Beep(dao,f*0.5);/**/
 19 
 20     Beep(re,f);Beep(so*0.5,f);Beep(la*0.5,f*1.5);Beep(so,f*0.5);/**/
 21 
 22     Beep(re,f*3);Beep(re,f*0.5);Beep(mi,f*0.5);/**/
 23 
 24     Beep(so*0.5,f*0.5);Beep(la,f*0.5);Beep(so*0.5,f*0.5);Beep(la*0.5,f*0.5);Beep(re,f);Beep(dao,f*0.5);Beep(la*0.5,f*0.5);/**/
 25 
 26     Beep(dao,f*4);/**/
 27 
 28     Beep(dao,f);Beep(re,f);Beep(mi,f);Beep(so,f);/**/
 29         
 30     Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*1.5);Beep(re,f*0.5);/**/
 31 
 32     Beep(mi,f*3);Beep(so,f);/**/
 33     
 34     Beep(re,f);Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*0.5);Beep(mi,f*0.5);/**/
 35     
 36     Beep(re,f*3);Beep(mi,f*0.5);Beep(dao,f*0.5);/**/
 37         
 38     Beep(re,f);Beep(so*0.5,f);Beep(la*0.5,f*1.5);Beep(so,f*0.5);/**/
 39     
 40     Beep(re,f*3);Beep(re,f*0.5);Beep(mi,f*0.5);/**/
 41     
 42     Beep(so*0.5,f*0.5);Beep(la,f*0.5);Beep(so*0.5,f*0.5);Beep(la*0.5,f*0.5);Beep(re,f);Beep(dao,f*0.5);Beep(la*0.5,f*0.5);/**/
 43     
 44     Beep(dao,f*4);/**/
 45 
 46     Beep(re,f*1.5);Beep(dao,f*0.5);Beep(la*0.5,f);Beep(mi,f);/**/
 47     
 48     Beep(re,f*0.5);Beep(so,f*0.5);Beep(mi,f*0.5);Beep(dao,f*0.5);Beep(re,f*2);/**/
 49 
 50     Beep(dao,f);Beep(dao,f*0.5);Beep(la*0.5,f*0.5);Beep(so*0.5,f);Beep(re,f);/**/
 51     
 52     Beep(dao,f*0.5);Beep(re,f*0.5);Beep(so*0.5,f*0.5);Beep(la*0.5,f*0.5);Beep(dao,f);Beep(la*0.5,f*0.5);Beep(so*0.5,f*0.5);/**/
 53     
 54     Beep(re,f*1.5);Beep(dao,f*0.5);Beep(la*0.5,f);Beep(mi,f);/**/
 55     
 56     Beep(re,f*0.5);Beep(mi,f*0.5);Beep(la*0.5,f*0.5);Beep(dao,f*0.5);Beep(re,f);Beep(so,f*0.5);Beep(mi,f*0.5);/**/
 57     
 58     Beep(so,f*1.5);Beep(la,f*0.5);Beep(so,f);Beep(mi,f);/**/
 59     
 60     Beep(re,f*4);/**/
 61 
 62     Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*1.5);Beep(re,f*0.5);/**/
 63     
 64     Beep(mi,f*3);Beep(so,f);/**/
 65     
 66     Beep(re,f);Beep(mi,f);Beep(la*0.5,f);Beep(dao,f*0.5);Beep(mi,f*0.5);/**/
 67     
 68     Beep(re,f*3);Beep(dao,f*0.5);Beep(mi,f*0.5);/**/
 69     
 70     Beep(re,f);Beep(so*0.5,f);Beep(la*0.5,f*1.5);Beep(so,f*0.5);/**/
 71     
 72     Beep(re,f*3);Beep(re,f*0.5);Beep(mi,f*0.5);/**/
 73     
 74     Beep(so*0.5,f*0.5);Beep(la,f*0.5);Beep(so*0.5,f*0.5);Beep(la*0.5,f*0.5);Beep(re,f);Beep(dao,f*0.5);Beep(la*0.5,f*0.5);/**/
 75     
 76     Beep(dao,f*4);/**/
 77 
 78     Beep(re,f*1.5);Beep(dao,f*0.5);Beep(la*0.5,f);Beep(mi,f);/**/
 79     
 80     Beep(re,f*0.5);Beep(so,f*0.5);Beep(mi,f*0.5);Beep(dao,f*0.5);Beep(re,f*2);/**/
 81 
 82     Beep(dao,f);Beep(dao,f*0.5);Beep(la*0.5,f*0.5);Beep(so*0.5,f);Beep(re,f);/**/
 83     
 84     Beep(dao,f*0.5);Beep(re,f*0.5);Beep(so*0.5,f*0.5);Beep(la*0.5,f*0.5);Beep(dao,f);Beep(la*0.5,f*0.5);Beep(so*0.5,f*0.5);/**/
 85     
 86     Beep(re,f*1.5);Beep(dao,f*0.5);Beep(la*0.5,f);Beep(mi,f);/**/
 87     
 88     Beep(re,f*0.5);Beep(mi,f*0.5);Beep(la*0.5,f*0.5);Beep(dao,f*0.5);Beep(re,f);Beep(so,f*0.5);Beep(mi,f*0.5);/**/
 89     
 90     Beep(so,f*1.5);Beep(la,f*0.5);Beep(so,f);Beep(mi,f);/**/
 91     
 92     Beep(re,f*1.5);Beep(dao,f*0.5);Beep(re*2,f);Beep(re*2,f);/**/
 93 
 94     Beep(dao*2,f);Beep(si,f);Beep(so,f*1.5);Beep(la,f*0.5);/**/
 95     
 96     Beep(mi,f*4);/**/
 97 
 98     Beep(la*0.5,f);Beep(dao,f);Beep(mi,f*1.5);Beep(la,f*0.5);/**/
 99     
100     Beep(so,f*1.5);Beep(la,f*0.5);Beep(re,f*2);/**/
101 
102     Beep(la*0.5,f);Beep(so*0.5,f);Beep(la*0.5,f);Beep(mi,f);/**/
103     
104     Beep(re,f*3);Beep(mi,f);/**/
105     
106     Beep(so,f);Beep(la,f);Beep(re,f*2);/**/
107     
108     Beep(la*0.5,f*8);/**/
109 }

 

标签:la,mi,dao,0.5,C语言,Beep,re,歌曲
From: https://www.cnblogs.com/xiaosongshu2023/p/17838644.html

相关文章

  • 入门c语言--3---关于qsort函数的一些理解
     qsort函数是c语言库函数的一种,作用是将所给的数组中的元素按要求进行排序。 qsort函数可以理解为冒泡函数的进阶,冒泡函数只能对一些如int,char等类型的数组进行排序,当遇到自主定义的struct类型的数组时便不能进行排序。此时便可以通过qsort函数进行排序。  在使用qsort函数......
  • 数据结构C语言之线性表
    发现更多计算机知识,欢迎访问Cr不是铬的个人网站1.1线性表的定义线性表是具有相同特性的数据元素的一个有限序列对应的逻辑结构图形:从线性表的定义中可以看出它的特性:(1)有穷性:一个线性表中的元素个数是有限的(2)一致性:一个线性表中所有元素的性质相同,即数据类型相同(3)序列性:各......
  • 实验4 C语言数组应用编程
    1实验任务1task1_1源代码1#include<stdio.h>2#defineN43voidtest1(){4inta[N]={1,9,8,4};5inti;6//输出数组a占用的内存字节数7printf("sizeof(a)=%d\n",sizeof(a));8//输出int类型数组a中每个元素的地址、值9for(i=0;i<N;......
  • c语言 函数参数个数影响
    参考:https://blog.csdn.net/Cheatscat/article/details/79306021https://blog.csdn.net/Dr_Haven/article/details/89383342一个函数的参数的数目过多(尤其是超过8个)显然是一种不可取的编程风格。参数的数目直接影响调用函数的速度,参数越多,调用函数越慢。参数的数目少,程序就显得......
  • c语言学习(文件)练习43
    需求:将10000以二进制的形式存入文件中#define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>intmain(){ inta=10000; FILE*pf=fopen("D:\\桌面\\test.txt","wb"); fwrite(&a,1,1,pf); fclose(pf); pf=NULL; return0;} ......
  • Beep一个猪猪侠主题曲
    1#include<stdio.h>2#include<windows.h>3#include<math.h>4voidmain()5{6inti;7while(1)8{9for(i=0;i<=2;i++)10{11intdao=261*pow(2,i),re=293*pow(2,i),......
  • C语言劳动节祝福程序代码
    帮您编写一段祝福程序代码,以下是一个400字以上的C语言劳动节祝福程序代码示例:#include<stdio.h>intmain(){//定义劳动节祝福语char*greetings[]={"在劳动节来临之际,向辛勤工作的您致以最诚挚的祝福!","感谢您为国家、为社会做出的无私贡献,祝......
  • B站C语言第十三课——操作符
    1,/与%的应用intmain(){ inta=5/2;//商2余1 printf("a=%d\n",a); intb=5%2; printf("b=%d\n",b); return0;}2,移位操作符右移操作符1.算术右移右边丢弃,左边补原符号位2.逻辑右移右边丢弃,左边补0左移操作符左边丢弃,右边补0intmain(){ inta=5; a<<......
  • c语言 常量字符串及其初始化
    @TOC前言一、常量字符串:常量字符串:需用双引号包着。例如:"hello","你好".常量字符串的本质就是字符数组,该字符串就是数组的名字。访问常量字符串的个元素:"hellowyy"[0]"hellowyy"[1]"hellowyy"[2]......访问各元素可以输出,但是不能赋值修改,因为这是常量字符。常量......
  • C语言转义字符
    在我们实际生活中,有一些特殊的字符,它们并没有实际的意义,但是我们需要用到它们,比如换行、制表符等。在C语言中,我们可以使用转义字符来表示这些特殊的字符。转义字符是以反斜杠\开头的字符,比如\n表示换行,\t表示制表符。下面是一些常用的转义字符:转义字符含义\n换行\t......