欢迎来到天天文库
浏览记录
ID:47104544
大小:149.00 KB
页数:10页
时间:2019-08-03
《C语言实训指导第1讲》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
--------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班课程实训指导第1讲程序设计概述,数据类型1.1知识要点1、什么是程序设计?针对具体问题,通过设计计算机算法,并用特定计算机语言将算法表达出来,形成程序。可以分为以下三个步骤:Ø算法(★)Ø用C语言写成程序Ø运行程序2、什么是程序设计语言、程序?Ø程序设计语言:用来表达算法,具备特定语法规则的语句(指令)集合。如C、C#、PASCAL、VISUALBASIC、JAVA等等。Ø程序:解决特定问题所需要的语句集合。C程序的组成:ØC程序是由函数组成的,其中有且只能有1个主函数(main函数)Ø每个函数由函数首部、函数体组成。函数体由1对花括号括起,其中是各类语句ØC语句以;结束例:求任意两个整数的和。main(){intx,y,sum;scanf("%d%d",&x,&y);sum=x+y;printf("%d",sum);}3、算法及其描述u算法:为解决某个特定问题而采取的确定有效的步骤。算法的特性:有穷性、确定性、可行性、有0个或多个输入、有0个或多个输出u算法的描述:10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班Ø自然语言法Ø伪代码法Ø流程图表示法(掌握)l传统流程图lN-S图(★)Ø高级语言表示法(掌握)2、3种基本程序结构:u顺序结构u选择结构u循环结构3、C程序的编制和运行u程序设计语言根据级别由低到高分为3种:Ø机器语言----000111Ø汇编语言----addx(助记符)Ø高级语言----sum=x+y计算机能够直接执行的只有机器语言指令,而目前编程一般使用高级语言。所以,必然要把用高级语言写成的程序,转换成机器代码,才能执行。u程序的编制和运行流程:Ø分析问题,设计算法,绘制流程图Ø编辑高级语言程序,保存。称为源文件,其后缀为.cØ编译源文件,形成二进制文件。称为目标文件,其后缀为.objØ连接程序的所有目标文件和所需库文件,形成可执行的二进制文件。成为可执行文件,其后缀为.exeØ运行,调试,修改。重新保存、编译和连接分析问题设计算法源代码编辑运行编译调试修改调试修改调试修改调试修改调试修改调试修改调试修改调试修改分析问题设计算法调试修改调试修改分析问题设计算法调试修改调试修改源代码编辑分析问题设计算法调试修改调试修改编译源代码编辑分析问题设计算法调试修改调试修改运行编译源代码编辑分析问题设计算法调试修改调试修改运行编译源代码编辑分析问题设计算法调试修改调试修改调试修改调试修改调试修改调试修改调试修改调试修改调试修改调试修改调试修改4、数制u数制:数值的表示形式。Ø十进制:10Ø二进制:1010(计算机能执行的是二进制代码)Ø八进制:1210 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班Ø十六进制:Au数制中的2个基本概念:Ø数位l十进制:0123456789l二进制:01l八进制:01234567l十六进制:0123456789ABCDEFØ位权:每位所代表的权重,例如,十进制中11:个位的位权为1,十位的位权为10(★)数值=例如:1)各数值转化为十进制。Ø十进制数12=1*101+2*100Ø二进制数1010=1*23+0*22+1*21+0*20Ø八进制数12=1*81+2*80=10Ø十六进制数1A=1*161+A*160=262)10进制向2,8,16进制转换:除2/8/16取余,自下而上1326123210110进制13:二进制11017、标识符u什么是标识符?在C语言中,标识符是用来标识变量、函数名、数组名、自定义类型名(结构类型,共用类型和枚举类型)、自定义函数、标号和文件等有效字符序列。u标识符的命名规则:Ø标识符由字母、数字和下划线组成。Ø标识符以字母或下划线开头的字母、数字和下画线的组合。ØC语言字母大小写敏感。Ø用户标识符不能和C语言中的关键字相同。10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班ØTC中标识符的最大长度为32个字符。uC语言中,标识符可分为三类:Ø关键字标识符(1)数据类型关键字(12个);char,double,enum,float,int,long,short,signed,struct,union,unsigned,void。(2)控制语句关键字(12个);break,case,continue,default,do,else,for,goto,if,return,switch,while。(3)存储类型关键字(4个);auto,extern,register,static(4)其他关键字(4个);const,sizeof,typedef,volatile。Ø预定义标识符预定义标识符是指C语言提供的库函数名和预编译处理命令等Ø用户自定义标识符用户在编程时,要给一些变量、函数、数组、文件等命名,将这类由用户根据需要自己定义的标识符称为用户自定义标识符。8、C命名规范的两种命名规则(Pascal与Camel):uPascal大小写规则是什么?该规则约定在变量中使用的所有单词第一个字符都大写,并且不使用空格和符号。uCamel大小写规则是什么?该规则约定在变量中使用的第一个单词的首字母小写,其余单词的首字母都大写。uC命名约定有哪几条?(1)函数名推荐使用Pascal大小写规则(2)变量名推荐使用Camel大小写规则(3)常量推荐全大写9、常量u什么是常量?直接常量符号常量整型常量:12、0、-3实型常量:4.6、-1.23字符常量:‘a’、‘B’、‘1’字符串常量:”abc”#define标识符常量u用自己的话解释“#definePRICE30”语句的含义?用自己的话解释“#defineMAX(a,b)(a>b)?a:b”的含义?10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班u整型常量四种表示形式分类十进制整常数八进制整常数(0开头)十六进制整常数(0x开头)符号常量基本整型(2字节存储)长整型(在数值后面加“L”或“l”)。(4字节存储)u实型常量即实数的两种表现形式:Ø小数形式,例如,3.14159,9.8,-12.567Ø指数形式,3.05E+5,-1.2342e-12u什么是字符常量?用一对单引号括起来的单个字符,称为字符常量。例如:‘A’,‘6’,‘+’等。u什么是转义字符?C语言还允许使用一种特殊形式的字符常量,就是以反斜杠“”开头的转义字符,该形式将反斜杠后面的字符转变成另外的意义,因而称为转义字符。u什么是字符串常量?字符串常量是用一对双引号括起来的若干字符序列。如:“helloworld”、”china”。u字符串的存储形式?语言规定:在存储字符串常量时,由系统在字符串的末尾自动加一个 作为字符串的结束标志。如果有一个字符串为“CHINA”,则它在内存中的实际存储为:CHINA ‘6’与6的有什么不同?“a”与‘a’有什么不同?(分别从内存存储角度、变量类型两方面进行说明)。10、变量u变量三要素是什么?(1)变量名:每个变量都必须有一个名字,即变量名。(2)变量值:在程序运行过程中,通过变量名来引用变量的值。(3)变量的存储单元及其地址:变量值存储在内存中;不同类型的变量,占用的内存单元(字节)数不同。存储单元的首地址既变量的地址。u变量的命名规则是什么?10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班由字母、数字、下划线组成,以字母或下划线开头,不能与关键字相同,习惯上用camel命名法。u整型变量变量类型类型标识符内存中占用空间大小(字节)基本整型int2无符号基本整型unsigned[int]2短整型short或short[int]2无符号短整型unsignedshort[int]2长整型long[int]4无符号长整型unsignedlong[int]4u实型变量变量类型类型标识符占用的字节数(字节)单精度型float4双精度型double8u字符变量的存储形式?存储到一个字符变量中的,实际上是将该字符的ASCII码值(无符号正数)存储到内存单元中。32+‘a’相当于32+97(‘a’的ASCII码值是97)1.2基础技能训练1、根据三种程序结构的N-S流程图完成以下3个任务。1)顺序结构流程图语句1…语句22)选择结构流程图10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班语句1语句2条件真假1)循环结构流程图l当型循环,先判断,后执行当条件语句l直到型循环,先执行,后判断直到条件语句任务1:画出”求任意两个整数的和”的算法流程图。任务2:画出“求3个整数中的最大数”的算法流程图。任务3:画出“求1+2+…+100”的算法流程图2、写出各数制间的转换任务1:写出十进制数23转化为二进制数,八进制数,十六进制数。任务2:写出二进制数1101转化为十进制数,八进制数,十六进制数。3、将”求任意两个整数的和”的程序,编码,调试,运行并查看结果。10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班4、#definePRICE30Main(){intnum,total;num=10;total=num*PRICE;printf(“%d”,total);-------问题}问题:total变量的值是()?5、下列程序的输出结果是什么?(转义字符)voidmain(intargc,char*argv[]){charc1='a';charc2=' ';printf("%dt",c1);printf("%d ",c2);}6、下列程序的输出结果是什么?(转义字符)voidmain(intargc,char*argv[]){charcType='6';intiNumber=6;printf("%d",cType);printf(" ");printf("%d",iNumber);printf(" 12");printf("你猜对了吗?");printf("x0A");}7、下列程序的输出结果是什么?(单步调试)voidmain(intargc,char*argv[]){charc1='5';inti1=5;inti2=6;10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班intiResult=0;iResult=c1+i2;iResult=i1+i2;printf("%d ",iResult);}8、程序题:用宏实现求2数最大#include#defineMAX(a,b)(a>b)?a:bVoidmain(){intx,y,max;scanf(“%d%d”,&x,&y);max=MAX(x,y);printf(“max=%d ”,max);}9、画出求圆的面积的程序流程图并编写程序实现。要求:求半径为5的圆的面积。1.3拓展训练掌握以下技能:1)VisualC++的编程、编译及运行环境2)查看帮助文件和课程网站资料3)根据需要设计变量、常量的数据类型。4)学习程序调试的技巧,本节重点掌握单步调试方法。1.4作业及要求1、预习作业:第2章2、作业1:(作业本)1)将10进制数120,分别转化为2,8,16进制形式,并验证其正确性。(30分,10分/个)2)分别用传统方式和N-S方式,画出“1*3*5*…*99”的算法流程图。(30分,15分/个)3)有许多教科书上写:程序=数据结构+算法。请查阅相关资料并结合课堂讲解,对以上公式进行合理解释。要求超过100字。(20分)4)查阅关于“项目需求分析”的概念,针对课程驱动项目—10 --------------------------------------------------------课程实训指导-------------------------------------------------------------课程名称:程序设计教师姓名:屠莉教学对象:10软件3班学生成绩管理系统,写出需求分析报告第1版,要求不少于200字。(20分)1)拓展题:画出“输出1到100之间的所有偶数”的算法流程图,可以使用任何一种流程图形式。3、作业21)字符串”tfn t123”的长度与所占内存空间大小分别是?(25分)2)#defineN5#defineY(n)((N+2)*n)则执行语句z=3*(N+Y(3+1));后z的值?(25分)3)查阅ASCII码表,写出将字符大写字母转换为字符小写字母的公式。(25分)4)设计以下程序的数据结构:求圆的面积和周长。(25分)5)拓展题:查阅相关资料说明十进制基本整型数据38和-38在计算机的内部表示。10
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处