c语言课程设计

发布 2022-09-30 17:35:28 阅读 1362

题目一。

1.1 题目详细描述:

编制**程序,****,并进行简单的功能增加。

1.2 程序设计思路及流程图:

1. 利用发声函数控制发声频率,利用延时函数进行时间延时,从而达到****的目的;

2. 利用按键来控制发声频率,按键长短控制发声时间,达到简单的演奏**的目的。

3. 流程图:ny

ny1.3 程序清单及注释:

#include <>

#include <>

#include <>

#include <>

#include <>

#include <>

void singsong();**弹奏的子函数*\

#define n1 64

#define n2 32

#define n4 16

#define n8 8

#define n16 4

#define end 0

enum notes定义枚举*\

m1=10000000000000,c10=131,d10=147,e10=165,f10=175,g10=196,a10=220,b10=247,c0=262,d0=296,e0=330,f0=349,g0=392,a0=440,b0=494,c1=523,d1=587,e1=659,f1=698,g1=784,a1=880,b1=988,c2=1047,d2=1175,e2=1319,f2=1397,g2=1568,a2=1760,b2=1976};

typedef enum notes song;

song song乐谱*\

a10,n8,c0,n8,g10,n8,a10,n8,c0,n4,g0,n8,a0,n8,f0,n8,e0,n8,d0,n4,d0,n8,g0,n8,g0,n8,d0,n8,f0,n8,e0,n8,d0,n8,c0,n16,d0,n16,f0,n8,f0,n8,a10,n8,c0,n8,d0,n8,f0,n8,d0,n16,c0,n16,a10,n16,c0,n16,g10,n8,a10,n8,a10,n8,g10,n8,g10,n4+n8,g10,n16,g10,n8,g10,n8,g0,n8,g0,n8,g0,n8,g0,n8,f0,n8,f0,n8,g0,n8,g0,n8,d0,n4,d0,n8,g0,n8,f0,n8,f0,n8,a10,n8,c0,n8,d0,n4,f0,n8,d0,n8,d0,n8,f0,n8,g0,n4,g0,n8,a0,n8,c1,n4,a0,n8,c1,n8,c1,n8,a0,n8,g0,n4,g0,n8,a0,n8,g0,n8,f0,n8,d0,n4,d0,n8,g0,n8,g0,n8,d0,n8,f0,n8,e0,n8,d0,n8,c0,n16,d0,n16,f0,n8,f0,n8,a10,n8,c0,n8,d0,n8,f0,n8,d0,n16,c0,n16,a10,n16,c0,n16,g10,n4,a10,n8,a10,n8,g10,n4,g0,n8,a0,n8,g0,n8,a0,n8,g0,n8,f0,n8,g0,n4,c0,n8,d0,n8,c0,n8,d0,n8,g10,n8,a10,n8,c0,n4,g0,n8,a0,n8,g0,n8,a0,n8,c1,n8,a0,n8,g0,n4,c0,n8,d0,n8,c0,n8,d0,n8,g10,n8,a10,n8,c0,n4,g0,n8,a0,n8,g0,n8,f0,n8,g0,n4,c0,n8,d0,n8,g10,n8,a10,n8,c0,n4,g0,n8,a0,n8,g0,n4,c0,n8,d0,n8,c0,n4,g0,n8,a0,n8,g0,n4,c0,n8,d0,n8,c0,n4,g0,n8,g0,n8,c0,n8,c0,n8,g0,n8,g0,n8,c0,n8,c0,n8,g0,n8,g0,n8,c0,n8,g0,n8,c0,n8,g0,n8,c0,n8,g0,n8,c0,n4,c0,n4,c0,n4,c0,n4,end,end};

main()

nosound关闭声音*\

note+=2;}}

printf("do you want to play the piano? (y/n)");

ans=getch判断是否要演奏*\

if(ans=='y')

printf("thank you

getch结束*\

\演奏的发声控制函数*\

void singsong()

char ch;

while(ch当遇到空格是终止*\

ch=getch输入频率*\

switch(ch)

每个字符所代表的频率*\

case 'z':sound(131);break;

case 'x':sound(147);break;

case 'c':sound(165);break;

case 'v':sound(175);break;

case 'b':sound(196);break;

case 'n':sound(220);break;

case 'm':sound(247);break;

case 'a':sound(262);break;

case 's':sound(296);break;

case 'd':sound(330);break;

case 'g':sound(349);break;

case 'h':sound(392);break;

case 'j':sound(440);break;

case 'k':sound(494);break;

case 'q':sound(523);break;

case 'w':sound(587);break;

case 'e':sound(659);break;

case 't':sound(698);break;

case 'y':sound(784);break;

case 'u':sound(880);break;

case 'i':sound(988);break;

case '2':sound(1047);break;

case '3':sound(1175);break;

case '4':sound(1319);break;

case '6':sound(1397);break;

case '7':sound(1568);break;

case '8':sound(1760);break;

case '9':sound(1976);break;

default:sound(100000000);}

printf("you stop it!");结束*\}

1.4 程序运行结果及自评:

下图是运行时,运行过程**的**优美动听,可以清晰的听出和把握**的旋律和音调,也可以自己的弹奏**,而且符合实际的音调,是个不错的程序。

1.5 程序调试中遇到过的问题及解决办法。

调试中,**的频率不是很和谐,时间的长短不是很适宜;通过改变发声的频率的大小使**听起来优美、和谐,通过增加for(i=0;i<10;i++)延时*\来使时间延长更符合实际**的发声长度,达到预期的**的效果,使**更加优美。

题目二。2.1 题目详细描述:

编写周期函数图形发生器的程序,可产生正弦波、三角波、锯齿波、方波和整流正弦波。由键盘输入选择波形、振幅、频率和初相。

2.2 程序设计思路及流程图:

1. 利用画图函数,画出正弦波、三角波、锯齿波、方波和整流正弦波;

2. 通过键盘输入来确定所画图像的波形、振幅、频率和初相;

3. 通过延时函数来逐点画出函数图象,使其形成动态变化,呈现动态曲线;

4. 流程图:

abcde

C语言课程课程设计

课程设计报告。课程名称 c语言程序设计 系别 xxx 专业班级 xxx班 学号 xxxxxxxxxx 姓名 xxx 课程题目 10或100以内儿童加减乘除算术游戏。完成日期 2013.6.14 19 指导老师 xxx 2013年 6月 21日。附件 一 程序模块图。二 源程序。include inc...

C语言课程设计

目录。1 c语言程序课程设计教学大纲。2 c语言程序课程设计说明书。3 c语言程序课程设计报告 模板 4 c语言程序课程设计成绩评定表。xx xx学院。课程教学大纲。课程名称 c语言程序课程设计。适用专业 课程类别 专业基础课。制订时间 2010年11月 计算机科学与技术系制。c语言程序课程设计教学...

C语言课程设计

目录。1 c语言程序课程设计教学大纲。2 c语言程序课程设计说明书。3 c语言程序课程设计报告 模板 4 c语言程序课程设计成绩评定表。珠海学院。课程教学大纲。课程名称 c语言程序课程设计。适用专业 2010级计算机科学与技术系各专业。课程类别 专业基础课。制订时间 2010年11月 计算机科学与技...