美文网首页C语言
用C语言弹小星星

用C语言弹小星星

作者: 不知名小号 | 来源:发表于2017-11-04 14:31 被阅读311次

早上起来看到一个小伙伴的代码,用C语言程序播放出小星星。原理是利用Windows.h头文件里的Beep函数发出特定频率的声音。首先找到节奏所对应的频率,然后做成一个数组,根据曲子将对应的下标的元素作为参数,传到Beep函数。
然后我说,加上getch函数就可以拿来弹琴了啊。于是他实现了,我也写了一个小程序。

代码如下

#include <Windows.h>
#include <conio.h>
#include <stdio.h>
int main(int argc, char const *argv[])
{
    char c='c';
    int i,j;
    int m[] = { 0, 523, 587, 659, 698, 784, 880, 932,1046,1175};
    int s[] = { 1, 1, 5, 5, 6, 6, 5, 4, 4, 3, 3, 2, 2, 1 };
    int t[] = { 300, 300, 300, 300, 300, 300, 350, 300, 300, 300, 300, 300, 300, 300 };
    int a='1'-1;

    do{
        printf("按1播放小星星\n按2通过键盘数字发出相应的声调\n按其他任意键退出:\n");
        scanf("%d",&j);
        getchar();
        switch(j)
        {
            case 1:
                for(i=0;i<14;i++)
                {
                    Beep(m[s[i%14]], 300);
                    Sleep(270);
                    if(i==6)
                        Sleep(270);
                }
                break;
            case 2:
                printf("在弹奏时可以按0退出\n");
                while((i=getch()-a)!=0)
                {
                    Beep(m[i], 300);
                }
                break;
            default:
                c='0';
                break;
        }
        if(c=='c') printf("按c继续,任意键退出:\n");
    }while(scanf("%c",&c)&&c=='c');
    return 0;
}

相关文章

  • 用C语言弹小星星

    早上起来看到一个小伙伴的代码,用C语言程序播放出小星星。原理是利用Windows.h头文件里的Beep函数发出特定...

  • 第二单元第三课 小星星曲谱

    小星星 曲谱 5X3P2C(5弦3品弹2次) 3X0P2C 3X2P2C 3X0P1C 4X3P2C 4X2P2C...

  • 第四十四篇 记孩子第一次伴唱

    “一闪一闪亮晶晶,满天都是小星星,挂在天上放光明,就像许多小眼睛……” 我用尤克里里弹奏着这首小星星的简谱,一边弹...

  • 你好,世界

    我用c语言向你问好:

  • 是否还需要在源文件中添加“extern C”?

    c++调用c语言的函数时我们一般在c语言函数声明处用extern "C"包c函数。例如: extern "C"的主...

  • 2020-05-06

    用c语言实现http请求 用c语言来实现一个简单的http请求,请求 www.cnblogs.com 首页 ···...

  • C语言 介绍

    c语言优点: 代码量小、速度快、功能强大 wps就是用C语言编写的 windows由C、C++编写 unix: C...

  • 一月八号

    OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。 1.using nam...

  • runtime的基本使用

    OC语言是基于C语言进行封装的一种面向对象的语言,因此OC的底层就是C,runtime则是用来链接OC与C,用C语...

  • iOS开发技能树之OC-初识、基本数据类型

    Objective-C是C语言的超集,是有一些自己独有特性的C语言,简称ObjC或者OC。前面用的C语言的基本数据...

网友评论

    本文标题:用C语言弹小星星

    本文链接:https://www.haomeiwen.com/subject/lxifmxtx.html