基于51单片机的C语言程序设计

基于51单片机的C语言程序设计
基于51单片机的C语言程序设计

基于51单片机的C语言程序设计

基于51单片机的C语言程序设计实训100例

第01 篇基础程序设计

01 闪烁的LED

/* 名称:闪烁的

LED

说明:LED按设定

的时间间隔闪烁

*/

#include

#define uchar

unsigned char

#define uint unsigned int

sbit LED=P1^0;

//延时

void DelayMS(uint x)

{

uchar i;

while(x--)

{

for(i=0;i<120;i++);

}

}

//主程序

void main()

{

while(1)

{

LED=~LED;

DelayMS(150);

}

}

02 从左到右的

流水灯

/* 名称:从左

到右的流水灯

说明:接在P0口的8个LED从左到右循环依次点亮,产生走马灯效果

*/

#include

#include

#define uchar unsigned char

#define uint unsigned int

//延时

void DelayMS(uint x)

{

uchar i;

while(x--)

{

for(i=0;i<120;i++);

}

}

//主程序

void main()

{

P0=0xfe;

while(1)

{

P0=_crol_(P0,1); //P0的值向左循环移动

DelayMS(150);

}

}

03 8只LED左右来回点亮

/* 名称:8只LED左右来回点亮

说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果

*/

#include

#include

#define uchar unsigned char

#define uint unsigned int

//延时

void DelayMS(uint x)

{

uchar i;

while(x--)

{

for(i=0;i<120;i++);

}

//主程序

void main()

{

uchar i;

P2=0x01;

while(1)

{

for(i=0;i<7;i++)

{

P2=_crol_(P2,1); //P2的值向左循环移动

DelayMS(150);

}

for(i=0;i<7;i++)

{

P2=_cror_(P2,1); //P2的值向右循环移动

DelayMS(150);

}

}

}

04 花样流水

/* 名称:花样流水灯

说明:16只LED分两组按预设的多种花样变换显示*/

#include

#define uchar unsigned char

#define uint unsigned int

uchar code Pattern_P0[]=

{

0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff ,0xff,0xff,0xff,0xff,

0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x8 1,0x00,0x81,0xc3,0xe7,0xff,

0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0 xc7,0x8f,0x1f,0x3f,0x7f,

0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0 xff,0xff,0x0f,0xf0,0xff,

c语言程序设计教程第二版课后习题答案

c 语言程序设计教程第二版课后习题 答 案 篇一: c 语言程序设计教程_李含光_ 郑关胜_ 清华大学 出版社习题答案习题答案[完美打印版]】1.单项选择题 (1)a (2)c(3)d (4)c (5)b 2.填空题(1)函数 (2)主函数(main )(3)printf(),scanf()第 2 章习题参考答案 1.单项选择题 1-5 cbccc 6-10 cdcdc 11-13 dbb 2 .填空题 (1)1(2)26 (3)6 , 4 , 2 (4)10 , 6 (5)3.000000 (6)双精度(double )(7)9 (8)字母,数字,下划线(9)13.700000 (10)11(11)((m/10 )%10 )*100+ (m/100 )*10+m%10 (12)0 (13)10 ,9 ,11(15) (x0y0)||(x0z0)||(y0||z0)(16 )double (17)x==0 (18)sqrt(fabs(a-b))/(3*(a+b))(19 )sqrt((x*x+y*y)/ (a+b)) 第 3 章习题参考答案 1.单项选择题 1-5 cccdd 6-10 bcdbc11-15 bcbbb16 a 2 .填空题 (1)用;表示结束(2){ } (3 )y=x0?1:x==0?0:-1 (4)y%4==0y%100!=0||y%400==0 (5)上面未配对(6)default 标号(7)while ,do while ,for (8)do while (9)本次(10)本层3.阅读程序,指出结果 (1)yes (2)*(3)abother (4)28 70 (5)2,0(6)8(7)36 (8)1(9)3,1,-1,3,1,-1(10)a=12 ,y=12 (11) i=6 ,k=4 (12)1,-2 4 .程序填空 (1)x:y ,u :z (2)m=n ,m !=0 ,m=m/10 (3)teps , t*n/(2*n+1) , printf( n”“,%2*lsf )(4)m%5==0 ,

《单片机C语言程序设计》课程标准

广州康大职业技术学院 《单片机C语言程序设计》课程标准 一、基本信息 适用对像:应用电子技术专业的学生 课程代码: 学分:2 学时:36 制定人:徐又又 制定时间:2010年9月 所属系部:自动化 批准人:陶甫廷 二、课程的目标 1.专业能力目标 了解单片机C语言的特点、与PC机C语言的异同之处、单片机C语言的开发环境; 熟悉单片机C语言的基本语法规范、Keil C软件的应用及其与硬件平台的连接、C语言程 序结构设计、与单片机相关的设置等方面知识。 2.方法能力目标 了解用单片机C语言进行应用产品软件开发的步骤,具备单片机C语言程序的识读、修改的基本能力;学会使用Keil C软件进行源程序编辑、编译和软、硬件模拟调试的操作方 法与技能。 3.社会能力目标 通过后续课程《单片机应用实训》的学习与强化训练,具有使用单片机C语言进行电子产品、自动检测与控制和高新视听设施等方面的软件开发的职业技能。 三、整体教学设计思路 1.课程定位 该课程是应用电子技术和自动化技术等专业获得专业技能的必修课程之一,该课程属于职业技术课程,以培养电子产品开发相关行业急需的机电类和电子类高级技能应用型人才 为目标。 本课程一般在学生学完模拟电子技术与数字电子技术、计算机技术等专业基础课后再讲授;《单片机应用》等课程可作为先修课程,也可在同一学期开设。 2.课程开发思路

本课程根据“工学结合”的原则,强调对单片机C语言程序设计的理论部分删繁就简,以“实用够用”为度,就是为了便于他们在后续的实训月(四周)以及即将下厂顶岗实习期 (十周),将所学的单片机C语言程序设计的常用原理与实用知识,能够与实训、实习的生 产工位和顶岗工作更紧密地联系起来。 四、教学内容 1.学时分配 学习情境名称子学习情境1 子学习情境2 子学习情境3 子学习情境4 学时 分配 学习情境(单元)1 单片机C语言概述单片机C语言与 PC机C语言的异 同之处 简单的C程序介绍 及上机操作(编译 三个简单C程序) 3 教学时数 1 2 学习情境(单元)2单片机C语言开发环境 建立 Keil软件的使 用(源文件、 工程的建立) 上机操作(用keil 软件进行工程的设 置) 3 教学时数 2 1 学习情境(单元)3数据的类型、运算符和 表达式 用整型和字符型 定义变量 数的溢出 C51中特有的数 据类型 上机操作(用 算术运算符和 算术表达式编 写程序) 6 教学时数 2 1 2 1 学习情境(单元)4C51流程与控制顺序结构程序选择结构程序循环结构程 序(上机操作 编译冒泡排 序法程序) 6 教学时数 2 2 2 学习情 境(单 元)5 C51构造数据类型数组指针结构共用体和枚举 6 教学时数 2 2 1 1 学习情境(单元)6单片机内部资源的组成中断编程上机操作用定时器 /计数器资源 编程并编译 串口编程 6 教学时数 2 2 2 学习情境(单元)7函数函数的定义函数的调用局部变量和全局 变量 变量的存储类 别 6 教学时数 2 2 1 1

C语言程序设计(第二版)习题参考答案

C语言程序设计习题参考答案 习题1 一、判断题 1.在计算机中,小数点和正负号都有专用部件来保存和表示。 2.二进制是由0和1两个数字组成的进制方式。 3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。 4.在整数的二进制表示方法中,0的原码、反码都有两种形式。 5.有符号数有三种表示法:原码、反码和补码。 6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。 解:1.F 2.T 3.T 4.T 5.T 6.T 二、单选题 1.在计算机中,最适合进行数值加减运算的数值编码是。 A. 原码 B. 反码 C. 补码 D. 移码 2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数。 A. 112 B. 120 C. 121 D. 122 3.关于ASCII码,在计算机中的表示方法准确地描述是。 A. 使用8位二进制数,最右边一位为1 B. 使用8位二进制数,最左边一位为1 C. 使用8位二进制数,最右边一位为0 D. 使用8位二进制数,最左边一位为0 4.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。 A. X∧Y=1000 B. X∨Y=1111 C. X⊕Y=0011 D. ˉY=1000 5.下列叙述中正确的是()。 A.高级语言就是机器语言 B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序 C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种 D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。 A.生成可执行文件B.生成目标文件 C.输出运行结果D.自动保存源文件 7.下列叙述中不正确的是()。 A.main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面 C. 函数可以带参数,也可以不带参数。 D. 每个函数执行时,按函数体中语句的先后次序,依次执行每条语句 解:1.C 2.C 3.D 4.B 5.B 6.B 7.B 三、填空题

单片机C语言程序设计师试题及答案

单片机C语言程序设计师试题 一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为_________,X与Y的“异或”运算为________。 2、若机器的字长为8位,X=17,Y=35,则X+Y=_______,X-Y=_______(要求结果写出二进制形式)。 3、单片机的复位操作是__________(高电平/低电平),单片机复位后,堆栈指针SP的值是________。 4、单片机中,常用作地址锁存器的芯片是______________,常用作地址译码器芯片是_________________。 5、若选择内部程序存储器,应该设置为____________(高电平/低电平),那么,PSEN信号的处理方式为__________________。 6、单片机程序的入口地址是______________,外部中断1的入口地址是_______________。 7、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为_________,机器周期为_______________。 8、外围扩展芯片的选择方法有两种,它们分别是__________________和_______________。 9、单片机的内部RAM区中,可以位寻址的地址范围是__________________,特殊功能寄存器中,可位寻址的地址是____________________。 10、子程序返回指令是________,中断子程序返回指令是_______。 11、8051单片机的存储器的最大特点是____________________与____________________分开编址。 12、8051最多可以有_______个并行输入输出口,最少也可以有_______个并行口。 13、_______是C语言的基本单位。 14、串行口方式2接收到的第9位数据送_______寄存器的_______位中保存。 15、MCS-51内部提供_______个可编程的_______位定时/计数器,定时器有_______种工作方式。 16、一个函数由两部分组成,即______________和______________。 17、串行口方式3发送的第9位数据要事先写入___________寄存器的___________位。 18、利用8155H可以扩展___________个并行口,___________个RAM单元。 19、C语言中输入和输出操作是由库函数___________和___________等函数来完成。 二、选择题 1、C语言中最简单的数据类型包括(b )。 A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型 2、当MCS-51单片机接有外部存储器,P2口可作为( c )。 A、数据输入口 B、数据的输出口 C、准双向输入/输出口 D、输出高8位地址 3、下列描述中正确的是( d )。 A、程序就是软件 B、软件开发不受计算机系统的限制 C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合 4、下列计算机语言中,CPU能直接识别的是( d )。 A、自然语言 B、高级语言 C、汇编语言 D、机器语言 5、MCS-5l单片机的堆栈区是设置在( c )中。

51单片机C语言程序设计复习资料

2013-2014学年上期51单片机C语言程序设计重修复习提纲考试方式:闭卷考试。 考试题型: 填空题(每空1分,共18分);单项选择题(每空2分,共18分);问答及计算题(每题4分,共16分);编程及程序阅读题(5小题,共48分)。 考试分数: 卷面成绩70%+平时成绩15%+实验成绩15%,未缺席、无课堂违纪、作业全交且认真完成的同学平时成绩可获得满分,缺席一次平时成绩扣30分,实验好评次数3次以上且实验报告全优的同学实验成绩可得满分,实验缺席一次扣30分。缺席实验和旷课共3次以上者,无考试资格。 考试时间: 18周周一(12月30日)下午14:00:16:00,考试地点:具体考室另行通知希望大家认真复习,认真听讲,不懂就问,考试成绩不及格允许查卷,如查卷卷面批阅无误成绩不做更改。 编程题为实验或实验类似的题目有3题,其余2题也取自课堂讲授例题,请务必认真复习。第一章单片机概述及单片机知识回顾 掌握什么是单片机、单片机的应用、常见单片机类型、十进制、十六进制、二进制数制转换知识。掌握单片机的硬件组成、CPU的结构、程序计数器PC的功能、存储器结构、机器周期的计算、会画出单片机的最小系统电路图及回答单片机最小系统的组成。 第二章C51语言程序设计基础(本章填空题和选择题比重较大请务必认真复习)掌握C51语言进行软件开发与汇编语言相比的优点、掌握C51的数据类型、特殊功能位的定义、C51的基本运算(位运算重点复习)、数组的定义、C51的结构及函数。 第三章AT89S51片内并行端口及编程(本章有编程题) 掌握P0-P3并行端口的特点,会开关量检测及流水灯程序的编程。 第四章AT89S51单片机的中断系统(本章有编程题) 掌握中断系统的结构、中断请求响应被满足的条件、外部中断的触发选择方式、外部中断的使用与编程。 第五章AT89S51单片机的定时器/计数器(本章有编程器) 掌握定时器的结构,TOMD及TCON的使用,定时器方式0和方式1的特点、会计算定时器初值,会用定时器中断产生PWM波形,会用定时器对外部事件进行计数。 第六章AT89S51单片机的串行口(本章有计算题) 掌握串行通信的基础知识(课本没有的内容请参照课堂讲授笔记或PPT)、串行口的四种工作方式的特点、会计算奇偶校验码、会根据波特率计算T1的初值。 第七章AT89S51单片机与输入/输出外设接口(本章有编程题) 掌握数码管动态显示的原理、掌握矩阵式键盘的原理与编程(矩阵键盘编程必考,但不会考4X4键盘)。 第八章AT89S51单片机与D/A与A/D转换器的接口(本章有编程题) 掌握AD与DA转换的接口、ADC和DAC的技术指标、常用AD和DA转换器。掌握ADC0809和TLC2543的使用与编程(2器件其中之一有编程题)。 第九章AT89S51单片机应用系统与调试(本章有编程题) 掌握单片机应用系统的软件抗干扰方法。

单片机C语言程序设计实训100例--基于8051+PROTEUS仿真1

《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例 令狐采学 第01 篇基础程序设计 01闪烁的LED /* 名称:闪烁的LED 说明:LED按设定的时间间 隔闪烁 */ #include #define uchar unsigned char #define uint unsigned int sbit LED=P1^0; //延时 void DelayMS(uint x) { uchar i; while(x--) {

for(i=0;i<120;i++); } } //主程序 void main() { while(1) { LED=~LED; DelayMS(150); } } 02 从左到右的流水 灯 /* 名称:从左到右的 流水灯 说明:接在P0口的8 个LED从左到右循环依次点亮,产生走马灯效果*/ #include #include #define uchar unsigned char #define uint unsigned int

//延时 void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++); } } //主程序 void main() { P0=0xfe; while(1) { P0=_crol_(P0,1); //P0的值向左循环移动 DelayMS(150); } } 03 8只LED左右来回点亮 /* 名称:8只LED左右来回点亮 说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果

51单片机C语言程序设计实验

《51单片机C语言程序设计》实验教学指导书 伍勤谟编 二00六年十二月

单片机C语言实践教学的内容目录 实验一单片机C语言编程环境建立 实验目的:掌握Keil软件的安装,使用; 实验内容:Keil软件的安装,使用, 熟悉单片机C语言编程过程(源文件的建立,工程的建立,编译及链接等) 实验仿真板的介绍及使用等; 实验二51 C 语言数据类型,运算符与表达式的练习(1) 实验目的:掌握相关语句的编程方法。 实验内容:演示字符型数据和整型数据的溢出. 观察浮点型数据在内存中的存放方式; 演示实型数据的舍入误差; 观察数据在内存中的存储位置 实验三51 C 语言数据类型,运算符与表达式的练习(2) 实验目的:掌握相关语句的编程方法。 实验内容:定义多个变量观察各自的存储空间; 将变量定义在位变量变区; 研究pdata和xdata型变量的存储空间; 观察各种类型数据转换时的内存变化; 实验四51 C 语言程序流程控制语句的练习 实验目的:掌握for、while do---while等循环语句的编程方法。 实验内容:利用仿真型实验板和所学流程控制语句,编写演示流水灯功能的程序。 实验五51 C 语言的构造数据类型的练习 实验目的: 1 熟悉51 C 语言的指针与数组的语法结构。 2 掌握指针与数组的编程的方法。 实验内容:编写程序:通过指针变量访问整型变量 实验六51 单片机内部资源C 语言的编程练习 实验目的:掌握51 单片机内部资源C 语言编程的方法。 实验内容:编写利用外中断控制实验LED灯亮灭程序;利用定时器的中断方式控制实验板上LED闪烁功能,要求每50ms改变一次。 实验七51 单片机内部资源C 语言的编程练习 实验目的:掌握51 单片机内部资源C 语言编程的方法。 实验内容:编写利用定时器控制实验板两个灯的同时闪烁,但它们的闪烁时间不同;利用计数器功能将T0口计数值显示出来(用8个LED来显示数据)。 实验八51 C 语言的涵数语句的练习 实验目的: 1、掌握51 C 语言的涵数语句与程序结构。 2、掌握51 C 语言的涵数参数传递与调用。 实验内容:编写程序:求1个数的阶乘 实验九51单片机接口C 语言编程的练习 实验目的:掌握51单片机接口C 语言编程基本方法。 实验内容:编写实验板六位数码管动态显示程序,要求:使用定时中断实现显示的程序,第1~5位各位始终显示0,第六位在0~9之间显示。 实验十51单片机应用设计举例练习 实验目的:掌握51单片机应用设计方法。 实验内容:编写程序:用实验板实现秒钟功能,且有高位消隐功能。

C语言程序设计(第二版)习题参考答案

C语言程序设计习题参考答案 习题 1 一、判断题 1.在计算机中,小数点和正负号都有专用部件来保存和表示。 2.二进制是由0和1两个数字组成的进制方式。 3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。 4.在整数的二进制表示方法中,0的原码、反码都有两种形式。 5.有符号数有三种表示法:原码、反码和补码。 6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。 解:1.F2.T 3.T 4.T 5.T 6.T 二、单选题 1.在计算机中,最适合进行数值加减运算的数值编码是。 A. 原码 B. 反码 C. 补码 D. 移码 2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数。 A. 112 B. 120 C. 121 D. 122 3.关于ASCII码,在计算机中的表示方法准确地描述是。 A. 使用8位二进制数,最右边一位为1 B. 使用8位二进制数,最左边一位为1 C. 使用8位二进制数,最右边一位为0 D. 使用8位二进制数,最左边一位为0 4.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。 A. X∧Y=1000 B. X∨Y=1111 C. X⊕Y=0011 D. ˉY=1000 5.下列叙述中正确的是()。 A.高级语言就是机器语言 B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序 C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种 D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。 A.生成可执行文件B.生成目标文件 C.输出运行结果D.自动保存源文件 7.下列叙述中不正确的是()。 A.main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面 C. 函数可以带参数,也可以不带参数。 D. 每个函数执行时,按函数体中语句的先后次序,依次执行每条语句 解:1.C 2.C 3.D 4.B 5.B 6.B 7.B 三、填空题

51单片机C语言程序设计经典案例

项目三C51程序设计语言基础 任务1 C51程序的识读 1.C51程序结构 例3-1 P_test /********************* //注释,还可用//注释掉一行 File name:P_test.c Chip name:STC89C51RC Clock frequency:1.20MHz ***********************/ #include “reg52.h”//预处理命令,文件包含预处理命令,后缀名都是.h,标准的MCS-51单片机头文件为”reg51.h”,STC89系列单片机头文件为”reg52.h” #define unit unsigned int //宏定义预处理命令 sbit BZ=P3`7 ; sbit key=P1`0; void delay(unit ms) { unit i; while( ms --) { for(i=0;i<120;i++); } } void main(void) { while(1) { if(key==0) { BZ=0x0; delayms(10); BZ=0x1; delayms(50); P0=0xFF; } else { P0=~P0; delayms(500); } } } 2.C51的数据类型

位变量型bit 字符型无符号字符型unsigned char 有符号字符型signed char C51的数据类型整数型无符号整数型unsigned int 基本类型有符号整数型signed int 长整数型无符号长整数型unsigned long int 有符号长整数型signed long int 实数型(浮点型)单精度浮点型float 双精度浮点型double 数组类型array 结构体类型struct 构造类型共用体union 枚举enum 指针类型 空类型(void) 表3-1 C51基本数据类型的长度和值域 类型长度/bit 长度/byte 范围 位变量型bit 1 0 ,1 无符号字符型unsigned char 8 单字节0-255 有符号字符型signed char 8 单字节-128-127 无符号整数型unsigned int 16 双字节0-65536 有符号整数型signed int 16 双字节-32768-32767 无符号长整数型unsigned long int 32 四字节 有符号长整数型signed long int 32 四字节 单精度浮点型float 32 四字节 双精度浮点型double 32 四字节 一般指针类型24 三字节 3.C51的标识符和关键字 标识符是由字母、数字和下划线组成的字符串,第一个字符必须是字母或下划线,不超过32个字符。 表3-2 C51中的关键字 关键字用途说明 auto 存储种类声明用来声明局部变量 bdata 存储器类型说明可位寻址的内部数据存储器 break 程序语句退出最内层循环体 bit 位变量语句位变量的值是1(true)或0(flase)case 程序语句switch语句中的选择项 char 数据类型的声明单字节整数型或字符型数据

C语言程序设计教程(第二版)电子工业出版社,黄皮书课后答案

习题1 1-1 填空题 1.函数 2.主函数main(),主函数main() 3.主函数main() 4.函数首部,函数体 5.{, } 6./*, */ 7.顺序结构,选择结构,循环结构 8..c, .obj, .exe 1-2 思考题 1.结构化程序设计是指:为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。顺序结构,选择结构,循环结构 2.算法是对具体问题求解步骤的一种描述。计算机算法的表达工具通常采用以下几种方法:(1)用自然语言表示算(2)用流程图表示算法(3)用伪代码表示算法(4)用程序设计语言表示算法 3.语言简洁、紧凑,使用方便、灵活; 支持结构化程序设计;运算符丰富;数据类型丰富;较强的编译预处理功能;C语言的可移植性好;C语言本身既有一般高级语言的优点,又有低级(汇编)语言的特点;语法限制不太严格,程序设计自由度大。 4. 略 5. 略 1-3 编程题 1. main() { float a=3, b=4, c=5, s, area; s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); p rintf(“area=%f ” , area ); } 2. main() { printf(“******************************”); printf(“* hello world *”); printf(“******************************”);

} 习题2 2-1 单选题 1~5 DBDCA 6~10 DCABA 11~14 BCA A 2-2 思考题 1.2.00000 2.1,0.5 3.9,2 4.6 5.100,d 6.(1)20 (2)0 (3)60 7. (1)10,6,4 (2)6,9,15 (3)3,60,83 8. 55 9.70 习题3 3-1单选题 1-5BBDAB 6-10DDBDC 11-15AADCA 16-20CBACC 21-25ABDBB 3-2填空题 1. 3 2.0261 3.0x10 4.0 5. 2, 1 互换a,b的值 6. 6.6 7.–03 8.7 9. 5.0,4,c=3 10.i=10,j=20 11.(1) 65 (2) 65,A

(完整版)单片机C语言程序设计实训100例—基于8051+Proteus仿真毕业论文

《基于8051+Proteus仿真》案例 第01 篇基础程序设计 01 闪烁的LED * 名称:闪烁的LED 说明:LED按设定的时间间隔闪烁 * #include

P0=0xfe; while(1) { P0=_crol_(P0,1); P0的值向左循环移动 DelayMS(150); } } 03 8只LED左右来回点亮 * 名称:8只LED左右来回点亮 说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果* #include

DelayMS(150); } } } 04 花样流水灯 * 名称:花样流水灯 说明:16只LED分两组按预设的多种花样变换显示 * #include

《单片机C语言程序设计》期末考核项目

《单片机C语言程序设计》期末考核项目 编制部门:电子信息工程技术专业编制人:张秀国审核人:编制日期:2013年6月18日 图1 模拟数字密码锁 一、基本考核要求:基于图1,编程实现下列功能。 开机显示如图2所示。 P A S S W O R D ■ 图2 开机显示画面

四、评分方法 1.完成基本考核要求,得60分 2.完成创新考核要求,加20分 3.项目报告中,流程图、知识点描述、难点及解决办法(10分),学习体会(10分) 出师表 两汉:诸葛亮 先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。然侍卫之臣不懈于内,忠志之士忘身于外者,盖追先帝之殊遇,欲报之于陛下也。诚宜开张圣听,以光先帝遗德,恢弘志士之气,不宜妄自菲薄,引喻失义,以塞忠谏之路也。 宫中府中,俱为一体;陟罚臧否,不宜异同。若有作奸犯科及为忠善者,宜付有司论其刑赏,以昭陛下平明之理;不宜偏私,使内外异法也。 侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下:愚以为宫中之事,事无大小,悉以咨之,然后施行,必能裨补阙漏,有所广益。 将军向宠,性行淑均,晓畅军事,试用于昔日,先帝称之曰“能”,是以众议举宠为督:愚以为营中之事,悉以咨之,必能使行阵和睦,优劣得所。

亲贤臣,远小人,此先汉所以兴隆也;亲小人,远贤臣,此后汉所以倾颓也。先帝在时,每与臣论此事,未尝不叹息痛恨于桓、灵也。侍中、尚书、长史、参军,此悉贞良死节之臣,愿陛下亲之、信之,则汉室之隆,可计日而待也。 臣本布衣,躬耕于南阳,苟全性命于乱世,不求闻达于诸侯。先帝不以臣卑鄙,猥自枉屈,三顾臣于草庐之中,咨臣以当世之事,由是感激,遂许先帝以驱驰。后值倾覆,受任于败军之际,奉命于危难之间,尔来二十有一年矣。 先帝知臣谨慎,故临崩寄臣以大事也。受命以来,夙夜忧叹,恐托付不效,以伤先帝之明;故五月渡泸,深入不毛。今南方已定,兵甲已足,当奖率三军,北定中原,庶竭驽钝,攘除奸凶,兴复汉室,还于旧都。此臣所以报先帝而忠陛下之职分也。至于斟酌损益,进尽忠言,则攸之、祎、允之任也。 愿陛下托臣以讨贼兴复之效,不效,则治臣之罪,以告先帝之灵。若无兴德之言,则责攸之、祎、允等之慢,以彰其咎;陛下亦宜自谋,以咨诹善道,察纳雅言,深追先帝遗诏。臣不胜受恩感激。 今当远离,临表涕零,不知所言。

C语言程序设计

《C程序设计》课程设计任务书 计算机科学与技术、通信、自动化、电子信息技术等专业 一. 课程设计目的 本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》课程后进行的一次全面的综合练习。本课程设计的目的和任务: 1. 巩固和加深学生对C语言课程的基本知识的理解和掌握 2. 掌握C语言编程和程序调试的基本技能 3. 利用C语言进行基本的软件设计 4. 掌握书写程序设计说明文档的能力 5. 提高运用C语言解决实际问题的能力 二. 课程设计要求 1. 分析课程设计题目的要求 2. 写出程序流程图 3. 编写程序代码及重要的解释,调试程序使其能正确运行 4. 设计完成的软件要便于操作和使用 4. 设计完成后提交课程设计报告 三. 课程设计报告的内容 1. 课程设计名称、班级号、学号、学生姓名和课程设计起止日期 2. 课程设计目的和要求 3. 课程设计任务内容 4. 程序流程图 5.软件使用说明 6. 课程设计心得与体会 7. 附录1:参考文献 8. 程序清单(带有较详细的注释)请上传网络课堂。 四. 设计题目: 题1. 设计一个多功能计算程序(计算器模拟) 实现功能: 具备整型数据、浮点型数据的算术(加、减、乘、除)运算功能。依次输入第一个运算数、运算符(+,-,*,/)、第二个运算数,然后输出结果。结果可以作为下一个运算的第一运算数。按‘C’清屏,按‘R’退出。 例如:输入:2 +5 输出:7

题2. 洗牌和发牌模拟 用随机数开发一个可用来实现具体的玩牌游戏中的洗牌和发牌的模拟程序。 实现功能: 1)洗牌功能 2)发牌功能: 54张牌,随机发给4个玩家,要求显示各玩家及底牌. 3)设计模拟4副牌的程序 题3. 学生成绩文件管理 现有3个班学生的C语言课程成绩,请以班级为单位对学生的成绩按从高到低的顺序排序,并将排序后的结果存入文件中。必须采用指针和函数。 提示:定义三个一维数组分别存放三个班的成绩,排序方法可以采用冒泡法或其它方法,在函数中实现数组的排序,在主函数中调用函数。 题4. 读一个文件把各记录读入链表各结点中;对链表进行添加\删除操作;把链表的每个结点元素存储在该文件中. 每个学生需独立完成,18周末时提交源程序与课程设计报告。 五、评分方法和标准 运行每个同学的程序、审阅课程设计报告,根据下面的标准给每位同学评定课程设计考试成绩。 1程序调试成功(60%) 2知识点运用得当(10%) 3 程序设计合理(20%) 4. 课程报告撰写准确、无误(10%) 六、时间安排 C语言课程设计时间安排 17周 18周

《c语言程序设计》(第六版)谭浩强图书信息

竭诚为您提供优质文档/双击可除 《c语言程序设计》(第六版)谭浩强图 书信息 篇一:c语言程序设计谭浩强重点笔记 c语言设计 学习笔记 早晨:06:40起床 07:20——08:20 上午:08:30——10:30 10:50——11:30 中午:12:00——02:00 下午:02:30——04:30 晚上:05:30——08:00 08:00——09:00 09:00——11:00 11:30 英语1小时新概念英语(单词、语法、听读背)大学英语(单词、语法、听读背)计算机基础2小时计算机科学技

术导论计算机组成原理微机原理及接口技术Intel微处理器结构编程与接口深入理解计算机系统80x86汇编语言程序设计8086-8088宏汇编语言程序设计教程bIos研发技术剖析自己动手写操作系统操作系统原理windows操作系统原理windows内部原理系列windows程序内部运行原理计算机网络第五版午休计算机应用及编程windows用户管理指南、AD 配置指南、网络专业指南、windows即学即会教程windows 下32位汇编语言程序设计、c#编程锻炼、晚餐辅导专业基础2小时大学数学、大学物理、电机及拖动、电力电子技术、通信技术休息 目录 第一章c语言概述................................................. ................................................... .. (1) 1.1c程序结构特点16................................................. ................................................... (1) 1.2c程序上机步骤17................................................. ...................................................

《单片机C语言程序设计》练习题

《单片机C语言程序设计》练习题 1.Keil软件的源文件的建立、工程的建立、工程的设置过程? 打开keil软件,在硬盘中新建一个文件夹,以保存本实验中所产生的文件,点击“文件”菜单中的“新建”,新建一个源文件,将程序输入文件中,点击“文件”菜单中的”保存”,,给源文件取名并保存为ASM文件类型。 点击“工程”菜单中的“新建工程”新建一个工程,给工程取名,并与源文件保存在同一文件夹中,在“CPU选择的对话框中,选择ATMEL公司的At89C52单片机,右击“source Group”,选择“Add File to Group....”,将源文件加入到工程,右击“Target”,选择“option for Target......”,选择“输出”列,并选择创建HEX 文件,对工程文件调试、编译,无误后生成HEX文件。 2.程序调试时可以运用哪些方法进行调试? 全速运行,单步运行,连续运行,断点运行 3.安装PL2303驱动软件后如何确定该虚拟端口的? 鼠标右键点击桌面的“我的电脑”==》设备管理器==>端口,可查看到“Prolific USB-to-Serial comm Port(COM4,根据串口使用情况不同而不同),此即为虚拟端口” 4.STC-ISP如何将程序下载到开发板中? 打开STC-ISP软件,选择单片机型号,串行口端口,打开HEX文件,点击Download 下载,即可实现自动下载编程。 5.编程使8个发光二极管按如下方式循环点亮。(1)L6、L4、L2、L0全亮全灭; (2)L7、L5、L3、L1全亮全灭;(3)L7、L6……L0依次单个点亮;(1)采用软件延时,各时间间隔为0.5秒。每次循环结束时蜂鸣器发出一声报警声音。 (2) 采用外部中断1方式来控制蜂鸣器,即有外部中断按键时,蜂鸣器发出 一声报警声音。 #include #define uint unsigned int

相关文档
最新文档