单片机C程序设计-上机实验(一)
C语言程序设计实验指导书参考答案
![C语言程序设计实验指导书参考答案](https://img.taocdn.com/s3/m/b511c0ed5022aaea998f0fd7.png)
C 语言程序设计上机实验指导与习题参考答案(仅供教师内部参考)华南农业大学目录上机实验 (1)实验 1 C 语言程序初步 (1)一、实验目的 (1)二、实验内容 (1)实验 2 基本数据类型、运算和表达式 (3)一、实验目的 (3)二、实验内容 (3)实验 3 基本输入与输出 (5)一、实验目的 (5)二、实验内容 (5)实验 4 选择结构程序设计 (4)一、实验目的 (4)二、实验内容 (4)实验 5 循环结构程序设计(一) (9)一、实验目的 (9)二、实验内容 (9)实验 6 循环结构程序设计(二) (15)一、实验目的 (15)二、实验内容 (15)实验7 数组 (17)一、实验目的 (17)二、实验内容 (17)实验8 字符数组的应用 (22)一、实验目的 (22)二、实验内容 (22)实验9 函数的基本应用 (24)一、实验目的 (24)二、实验内容 (24)实验10 指针与结构体 (26)一、实验目的 (26)二、实验内容 (26)*实验11 链表 (29)一、实验目的 (29)二、实验内容 (29)*实验12 文件 (32)一、实验目的 (32)二、实验内容 (32)上机实验实验1 C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C 程序。
(3)通过运行简单的 C 程序,初步了解C 程序的特点。
(4)在教师的指导下,学会使用JudgeOnline 实验系统。
二、实验内容1. 运行第一个C 程序[题目:The first C Program]将下列程序输入TC(或VC++),编译、连接和运行该程序。
void main(){printf("The first C Program\n");}[具体操作步骤]以Turbo C 上的操作为例(1)Windows 进入后,按照第一章中介绍的方法,进入Turbo C。
c程序的运行环境和运行c程序的方法
![c程序的运行环境和运行c程序的方法](https://img.taocdn.com/s3/m/df0729f09a89680203d8ce2f0066f5335a8167e4.png)
实验一C程序的运行环境和运行C程序的方法一、实验目的1. 掌握(1)一个C程序上机的全过程,包括编辑、编译、连接、运行和调试;(2)一个C程序的基本结构和书写规则。
2. 熟悉(1)所用的计算机系统的基本操作方法,学会独立使用该系统;(2)TC2.0集成开发环境使用的基本方法。
3. 了解(1)C程序的特点。
二、实验要求1. 请在实验课前复习课堂上所讲授的第一章的内容;2. 请在实验课前将本实验要求编写的程序打好草稿;3. 实验后每班按学号前1/3要提交实验报告;三、实验内容和步骤注意:先听教师讲解TC IDE的基本用法,然后按以下步骤进行实际操作。
【提纲】1. TC IDE概述;2. 帮助的使用(F1、Ctrl+F1);3. 基本操作和常用快捷键(新建、打开、保存、另存为、拾取、编译、连接、Make、执行、查看运行结果、缩放当前窗口、切换当前窗口);4. 块操作(包括与Windows其它应用程序之间交换数据);5. 调试技术(F7、F8、Add Watch);6. 系统参数的设置;7. 查找.c、.obj、.exe文件;【练习】1. 检查所用的计算机系统是否已安装了TC2.0编译系统并确定它所在的子目录2. 进人TC 2.0的集成开发环境3. 熟悉TC 2.0集成环境的界面和有关菜单的使用方法4. 输入并运行一个简单的、正确的程序(1)选择File菜单中的New并按回车键,使编辑窗口变成空白。
(2)输入下面的程序。
#include <stdio.h>void main(){printf(“This is a c program.\n”);}(3)按功能键F9进行编译和连接,观察屏幕上显示的编译信息。
如果出现“出错信息”,则应找出原因并改正之,再进行编译。
(4)如果编译无错误,按Ctrl和F9键使程序运行,按Alt和F5键,切换到用户屏,观察分析运行结果。
5. 输人并编辑一个有错误的C程序(1)输入以下程序(教材第1章中例1.2,故意漏打或打错几个字符)。
C语言程序设计 上机实验指导与习题 参考答案(第四版)
![C语言程序设计 上机实验指导与习题 参考答案(第四版)](https://img.taocdn.com/s3/m/39c710652b160b4e767fcfc4.png)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
C语言程序设计实验指导书(新)
![C语言程序设计实验指导书(新)](https://img.taocdn.com/s3/m/15ffb479ae1ffc4ffe4733687e21af45b307fe8b.png)
C语⾔程序设计实验指导书(新)C语⾔程序设计实验指导书重要说明:上机实验⽬的和要求⼀实验报告要求每次实验,提交⼀份实验报告。
具体格式见“实验报告格式范⽂”将代码和运⾏截图粘贴到“C改⾰实验指导书24学时”word的相应位置。
如下图,程序运⾏的截图如下:⼆上机实验的⽬的上机实验的⽬的,绝不仅仅是为了验证教材和讲课的内容,或者验证⾃⼰所编程序正确与否。
学习程序语⾔,上机实验的⽬的如下:1 加深对讲授内容的理解,尤其是⼀些语法规定,光靠课堂讲授,既枯燥⽆味⼜难以记住,通过多次上机,就能⾃然、熟练地掌握语法规定。
2 了解和熟悉C语⾔程序开发环境。
熟悉⼀两种环境(计算机系统的软件和硬件条件),再遇到其他的系统时便会触类旁通,很快学会。
3 学会上机调试程序,也就是善于发现程序中的错误,并且能很快地排除这些错误,使程序能够正确地运⾏。
要真正掌握计算机应⽤技术,就不仅应当了解和熟悉有关理论和⽅法,⽽且要求⾃⼰动⼿实践能⼒强。
4 在做实验时千万不要在程序通过后就认为万事⼤吉,完成任务了,应当在通过的程序上做⼀些调试和修改,看看会得到什么结果。
多动脑筋思考,将会对你有很⼤帮助。
三上机实验前的准备⼯作1 了解所⽤的计算机系统的性能和使⽤⽅法;2 复习和掌握与本实验有关的教学内容;3 准备好上机所⽤的程序,切忌⾃⼰不思考、不编制程序或抄袭别⼈的程序;4 准备好调试和运⾏时所需的数据。
四上机实验的步骤1 调出C语⾔编译系统,进⼊C语⾔⼯作环境;2 输⼊⾃⼰编制好的程序;3 检查输⼊是否有错,及时更正;4 进⾏编译和连接;5 运⾏程序,分析结果。
重要说明:上机实验⽬的和要求 0实验⼀C语⾔上机基础 (4)实验⼆基本数据类型、运算符和表达式 (7)实验三输⼊、输出函数的使⽤ (9)实验四选择结构程序设计 (11)实验五循环结构程序设计 (13)实验六数组 (16)实验七简单函数 (18)实验⼋⾼级函数 (19)实验九指针 (20)实验⼗⾃定义数据、⽂件 (22)附1:c语⾔函数库 (24)实验⼀C语⾔上机基础特别声明:为了教学的便捷以及学⽣⾃学的⽅便,我们选择了便于下载和安装的Microsoft Visual C++ 6.0软件作为编译环境。
C语言上机实验1-18
![C语言上机实验1-18](https://img.taocdn.com/s3/m/36946f2d0066f5335a81214b.png)
实验一C程序的运行环境及简单程序编写一、实验目的1.了解tc2.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
3.通过运行简单的C程序,初步了解C源程序的特点。
二、实验内容1.编写一个计算球体体积的程序,要求用户自行录入球体的半径。
参考公式V=4/3πr3.。
2.编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款。
运行结果:Ener a dollar amount:93$20 bills:4$10 bills:1$5 bills:0$1 bills:3实验二顺序结构程序设计一、实验目的1.熟悉C语言中的基本数据类型,掌握定义常量和变量以及对它们赋值的方法,了解数据输出时所用格式转换符。
2.掌握格式输入/输出函数的用法。
3.学会简单顺序程序的设计。
4.养成良好的程序设计习惯。
二、实验内容1.编写一个程序,对用户录入的产品信息进行格式化。
Enter item number:583Enter unit price:13.5Enter purchase date(mm/dd/yyyy):3/24/2010Item Unit PurchasePrice date583 $ 13.50 3/24/20102.编写一个程序,要求用户输入一个两位数,然后按数位的逆序打印出这个数。
Enter a two-digit number:28The reversal is :82实验三选择结构程序设计一、实验目的1.熟练使用if、switch编写程序。
二、实验内容1.编写一个程序,确定一个数的位数。
Enter a number:374The number 374 has 3 digits假设输入的数最多不超过4位。
提示:利用if语句进行数的判定。
例如,如果数在0到9之间,那么位数为1;如果数在10到99之间,那么位数为2。
C语言上机实验
![C语言上机实验](https://img.taocdn.com/s3/m/c84b89ad51e79b8968022674.png)
实验一(第1章实验)实验目的:1.掌握运行C语言程序的全过程。
2.熟悉编译环境。
3.初步熟悉C语言程序的语法规定。
4.了解简单函数的使用方法。
实验内容:1.编程且上机运行:求3个整数的和。
2.编程且上机运行:求2个数的和、差、积和商。
3.编程且上机运行:输入3个数,求最大值。
4.编程且上机运行:输入圆的半径,求圆的面积和周长。
5.在屏幕上输出:“hello world!”实验结果:实验二(第3章实验)1.实验目的:理解C语言的类型系统。
实验内容:写程序测试数据-2在类型char,int,unsigned int,long int,unsigned long int 中存储情况。
实验过程:实验结果:参见各种类型的存储实现描述。
2.实验目的:了解混合类型计算中类型的转换规则。
实验内容:写程序测试多种类型数据一起运算时类型的转换及表达式结果的类型。
注意unsigned int和int数据运算时类型转换的方向。
实验过程:/** 类型转换问题* 试问下面两个表达式等价吗?*/#include <stdio.h>#include <stdlib.h>int main() {unsigned int ui,uj;ui = 1;uj = 2;if (ui < uj)printf("\n%u < %u is true !\n", ui, uj);elseprintf("\n%u < %u is false !\n", ui, uj);if (ui - uj < 0)printf("\n%u - %u <0 is true !\n", ui, uj);elseprintf("\n%u - %u <0 is false !\n", ui, uj);system("pause");return 0;}实验结果:参见类型转换规则。
C语言程序设计 上机实验指导与习题 参考答案(第四版)
![C语言程序设计 上机实验指导与习题 参考答案(第四版)](https://img.taocdn.com/s3/m/39c710652b160b4e767fcfc4.png)
C 语言程序设计上机实验指导与习题参考答案(第四版)(学生改编)实验 1:C语言程序初步一、实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。
(2)了解在该系统上如何编辑、编译、连接和运行一个 C程序。
(3)通过运行简单的 C 程序,初步了解 C程序的特点。
(4)在教师的指导下,学会使用在线评判系统。
二、实验内容1.运行第一个 C 程序题目:ThefirstCProgram将下列程序输入visualc ,编译、连接和运行该程序。
includequotstdio.hquotmain printfquotThefirstCProgramnquot具体操作步骤(1)在编辑窗口中输入程序。
(2)保存程序,取名为a1.c。
(3)按照第一章中介绍的方法,编译、连接和运行程序。
,则该题完成。
4按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”2.在在线评判系统中提交实现了计算 ab 功能的程序题目 1001:计算ab由键盘输入两个整数,计算并输出两个整数的和。
实现该功能的程序如下,inclu dequotstdio.hquotmain int ab scanfquotddquotampaampbprintfquotdquotab(1)在程序编辑窗口中输入程序。
(2)保存程序,取名为a2.c。
(3)按照前二章中介绍的方法,编译、连接和运行程序。
(4)在程序运行过程中,输入 15 30↙↙表示输入回车符(5)如果看到如下输出结果,则表明1530 的结果正确,如果得不到如下结果,则需检查并更正程序。
45(6)按照第三章中介绍的方法进入在线评判系统。
(7)显示题目列表,点击题号为 1001,题名为“计算ab”的题目。
(8)查看完题目要求后,点击页面下端的“sumbit” ,参照第二章提交程序的方法提交程序a2.c。
(9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。
单片机实验报告KeilC的使用与汇编语言上机操作
![单片机实验报告KeilC的使用与汇编语言上机操作](https://img.taocdn.com/s3/m/2ada399385254b35eefdc8d376eeaeaad0f31647.png)
单片机实验报告KeilC的使用与汇编语言上机操作单片机实验报告:Keil C的使用与汇编语言上机操作一、实验目的1.掌握Keil C的使用方法,了解其集成开发环境下的单片机编程流程。
2.掌握汇编语言的基本语法和指令,通过上机操作熟悉其应用。
3.通过实际操作,增强动手能力和解决问题的能力。
二、实验设备1.单片机开发板2.Keil C软件3.电脑及编程器三、实验原理及步骤1.Keil C使用介绍Keil C是一款广泛使用的单片机集成开发环境,它提供了包括编译器、调试器、仿真器等在内的全套开发工具。
使用Keil C可以方便地进行代码编写、编译、调试和模拟,适用于多种单片机开发。
2.汇编语言基础汇编语言是一种直接与硬件相关的编程语言,它通过特定的指令集直接控制硬件进行操作。
汇编语言具有高效、直接的特点,但编写和理解相对困难。
本实验主要学习并熟悉汇编语言的基本语法和指令。
3.实验步骤(1) 在Keil C中创建新项目,选择合适的单片机型号。
(2) 创建源文件,编写汇编程序。
(3) 对源文件进行编译,生成目标文件。
(4) 将目标文件下载到单片机开发板进行调试和运行。
四、实验内容及分析1.在Keil C中创建新项目并选择单片机型号。
在创建项目时,需要选择正确的单片机型号,这将直接影响到程序的编写和运行。
根据实际需要,我们选择了AT89C51作为实验用的单片机。
2.创建源文件并编写汇编程序。
在Keil C中,可以方便地创建新的源文件,并在其中编写汇编程序。
例如,下面是一个简单的汇编程序,用于点亮开发板上的LED灯:MOV P1, #1 // 将1赋值给P1端口此程序将使P1端口的所有引脚输出高电平,从而点亮LED灯。
3.对源文件进行编译并生成目标文件。
在Keil C中,可以通过简单的点击完成编译操作。
编译成功后,将生成一个目标文件(如*.obj文件)。
4.将目标文件下载到单片机开发板进行调试和运行。
在Keil C中,可以通过仿真功能模拟程序的运行,也可以通过调试功能查看程序运行过程中的细节信息。
C语言程序设计教程上机实验--学生版(精品)
![C语言程序设计教程上机实验--学生版(精品)](https://img.taocdn.com/s3/m/8b912611866fb84ae45c8dee.png)
实验一上机操作初步一、实验内容:说明:前三题为必做题目,后两题为选做题目。
1、输出入下信息:(实验指导书P79)*************************Very Good*************************2、计算两个整数的和与积。
(实验指导书P81)3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。
(书P3)4、在屏幕上显示一个文字菜单模样的图案:=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5、从键盘上输入两个整数,交换这两个整数。
二、参考答案:1、#include <stdio.h>void main( ){ printf(“********************\n”);printf(“ Very Good\n”);printf(“********************\n”);}2、#include <stdio.h>void main( ){ int a,b,c,d;printf(“Please enter a,b:”);scanf(“%d,%d”,&a,&b);c=a+b;d=a*b;printf(“%d+%d=%d\n”,a,b,c);printf(“%d*%d=%d\n”,a,b,d);}3、#include <stdio.h>#include <math.h>void main( ){ double x,s;printf(“Please input value of x:”);scanf(“%lf”,&x);s=cos(x);printf(“cos(%lf)=%lf\n”,x,s);}4、#include <stdio.h>void main( ){ printf(“==================================\n”);printf(“ 1 输入数据 2 修改数据\n”);printf(“ 3 查询数据 4 打印数据\n”);printf(“===================================\n”);}5、#include <stdio.h>void main( ){ int x,y,t;printf(“Please enter x and y:”);scanf(“%d%d”,&x,&y);t=x; x=y; y=t;printf(“After swap:x=%d,y=%d\n”,x,y);}实验二简单的C程序设计一、实验内容:说明:前四题为必做题目,后两题为选做题目。
C语言程序设计 上机实验指导与习题 参考答案
![C语言程序设计 上机实验指导与习题 参考答案](https://img.taocdn.com/s3/m/9bf87f4b84868762cbaed540.png)
C 语言程序设计上机实验指导与习题参考答案仅供教师内部参考华南农业大学目录上机实验1实验1 C 语言程序初步1一实验目的1二实验内容1实验2 基本数据类型运算和表达式3一实验目的3二实验内容3实验3 基本输入与输出5一实验目的5二实验内容5实验4 选择结构程序设计4一实验目的4二实验内容4实验5 循环结构程序设计一9一实验目的9二实验内容9实验6 循环结构程序设计二15一实验目的15二实验内容15实验7 数组17一实验目的17二实验内容17实验8 字符数组的应用22一实验目的22二实验内容22实验9 函数的基本应用24 一实验目的24二实验内容24实验10 指针与结构体26一实验目的26二实验内容26*实验11 链表29一实验目的29二实验内容29*实验12 文件32一实验目的32二实验内容32上机实验实验1 C 语言程序初步一实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2 了解在该系统上如何编辑编译连接和运行一个C 程序3 通过运行简单的C 程序初步了解C 程序的特点4 在教师的指导下学会使用JudgeOnline 实验系统二实验内容1 运行第一个C 程序[题目The first C Program]将下列程序输入TC 或VC编译连接和运行该程序void mainprintf "The first C Program\n"[具体操作步骤]以Turbo C 上的操作为例1Windows 进入后按照第一章中介绍的方法进入Turbo C2在编辑窗口中输入程序3保存程序取名为a1c4按照第一章中介绍的方法编译连接和运行程序2 在JudgeOnline 系统中提交实现了计算ab 功能的程序[题目1001计算ab]由键盘输入两个整数计算并输出两个整数的和实现该功能的程序如下void mainint a bscanf "dd" a b1 printf "d" a b1在程序编辑窗口中输入程序2保存程序取名为a2c3按照前二章中介绍的方法编译连接和运行程序4在程序运行过程中输入15 30↙↙表示输入回车符5 如果看到如下输出结果则表明1530 的结果正确如果得不到如下结果则需检查并更正程序456 按照第三章中介绍的方法进入JudgeOnline 实验系统7 显示题目列表点击题号为1001题名为计算ab的题目8 查看完题目要求后点击页面下端的sumbit 参照第二章提交程序的方法提交程序a2c9 查看评判结果如果得到accepted则该题通过否则返回第一步检查程序是否正确2实验2 基本数据类型运算和表达式一实验目的1掌握C 语言数据类型熟悉如何定义一个整型和实型的变量以及对它们赋值的方法2 掌握不同的类型数据之间赋值的规3 学会使用C 的有关算术运算符以及包含这些运算符的表达式特别是自加和自减-- 运算符的使用4 进一步熟悉C 程序的编辑编译连接和运行的过程二实验内容1 变量的定义[题目1117变量定义按要求完成程序]下面给出一个可以运行的程序但是缺少部分语句请按右边的提示补充完整缺少的语句void mainint a b 定义整型变量a 和bint i j 定义实型变量i 和ja 5b 6i 314 j iabprintf "a db di fj f\n" a b i j[具体操作步骤]1将代码补充完整2在TC 或VC上运行通过3在JudgeOnline 实验系统上提交2 赋值表达式与赋值语句[题目1118赋值表达式与赋值语句写出程序运行结果] 阅读下面程序写出运行结果void mainfloat aint b cchar d ea 35b ac 330d c3e \\printf "fddcc" abcde运行结果为35000003330J\[提示]赋值语句具有类型转换的功能但可能会改变数据3 基本运算[题目1119基本运算写出程序运行结果]阅读下面程序写出运行结果void mainint a b cfloat d 15 e fa 357b 1510c be 1510f d10printf "dddfff" abcdef运行结果为0211500000010000001500000[提示]除法分整除与普通除法之分4实验3 基本输入与输出一实验目的1熟练掌握putchargetcharprintf scanf 函数的使用方法2 掌握各种类型数据的输入输出的方法能正确使用各种格式转换符二实验内容[题目1126字符的输入与输出]编程实现由键盘输入一个字符后在屏幕上输出该字符[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]a↙↙[正确输出] [正确输出]a参考程序include "stdioh"mainchar chch getcharputchar ch[题目1127计算加法]编程实现由键盘输入一个加法式输出正确的结果两个加数均为整数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]1020 ↙- 1560↙[正确输出] [正确输出]30 45参考程序include "stdioh"mainint a bscanf "dcd" abprintf "d" ab[题目1014求圆面积]由键盘输入圆半径r 请计算该圆的面积注取314159结果保留两位小数位另外程序只要能对r 在0 到10000 范围的情况输出正确答案即可[第一组自测数据] [键盘输入]5652 ↙[键盘输入][正确输出] 112↙1335502 [正确输出][第二组自测数据] 39408[提示]结果保留两位小数可采用printf 函数的格式控制字符来实现参考程序include "stdioh"mainfloat arearscanf "f"rarea 314159rrprintf "02f"area2[题目1015计算摄氏温度值]从键盘输入一个华氏温度值要求按格式输出其对应的摄氏温度值精确到小数点后两位数学公式描述为5C F 329[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]100↙100↙[正确输出] [正确输出]3778 3778[提示]注意公式中的除为普通除法参考程序includevoid mainfloat fcscanf "f"fc 509 f-32printf "2f"c3实验4 选择结构程序设计一实验目的1了解C 语言表示逻辑的方法以0 代表假以非0 代表真2 学会正确使用逻辑运算符和逻辑表达式3 熟练掌握if 语句和switch 语句4 结合程序掌握一些简单的算法二实验内容[题目1120判断点是否在圆]由键盘输入一个点的坐标要求编程判断这个点是否在单位圆上点在圆上输出Y 不在圆上输出N 使用小数点后3 位精度进行判断[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]07070707 ↙8>0505↙[正确输出] [正确输出]Y N[提示] 1平面上的点与圆的关系分为在圆内在圆上在圆外三种本题要求判断是否在圆上2判断两实数相等采用判断这两实数的差的绝对值小于规定误差精度本题为0001 的方法实现参考程序include "stdioh"include "mathh"void mainfloat abscanf "ff"abif fabs aabb-1 1e-3printf "Y\n"else printf "N\n"[题目1017求数的位数]由键盘输入一个不多于9 位的正整数要求输出它是几位数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]349213 ↙10000↙[正确输出] [正确输出]6 5[提示]划定一位数二位数九位数的范围后用if else if else 语句实现判断4参考程序mainint nplacescanf "ld"nif n 99999999 place 9else if n 9999999 place 8else if n 999999 place 7else if n 99999 place 6else if n 9999 place 5else if n 999 place 4else if n 99 place 3else if n 9 place 2else place 1printf "ld\n"place[题目1018数的排序]由键盘输入三个整数a b c按从小到大的顺序输出这三个数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]654590 ↙963 ↙[正确输出] [正确输出]456590 369参考程序includemainint abctscanf "ddd"abcif a b t aa bb tif a c t aa cc tif b c t bb cc tprintf "ddd"abc[题目1016字符变换]由键盘输入5 个字符将其中的大写字母变成小写其它类型的字符不变并按输入顺序逐个输出[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]ApPLe ↙aB 5 ↙[正确输出] [正确输出]apple ab 5[提示]下面代码实现由键盘读入一个字符并按题意处理后输出char aa getcharif a A a Z a a32putchar a5现在题目要求处理5 个字符怎么做呢请自己思考参考程序includemainchar abcdescanf "ccccc"abcdeif a Za A a a32if b Zb A b b32if c Zc A c c32if d Zd A d d32if e Ze A e e32printf "ccccc"abcde[题目1019数的整除]由键盘输入5 个整数逐个判断它们能否被27 整除能的输出YES不能的输出NO 注意输出时一个判断结果占一行5 个数的判断共占5 行[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]8 27 17577 325 54 ↙8 27 17577 325 54 ↙[正确输出] [正确输出]NO NOYES YESYES YESNO NOYES YES[提示]整除即除得余数为0参考程序include "stdioh"mainint abcdescanf "d d d d d"abcdeif a27 0 printf "YES\n" else printf "NO\n"if b27 0 printf "YES\n" else printf "NO\n"if c27 0 printf "YES\n" else printf "NO\n"if d27 0 printf "YES\n" else printf "NO\n"if e27 0 printf "YES\n" else printf "NO\n"[题目1020正负奇偶判断]由键盘输入非零整数x 判断该数正负正数输出positive 负数输出negative 接着判断该数的奇偶性奇数输出odd偶数输出even[第一组自测数据] negative[键盘输入] odd-43 ↙[第二组自测数据][正确输出] [键盘输入]698 ↙positive[正确输出] even参考程序include "stdioh"mainint nscanf "d"nif n 0 printf "negative\n"else printf "positive\n"if n2 0 printf "even\n"else printf "odd\n"[题目1023简单计算器]下面程序是实现一个简单的运算器保留两位小数点如果由键盘输入1050计算机可以输出结果6000如果输入8 *6计算机输出4800如果输入204 计算机输出500 如果输入8-6计算机输出200 请在空处填上适当的代码运行通过后并提交include "stdioh"void mainfloat abcscanf "fcf"switch opcasecase - _case _case __default printf "error"returnprintf "result " c[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]452↙501-23 ↙[正确输出] [正确输出]90 27107参考程序includeint mainchar opscanf "fcf"aopbswitch opcase c abbreakcase -c a-bbreakcase c abbreakcase c abbreakdefaultprintf "error"breakprintf "result 2f"c8实验5 循环结构程序设计一一实验目的1熟悉掌握用while 语句do-while 语句和for 语句实现循环的方法2 掌握在程序设计中用循环实现一些常用算法如穷举迭代递推等二实验内容[题目1024计算阶乘]输入正整数n计算n 结果用长整型数表示注n 123n[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]5 ↙8 ↙[正确输出] [正确输出]120 40320参考程序includemainlong in 1ascanf "ld"afor i 1i ai n niprintf "ld\n"n[题目1025计算数列和]有数列1357911现要求由键盘输入n计算输出该数列的前n 项和[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]2 ↙ 5 ↙[正确输出] [正确输出]4 259参考程序includemainlong nsum 0it 1scanf "ld"nfor i 1i nisum sumtt t2printf "ld\n"sum或includemainlong nsumscanf "ld"nsum nnprintf "ld"sum注评判系统不对程序实现细节进行分析只对运行结果进行评测[题目1026 加一行字符中的数字]由键盘输入一行字符总字符个数从1 个至80 个均有可能以回车符表示结束将其中每个数字字符所代表的数值累加起来输出结果[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]abc123↙A6H7T65↙[正确输出] [正确输出]6 24[提示] 1可以使用下面程序段逐个读入键盘输入的一行字符char chwhile ch getchar \n2 数字字符转为对应的数值可用a ch-0参考程序includemainchar cint s 0awhile c getchar \nif c 0c 9a c-48s saprintf "d"s10[题目1029求最大公约数]由键盘输入两个正整数mn mn 用长整数表示计算它们的最大公约数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]1624↙1725↙[正确输出] [正确输出]8 1[提示]公约数是既能整除m 又能整除n 的数题目要求满足这一条件的最大的一个参考程序includemainlong rmntempscanf "ldld"mnwhile m 0r nmn mm rprintf "ld\n"n或includemainlong mntisscanf "ldld"mnt m nnmfor i t-1i 1i--if mi 0ni 0s i breakprintf "d"s[题目1030字符变换]由键盘输入一个句子总字符个数从1 个至80 个均有可能以回车符表示结束将其中的大写字符变成小写其它类型的字符不变最后输出变换后的句子[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]How Are You ↙ThiS IS My fIrSt C ProgrAm ↙[正确输出] [正确输出]how are you this is my first c program11参考程序includemainchar cwhile c getchar \nif c Ac Zc c32putchar c[题目1037计算数列和]有数列编程实现由键盘输入n计算输出数列前n 项和结果保留四位小数[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]20 ↙30 ↙[正确输出] [正确输出]326603 880403参考程序includemainint itnfloat a 2b 1s 0scanf "d"nfor i 1i nis sabt aa abb tprintf "4f\n"s[题目1044输出最小值]从键盘输入十个整数输出最小值[ 自测数据][键盘输入]12 45 76 87 5 87 43 55 99 21 ↙[正确输出]512参考程序include "stdioh"mainint itminscanf "d" minfor i 1i 10iscanf "d" tif t min min tprintf "d\n"min*[题目1031统计单词个数]由键盘输入一个句子总字符个数从1 个至80 个均有可能以回车符表示结束以空格分割单词要求输出单词的个数[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]How Are You ↙There are many students and many[正确输出] trees↙3 [正确输出]7参考程序includemainint inum 0word 0char cfor i 0 c getchar \niif c word 0else if word 0word 1numprintf "d"num*[题目1042百万富翁]一个百万富翁遇到一个陌生人陌生人找他谈了一个换钱的计划该计划如下我每天给你m 元而你第一天只需给我一分钱第二天我仍给你m 元你给我2 分钱第三天我仍给你m 元你给我4分钱依次类推你每天给我的钱是前一天的两倍直到一个月38 天百万富翁很高兴欣接受这个契约现要求编写一个程序由键盘输入m计算多少天后百万富翁开始亏钱[第一组自测数据] 18[键盘输入] [第二组自测数据]100↙[键盘输入][正确输出] 10000↙13[正确输出] 25参考程序includeincludemainint nmiscanf "d"mfor i 1i 38iif 001 pow 2i-1 -1 -im 0 breakprintf "d"i-114实验6 循环结构程序设计二一实验目的1进一步熟悉掌握用while 语句do-while 语句和for 语句实现循环的方法2 掌握在程序设计中使用多重循环二实验内容[题目1028求素数]输出2 到200 之间包括2 200 的所有素数注要求1 行1 个素数按由小到大的顺序输出[提示]采用双重循环外层循环产生2 到200 之间的数内层循环对数进行判断是否为素数参考程序includeincludemainint mkifor m 2m 200mk sqrt mfor i 2i kiif mi 0 breakif i k printf "d\n"m[题目1035打印菱形]由键盘输入正数n要求输出2n1 行的菱形图案要求菱形左边紧靠屏幕左边[第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]3 ↙ 2 ↙[正确输出] [正确输出]15参考程序include "stdioh"include "mathh"mainint nijkscanf "d"nfor i 1i 2n1ik abs n1-ifor j 1j kj printf " "for j 1j 2n1-2kj printf ""printf "\n"[题目1038打印图案]由键盘输入正数n要求输出中间数字为n 的菱形图案要求菱形左边紧靠屏幕左边[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]4 ↙ 3[正确输出] [正确输出]1 1121 121 12321 12321 1234321 121 12321 1 1211参考程序includeincludemainint nijkhscanf "d"nfor i -n1i n-1ifor j 0j abs i jprintf " "for k 1k n-abs i k printf "d"kfor h n-abs i -1h 1h-- printf "d"hprintf "\n"16实验7 数组一实验目的1掌握一维数组和二维数组的定义赋值和输入输出方法2 掌握与数组有关的算法二实验内容[题目1039倒序]由键盘输入10 个整数倒序输出数字间由一个空格分隔[ 自测数据][键盘输入]70 5 14 20 19 2 99 67 13 66 ↙[正确输出]66 13 67 99 2 19 20 14 5 70参考程序includemainint a [10]int ifor i 0i 10i scanf "d"a[i]for i 9i 0i-- printf "d\n"a[i][题目1040统计不同数字个数]由键盘输入20 个整数统计不同数字的个数[ 自测数据][键盘输入]70 5 14 22 19 2 99 67 13 66 5 93 44 38 22 11 39 22 33 11↙[正确输出]16[提示]上述答案中因为5 有1 个重复数字11 有1 个重复数字22 有2 个重复数字故不同数字有16个分别是70 5 14 22 19 2 99 67 13 66 93 44 38 11 39 3317参考程序include"stdioh"mainint a [20]int itp 0for i 0i 20iscanf "d"a[i]for t 0t itif a[t] a [i] breakif t ipprintf "d"p[题目1062打印矩阵]由键盘输入一个3×4 的矩阵要求输出它的转置矩阵[ 自测数据][键盘输入] [正确输出] 1 6 9 3 1 1 11 1 02 6 1 91 9 8 9 9 0 83 2 9参考程序includemainint a [3][4]b[4][3]ijfor i 0i 3ifor j 0j 4jscanf "d"a[i][j]b[j][i] a [i][j]for i 0i 4ifor j 0j 3jprintf "d "b[i][j]printf "\n"*[题目1047冒泡排序]由键盘输入10 个数用冒泡法对10 个数从小到大排序并按格式要求输出代码如下请填充完整数字间由一个空格分隔incude "stdioh"mainint a[10] i j t18for i 0i 10iscanf "d"___________for ___________for j 0j ____jif ______________________for i 0i 10iprintf "d "a[i][ 自测数据][键盘输入]70 5 14 20 19 2 99 67 13 66 ↙[正确输出]2 5 13 14 19 20 66 67 70 99参考程序includemainint a [10]int ijtfor i 0i 10iscanf "d"a[i]for i 0i 9ifor j 0j 9-ijif a[j] a [j1]t a [j] a [j] a[j1] a[j1] tfor i 0i 10iprintf "d "a[i]*[题目1046计算高精度加法]由键盘输入两个位数很长的整数一行一个数每个数最长不超过80 位试计算并输出这两个数的和[ 自测数据][键盘输入]1XXXXXXXXXX23456789 ↙987654321098765 ↙[正确输出]1XXXXXXXXXX4455555419参考程序include "stdioh"include "stringh"mainint a [100] 0 b[100] 0 c[100] 0char s[101]int i 0n1 0n2 0 0e 0gets sn1 strlen sfor i n1-1i 0i-- a[n1-1-i] s[i]-0gets sn2 strlen sfor i n2-1i 0i-- b[n2-1-i] s[i]-0if n1 n2 n1else n2for i 0i ic[i] a[i]b[i]e 10e a[i]b[i]e 10if c[] 0 printf "d"c[]for i -1i 0i--printf "d"c[i]*[题目找矩阵中的鞍点]由键盘输入一个3 ×4 3 行4 列的矩阵输出矩阵中的鞍点即在矩阵行中最大列中最小的数若没有鞍点输出NO 字样[ 自测数据][键盘输入]87 90 110 98 ↙70 97 210 65 ↙98 45 120 30 ↙[正确输出]11020参考程序includemainint ijka[3][4]jflagfor i 0i 3ifor j 0j 4jscanf "d"a[i][j] for i 0i 3ia [i][0]j 0for j 0j 4jif a[i][j]a [i][j] j jflag 1for k 0k 3kif a [k][j]flag 0 breakif flagprintf "d" breakif flagprintf "NO"21实验8 字符数组的应用一实验目的1掌握字符数组和字符串函数的使用2 掌握与字符串处理有关的算法二实验内容[题目1121定义存贮字符串的字符数组]在下面程序中填充定义字符数组的语句使程序完整include "stringh"void mainchar s[80] 定义字符数组sstrcpy s "abcdefghij klmn"printf "s" s参考程序[题目1123字符串的输入与输出]下面程序实现从键盘读入字符串后输出到屏幕请填充必要的语句include "stdioh"void mainchar s[50]printf "Whats your name"gets s 由键盘读入字符串printf "Your name is "printf "s" s 打印字符串参考程序[题目1122字符串的合并]从键盘输入3 个字符串每个字符串以回车符做为结束标志将3 个字符串以输入先后顺序合并到字符串s 中请填空使用程序完整include "stdioh"include "stringh"mainchar s[100] ""char a [30]gets a strcat s a22gets a strcat s agets a strcat s a可以写多行代码printf "s" s[ 自测数据][键盘输入] [正确输出]123 123abc456abc456参考程序[题目1050寻找字符串]由键盘输入两个字符串假设第一个字符串必包含第二个字符串如第一个字符串为ABCDEF第二个为CDE则CDE 包含在ABCDEF 中现要求编程输出第二字符串在第一行字符串中出现的位置如果第二个字符串在第一个字符串中出现多次则以最前出现的为准[第一组自测数据] [第二组自测数据][键盘输入] [键盘输入]ABCDEFG ↙hellhello ↙DE ↙hello ↙[正确输出] [正确输出]4 5[提示]方法1建立双重循环外层循环变量指示第一个串的查找起始位置内层循环从起始位置开始判断第二个字符中是否出现在此处方法2 使用字符串函数strstr参考程序include "stdioh"mainint ijchar a [80] b[80]gets a gets bfor i 0a[i] \0ifor j 0b[j] \0jif a[ij] b[j] breakif b[j] \0 breakif a[i] \0 printf "d"i1else printf "Not Found"23实验9 函数的基本应用一实验目的1掌握定义函数的方法2 掌握函数实参与参的对应关系以及值传递的方式3 掌握函数的嵌套调用和递归调用的方法4 掌握全局变量和局部变量动态变量静态变量的概念和使用方法二实验内容[题目1059函数定义]下面是使用辗转相除法求最大公约数的程序请补充完整程序中函数的定义与调用include "stdioh"int f int m int nint rwhile r mn 0m nn rreturn nmainint a b nscanf "dd" a bprintf "d\n" f a b[题目1083编写函数计算阶乘]下面程序实现由键盘读入整数n计算并输出n 请补充完整计算阶乘的函数long fanc int along in 1for i 1i ai n nireturn nvoid mainint nscanf "d" n24printf "ld" fanc n[题目1124函数中的变量]写出下面程序的运行结果int f1 int xstatic int z 3y 0yzreturn xyzmainint a 1kfor k 0k 3k printf "4d"f1 a 程序运行结果为6 8 10*[题目1084编写递归调用函数实现十进制数转二进制数]下面程序实现由键盘输入一个正整数不大于100000000 输出其对应的二进制数原码表示请填空include "stdioh"void fun int iif i 1fun i2printf "d" i2mainint nscanf "d" nfun n25实验10 指针与结构体一实验目的1通过实验进一步掌握指针的概念会定义和使用指针变量2 能正确使用数组的指针和指向数组的指针变量3 能正确使用字符串的指针和指向字符中的指针变量4 掌握结构体类型变量的定义和使用二实验内容[题目1091交换两数由大到小输出]下面程序交换两数使两数由大到小输出请填空include "stdioh"void swap int p1 int p2int temptemp p1p1 p2p2 tempint mainint ab int papbscanf "dd" a bpa a pb bif a b swap pa pbprintf "d d\n"ab[题目1065数组中的指针]设有如下数组定义int a[3][4] 1357 9111315 17192123计算下面各项的值设数组a 的首地址为2000一个int 类型数占四个字节注意地址则输出地址变量则输出变量值要求一行一个答案不允许多余空行及空格1a[2][1] 2 a[1] 3 a 4 a 15 a 16 a 17 a[2] 18 a 1 19 a2 226参考程序include "stdioh"mainprintf "19\n"printf "2016\n"printf "2000\n"printf "2016\n"printf "2004\n"printf "2016\n"printf "2036\n"printf "2020\n"printf "21"[题目1092函数实现求字符串长度]下面程序以指针方式传递参数由函数实现求字符串长度请填空完成include "stdioh"include "stringh"int f char preturn strlen pint mainchar s[80]int iscanf "s" si f sprintf "d" i[题目1125定义结构体类型]要求定义一个名为student 的结构体类型其包含如下成员1字符数组name 最多可存放10 个字符2 字符变量sex用于记录性别3 整数类型变量num用于记录学号4 float 类型变量score 用于记录成绩并使下列代码完整定义结构体类型struct studentchar name[20]char sex。
C程序设计实验报告(完整版)
![C程序设计实验报告(完整版)](https://img.taocdn.com/s3/m/1c1b7e1e3169a4517723a37c.png)
工程学院实验报告课程名称: C程序设计课程代码:学院(直属系):年级/专业/班: 2010级汽电1班学生姓名:学号:实验总成绩:任课教师:开课学院: 工程学院实验中心名称: 交通实验中心第组西华大学实验报告西华大学实验报告(理工类)开课学院及实验室:汽车学院机房(5D-215)实验时间:年月日学生姓名学号实验成绩课程名称C程序设计课程代码实验项目名称C语言集成环境及程序初步项目代码指导教师项目学分实验课考勤实验工作表现实验报告1、实验目的2、实验设备、仪器及材料3、实验内容一般实验:3.1实验方案设计与选择(设计性、创新性实验需写该项内容)3.2实验原理及实验步骤(实验工作原理或实验的主要操作过程)3.3实验记录(核心代码及调试过程)注解:理工科实验需记录实验过程中的数据、图表、计算、现象观察等,实验过程中出现的问题;其它如在计算机上进行的编程、仿真性或模拟性实验需记录程序核心代码以及程序在调式过程中出现的问题及解决方法;记录程序执行的结果。
上机实验:3.1上机实验的内容及要求3.2算法设计思想与算法实现步骤3.3程序核心代码,程序调试过程中出现的问题及解决方法3.4 程序运行的结果4、实验总结4.1实验结果分析及问题讨论4.2实验总结心得体会注解:实验总结的内容根据不同学科和类型实验要求不一样,一般理工科类的实验需要对实验结果进行分析,并且对实验过程中问题进行讨论;在计算机上进行的编程、仿真性或模拟性实验需要对上机实践结果进行分析,上机的心得体会及改进意见。
其它实验应总结实验过程写出心得体会及改进意见。
第页1、实验目的(1) 熟悉C语言的集成环境,了解菜单的使用方法。
(2) 掌握C语言程序上机的编辑、编译、连接、运行的基本步骤。
(3) 了解C语言程序的结构。
2、实验设备、仪器及材料(1)硬件环境微型计算机(Intel x86系列CPU)一台(2)软件环境Windows98/2000/XP操作系统 VC6.0集成开发环境3、实验内容3.1上机实验的内容及要求(1) 熟悉VC中常用菜单项及对应快捷键的使用方法。
C语言程序设计实验一
![C语言程序设计实验一](https://img.taocdn.com/s3/m/ca0f3a5e312b3169a451a4df.png)
C 语言程序设计实验(一)[实验1] 设计简单菜单界面。
1.实验目的 设计如图所示菜单界面,并在VC++6.0环境中编辑、编译、连接和运行该程序。
2.实验要求 (1)程序中只包括主函数。
(2)整理出程序录入到运行过程中遇到的问题,并分析其原因。
3.实验目标(1)熟悉VC++6.0集成环境。
(2)了解C语言程序的编辑、编译、连接和运行过程。
4.实验指导在编辑窗口中输入如下源程序#include <stdio.h>#include <windows.h>main(){system("cls");printf(" |--------------------------------------------|\n");printf(" | Please choose: |\n");printf(" |---------------------------------------------|\n");printf(" | + -- addtion |\n");printf(" | - --subtraction |\n");printf(" | * --multiplication |\n");printf(" | / --division |\n");printf(" | E --Exit |\n");printf(" |----------------------------------------------|\n"); }[实验2] 数学函数的使用。
1.实验目的 编写程序,计算数学表达式 的值。
2.实验要求(1)x 的值从键盘输入。
(2)先分别计算表达式sinx 、ln(x+1)、 e x 、|cosx|的值,然后再计算整个表达式的值。
《C语言程序设计实验》指导书(实验1~6)
![《C语言程序设计实验》指导书(实验1~6)](https://img.taocdn.com/s3/m/2dac087ca45177232f60a299.png)
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。
C语言程序设计实验报告(实验大纲+过程)
![C语言程序设计实验报告(实验大纲+过程)](https://img.taocdn.com/s3/m/0dadd17e4431b90d6d85c722.png)
《C程序设计》实验教学大纲一、适用范围大纲适用信息管理专业本科教学使用。
二、课程名称C程序设计三、学时数与学分总学时:90 总学分:4实验学时:28 实验学分:1四、教学目的和基本要求目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。
基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。
上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。
注:带*的实验项目为选做实验项目六、教材、讲义及参考书《C程序设计题解与上机指导》谭浩强主编清华大学出版社七、实验成绩评定办法实验成绩=平时实验表现+实验报告。
实验成绩占总成绩的20%。
实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。
1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。
在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。
2、实验报告:学生实验后应按时完成实验报告。
八、实验教学大纲说明本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。
实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。
九、实验项目实验一C程序的运行环境和运行一个C程序的方法一、实验目的1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
C语言程序设计上机实验指导
![C语言程序设计上机实验指导](https://img.taocdn.com/s3/m/121202a9c77da26925c5b0e9.png)
上机实验一般应包括以下几个步骤:1.准备好上机所需的程序。
认真完成预习实验报告,报告应包括以下内容:①题目②相关知识点的表述③实验设计思路、流程图或语言描述④程序清单⑤实验中要验证的内容⑥实验计划手编程序应书写整齐,并经人工检查无误后才能上机,以提高上机效率。
对程序中自己有疑问的地方,应作出记号,以便在上机时给予注意。
初学者切忌不编程序或抄别人程序走上机,应从一开始就养成严谨的科学作风。
2.上机输入和调试自己所编的程序。
应该一人一组,独立上机。
上机过程中出现的问题,除了是系统的问题以外,一般应自己独立处理,不要轻易举手问教师。
尤其对“出错信息”,应善于自己分析判断。
这是学习调试程序的良好机会。
在使用键盘时,最好采用正确的指法击键,为今后正确使用键盘打下基础。
在程序调试通过后,打印输出程序清单和运行结果,在运行时要注意在输入不同数据时所得到的不同结果(例如解ax2+bx+c=0方程时,不同的a、b、c组合对应得到实根、复根的不同结果)。
此时应运行几次,分别检查在不同情况下程序是否正确。
3.上机结束后,应整理出实验报告,实验报告应包括以下内容:①题目②实验记录③程序清单(计算机打印出的程序清单)④运行结果(必须是上面程序清单所对应打印输出的结果)⑤实验分析⑥技术小结。
对运行情况所作的分析以及本次调试程序所取得的经验。
如果程序未能通过,应分析其原因。
实验一.数据类型、运算符和表达式一、目的要求:1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。
2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。
3.进一步熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容:1.编写程序验证各种数据类型、各种运算符。
2.输入并运行教材第三章例题3.1、例3.3、例3.4、例3.10,在上机前先用人工分析程序写出应得结果,上机后将二者对照。
C语言上机实验指导书
![C语言上机实验指导书](https://img.taocdn.com/s3/m/8734c1c1aa00b52acec7ca07.png)
C语言程序设计实验指导书实验一数据类型及简单程序设计一、实验目的1.掌握C语言数据类型,熟悉变量的定义及赋值方法。
2.掌握不同的类型数据之间赋值的规律。
3.学会使用C的运算符及表达式,特别是自加(++)自减(——)运算符的使用。
4.学会使用VC调试程序的方法。
二、实验内容和步骤问题1:输入并运行下面的程序main( ){char c1,c2;c1=’a’;c2=’b’;printf(“%c %c\n”,c1,c2);}①程序运行结果为?②增加一条语句:printf(“%d %d\n”,c1,c2);再运行程序,运行结果为?问题2:输入并运行下面的程序(转义字符使用)main( ){char c1,c2,c3,c4,c5;c1=’x’;c2=’y’;c3=’z’;c4=’\101’;c5=’\102’;printf(“x%c y%c\tz%c\n”,c1,c2,c3);printf(“\t\’%c\’ \”%c\”\n”,c4,c5);}在上机前先用人工分析程序,写出应得结果,上机后将二者对照。
问题3:输入并运行下面的程序main( ){int i,j,m,n;i=6;j=8;m=++i;n=j++;printf(“%d,%d,%d,%d\n”,i,j,m,n);}①运行程序,注意i、j、m、n个变量的值为?。
②将第4、5行改为:m=i++;n=++j;运行程序,注意i、j、m、n个变量的值为?。
③将程序改为:main( ){int m,n;m=6;n=8;printf(“%d,%d\n”,m++,n++);}运行程序,注意输出结果的变化为?。
④在③的基础上,将printf语句改为:printf(“%d,%d\n”,++m,++n);运行程序,注意输出结果的变化为?。
⑤再将printf语句改为:printf(“%d,%d,%d,%d \n”,m,n,m++,n++);运行程序,注意输出结果的变化为?。
C语言程序设计习题与上机实验(实验答案)
![C语言程序设计习题与上机实验(实验答案)](https://img.taocdn.com/s3/m/eb9f08563c1ec5da50e27090.png)
第三部分上机实验与指导(答案)实验三选择结构程序设计1、main(){float score;char grade;printf(“Please input a student’ score:”);scanf(“%f”, &score);while(score>100 || score<0){printf(“\nInput error, try again!”);scanf(“%f”, &score);}switch ( (int)(score/10) ){case 10:case 9: grade=’A’;break;case 8: grade=’B’;break;case 7: grade=’C’;break;case 6: grade=’D’;break;case 5:case 4:case 3:case 2:case 1:case 0: grade=’E’;}printf(“score is %5.1f, score grade is %c.\n”, score, grade);}2、#include <stdio.h>main( ){float x, y ;printf(“Please input x:”);scanf(“%f”, &x);if (x < 0)y = 0;else if (x < 10)y = x ;else if ( x < 20 )y = 10;else if ( x < 40)y = 0.5 * x + 20;else{ printf(“Input Error!”);exit (0);}printf (“y=%g”, y);}3、include <stdio.h>void main(void){int choice;/* 显示菜单及输入提示信息*/printf("----------------------------------------------- \n") ;printf(" The Menu of Data Management \n") ;printf(" 1. Input Data \n") ;printf(" 2. Output Data \n") ;printf(" 3. Insert Data \n") ;printf(" 4. Delete Data \n") ;printf(" 0. Quit System \n") ;printf("----------------------------------------------- \n") ;printf(" Please enter your choice:\n") ;/* 接收从键盘输入的数;*/scanf("%d", &choice);/* 根据输入数据显示不同信息*/switch (choice){case 1: printf("Input Data ") ; break;case 2: printf("Output Data ") ; break;case 3: printf("Insert Data ") ; break;case 4: printf("Delete Data ") ; break;case 0: printf("Thanks!"); break;default: printf("Input Error! ");exit(0);}}实验四循环结构程序设计1、#include <stdio.h>main( ){char ch;int i;for (i=0; i<10;i++);{ch = getchar();if (ch >= ‘a’ && ch <= ‘z’){ch = ch - 32;}putchar (ch);}}2、从键盘输入一个长整数,计算其各位数之和并输出。
C_上机实验(含作业)总的目的、要求和评分标准
![C_上机实验(含作业)总的目的、要求和评分标准](https://img.taocdn.com/s3/m/3e94d060f7ec4afe04a1df78.png)
上机实验(含作业)总的目的、要求和评分标准一、实验目的实验作为教学的一个重要环节,其目的在于更深入地理解和掌握课程教学中的有关基本概念,应用基本技术解决实际问题,从而进一步提高分析问题和解决问题的能力。
C程序设计课程实践性很强,即要求独立编写程序,学会独立上机调试程序。
学会独立上机调试程序。
也就是要善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。
计算机技术是实践性很强的技术,要求从事这一领域的人不仅能了解和熟悉有关理论和方法,还要求自己动手实践。
对程序设计来说,要求会编写程序并上机调试通过。
因此调试程序本身是程序设计课程的一个重要的内容和基本要求,应给予充分的重视。
调试程序的经验固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来积累,而且有些经验是只能“会意”难以“言传”。
因此,在实验时不但要达到通过程序完成每一次的实验任务,而且应当在已通过的程序基础上作进一步的修改、提高和完善。
甚至于“自设障碍”,即把正确的程序改为有错的(如用scanf函数为输入变量输入数据时,漏写“&”符号,double变量使用格式符“%f”;使数组下标出界;使整数溢出等等),观察和分析所出现的情况。
这样的学习才会有真正的收获。
实验目的可归纳如下:⒈验证自己已建立起来的概念或所编写的程序是否正确;⒉加深对课堂所学内容的理解和语法规则的记忆;⒊理解和掌握运用计算机高级语言进行编程的思想方法;⒋掌握常用算法的设计与应用实现;⒌熟悉Turbo C 2.0程序开发环境,掌握C程序常用的调试手段;⒍学会上机调试程序的方法,不断积累调试经验,提高排错能力;⒎使自己具有独立的应用编程和熟练的程序调试能力。
二、要求:⒈做好每一次上机前的准备以提高上机效率:①预先认真阅读相关实验内容,做到心中有明确的目的要求和任务,要有备而来;②按照实验内容规定的习题题目,事先在实验预习报告上编写好源程序及运行程序所需的典型数据,并经人工静态检查认为无误;手编程序应书写整齐,应在每个题目之间留出一定的空间,以备记录上机调试情况和运行结果等;对程序中自己有疑问的地方,应作出记号,以便上机时给以注意。
程序设计基础(C) 上机实验指导1 概述
![程序设计基础(C) 上机实验指导1 概述](https://img.taocdn.com/s3/m/a03d29e0bb4cf7ec4afed036.png)
程序中的操作语句,就是对算法的体现。
12
1.2.1 算法的特征
1
确定性
2
有效性
3
有限性
4
输入和输出
13
1.2.2 算法的复杂度
1
时间复杂度
2
空间复杂度
14
1.3 C语言的语句控制结构
1.3.1 流程图
起止框
输入输出框
判断框
处理框
流程线
连接点
注释框
15
1.3 C语言的语句控制结构
1.3.2 三种语句控制结构
4
考试方法: • 期末笔试卷面*70% + 平时成绩*30%(考勤、 实验) • 试卷:自2017年开始,由教务处领导从4位老 师(徐兵、姚明、项顺伯、符秋丽)出的8套 题里抽选。本人既非出卷老师,也非抽卷领导 ,只能尽力帮助大家复习和答疑,诸位好生自 强,好自为之,勉勉。
5
第一章
C语言 概述
1.1 什么是程序?
编译(Compile):将C语言源程序文件翻译为计算机能够识别的机 器代码。此过程将找出源程序中的语法错误 链接(Link):将编译阶段形成的目标文件与其他文件链接——形成 可执行文件( .EXE) 运行(Run):运行可执行文件。可跳过“链接”, Run会自动先Link
若运行结果与预期结果不同,则说明程序中存在逻辑错误。若发现
顺序结构
A
B
16
1.3 C语言的语句控制结构
1.3.2 三种语句控制结构
选择结构
Y
p
N B A
Y
p
N
A
17
1.3 C语言的语句控制结构
1.3.2 三种语句控制结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
恭喜!
22
17
LED灯闪烁实验 (1):程序编译验证
验证
18
LED灯闪烁实验 (1):下载程序-选择板子型号
Arduino/Genuino Uno
19
LED灯闪烁实验 (1):下载程序-选择串口
COM1(设备管理器查看)
20
LED灯闪烁实验 (1):下载程序-程序传入
上传
21
LED灯闪烁实验 (1):完成
3
C语法介绍
关键字:
语法符号:
运算符:
if if…else for
; {} //
= + * / % ==
<=
>=
&& ||
switch case
while do…while
/**/
!
++ -+= -= *= /=
常量:
HIGH | LOW表示IO口的电平,HIGH
为高(1),LOW为低(0);
INPUT | OUTPUT 表示数字 IO 口的方 向, INPUT 为输入 ( 高阻态 ) , OUTPUT 为输出(AVR提供5V电压40mA电流);
true | false,true为真(1), false为假(0) 。
return 0;
}
6
C语言结构
void setup(): 初始化发量,管脚模式,调用库
连续执行库函数内的语句。
7
C语言功能
数字I/O口:
pinMode(pin, mode):IO口输入输出模式定义函数,
pin表示为0~13,mode表示为INPUT或OUTPUT。
long random(min, max) :随机数函数,返回数据大 于等于min,小于max。
13
Arduino/Genuino Uno单片机开发板
模拟I/O口
USB电源口
数字I/O口
Reset键
14
LED灯闪烁实验 (1):电路连接
220电阻
15
LED灯闪烁实验 (1):程序界面
保存 打开 新建 上传 验证
digitalWrite(pin, value): IO口输出电平定义函数,pin 表示为0~13,value表示为HIGH或LOW。
int digitalRead(pin): IO口读输入电平定义函数,pin 表示为0~13, 可以获得引脚HIGH或LOW电压。
8
C语言功能
模拟I/O口:
16
LED灯闪烁实验 (1):程序编辑
int ledPin=8; //设定控制LED的数字IO脚 void setup() { pinMode(ledPin,OUTPUT); //设定数字IO口的模式, OUTPUT为输出 } void loop() { digitalWrite(ledPin,HIGH);// 设定PIN8脚为HIGH=5V左右 delay(1000); //设定延时时间,1000=1秒 digitalWrite(ledPin,LOW); // 设定PIN8脚为LOW=0V delay(1000); //设定延时时间,1000=1秒 }
int analogRead(pin):IO口读函数,pin表示为0~5。
analogWrite(pin, value):标注了PWM的数字IO口输出
函数, pin 表示为 3 , 5 , 6 , 9 , 10 , 11 , value 表示为
0~255(0~5V)。可用于电机PWM调速或音乐播放。
11
C语言功能
三角函数:
sin(rad) cos(rad) tan(rad)
12
C语言功能
随机函数:
randomSeed(seed) :随机数端口定义函数, seed 表示 读模拟口analogRead(pin)函数;
long random(max):随机数函数,返回数据大于等于 0,小于max;
Analog I/O模拟输入/输出端口0-5; 输入电压:USB接入或外部5V-9V直流电压; 输出电压:5V直流电压和3.3V直流电压。
特殊端口:
VIN端口(input voltage):外部电源输入端口,接正极;
AREF(Reference voltage for the analog inputs):模拟输 入的基准电压,使用analogReference()命令调用。
9
C语言功能
时间函数:
delay(ms):延时函数(单位ms)。
delayMicroseconds(s):延时函数(单位s) 。
10
C语言功能
数学函数: min(x, y):求最小值; max(x, y):求最大值; abs(x):计算绝对值; constrain(x, a, b):约束函数,下限a,上限b,x必须在 ab之间才能返回; map(value, fromLow, fromHigh, toLow, toHigh):约束 函数,value必须在fromLow与toLow,之间和fromHigh与 toHigh之间; pow(base, exponent):幂函数,base的exponent次方; sq(x):平方函数; sqrt(x):开根号函数。
单片机C程序设计 (C Programming for MCU)
Arduino单片机实验(一) LED闪烁
本章目标
Arduino单片机概述 C语法介绍 C语言结构 C语言功能 LED灯闪烁实验
2
Arduino单片机概述
性能描述:
Digital I/O数字输入/输出端口0-13;
5
C语言结构
int main(void) { init(); /*打开中断,初始化寄存器*/ #if defined(USBCON) USBDevice.attach();
#endif
setup(); for (;;) {
/*使用USB功能*/
loop();
if (serialEventRun) serialEventRun(); /*串口运行*/ }
break
continue return
!=
< >
4
go
C语法介绍
数据类型: boolean char byte int unsigned int long unsigned long float double string array void