您好,欢迎访问三七文档
C语言程序设计韩玉艳yuyanhan1023@163.com第一章程序设计的基本概念6课时目标•了解C程序的一些基本概念•了解程序、算法和流程图的概念•了解C程序的三大基本结构•掌握C程序的编译和运行过程•使用VisualC++6.0创建C程序1.1程序和程序设计一、基本概念1.程序(program):为解决某一问题而设计的一系列指令,能被计算机识别和执行。2.程序设计语言:人与计算机打交道时交流信息的一类媒介和工具,由语句(statement)组成。•4.机器语言:(machinelanguage)计算机直接使用的二进制形式的程序语言或机器代码。•5.高级语言:(high-levellanguage)是易为人们所理解的完全符号化的程序设计语言。•6.源程序:用户用高级语言编写的程序称为,C源程序文件名字后缀一般必须为“.c“或.cpp。•7.目标程序:由二进制代码组成的程序•8.编译程序:具有翻译功能的软件•9.连接(linker):将目标模块和其它一些必要的功能模块装配在一起,生成可执行文件,执行程序文件后缀为.exe。高级语言的编译和执行高级编程语言中的指令哎呀…我理解不了编译程序/解释程序可以…我现在可以理解了高级语言由编译/解释程序转换为机器代码这种机器代码计算机可以理解计算机硬件高级语言程序编译程序/解释程序(编译器/解释器)机器代码编译和执行C程序C源程序目标文件可执行程序C语言函数库编译连接源程序:是用户创建的文件,以“.c”为文件扩展名保存目标文件:是编译器的输出结果。这类文件的常见扩展名为.obj”01形式头文件:含有函数的声明和预处理语句,用于帮助访问外部定义的函数。头文件的扩展名为“.h”。可执行文件:是连接器的输出结果。可执行文件的扩展名为“.exe”。0112)下列叙述中错误的是A)计算机不能直接执行用C语言编写的源程序B)C程序经C编译后,生成后缀为.obj的文件是一个二进制文件C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件D)后缀为.obj和.exe的二进制文件都可以直接运行算法计算长方形的面积问题:1.接收用户输入的长方形长度和宽度两个值;2.判断长度和宽度的值是否大于零;3.如果大于零,将长度和宽度两个值相乘得到面积,否则显示输入错误;4.显示面积。算法算法:解决问题的具体方法和步骤•算法特性:•有穷性。一个算法包含的操作步骤应该是有限的。•确定性。算法每一条指令必须有确定的定义,不能有二义性,对于相同的输入必须有相同的执行结果。•可行性。算法中的操作,可以通过执行有限次后实现。•有零个或多个输入•有一个或多个输出算法可以用各种描述方法来进行描述,最常用的是伪代码和流程图流程图(传统与N-S)•流程图是算法的一种图形化表示方式。•它使用一组预定义的符号来说明如何执行特定任务。•传统的机构化流程图表示:开始/结束处理输入/输出判断框连接点流程线N-S:流程图完全去掉了流程线,算法的每一步都用一个矩形框来描述,把一个个矩形框按执行顺序连接起来就是一个完整的算法描述。二、三大基本结构1.顺序结构:(第三章)语句1语句2语句32.选择结构判断表达式满足语句1语句2不满足3.循环结构判断表达式循环体满足不满足第四章内容第五章内容第二章C程序设计的初步知识(一)回顾问:1、C的源程序是后缀是什么?2、目标文件的后缀是什么?3、程序的三大结构是什么?目标•理解C程序的构成与格式•理解变量和常量的含义•熟悉基本数据类型-int、char、float和double演示下面例题compile(编译)build(连接)execute(执行)#includestdio.hvoidmain(){inta,b,c;a=4;b=10;c=a+b;printf(%d\n,c);}2.1C语言的基本结构#includestdio.hvoidmain(){doublea,b,area;/*定义语句*/a=1.2;b=3.6;area=a*b;printf(“a=%f,b=%f,area=%f\n“,a,b,area);}以#开始的语句称为预处理器指令#include语句不是C程序中的语句,并且不是必需的,但是,如果程序有该语句,就必须将它放在程序的开始处.以.h为后缀的文件被称为头文件,可以是C程序中现成的标准库文件,也可以是自定义的库文件。main()函数是C程序处理的起点,一个程序有且只有一个主函数在函数定义的后面有一个左大括号,即{它表示函数的开始,后面是函数的主体大括号也可以用于将语句块括起来在函数定义的结尾处有一个右大括号,即}函数主体中的每个语句都以分号结束。C程序中的注释#includestdio.hvoidmain(){printf(HelloWorld\n);}//此程序用来打印HelloWorld单行注释C程序可以包含注释,以便向读者作一般说明编译器并不处理这些注释/*此程序由×××编写*用来打印输出“HelloWorld”*/多行注释/**************************作者:创建日期:描述:……***************************/#include头文件voidmain(){……}在程序中添加注释是一个好的编程习惯,可以增强程序的可读性。※说明:1.必须使用main作为主函数名,程序是从主函数开始执行,具有唯一性.2.函数体用左花括号“{”开始,用右花括号结束“}”3.用“;”作为语句结束的标志。分号是C语句的一部分,不是语句之间的分隔符。4.注释部分:⑴必须用/*和*/括起来⑵必须成对出现,⑶”/“和”*“之间不能有空格⑷注释可以出现在程序的任何地方⑸注释部分对程序运行不起作用⑹在注释之间不可以再嵌套/**/5,预处理器指理必须以”#“开头,但不能加分号2.2标识符、常量、变量什么是标识符标识符:在C语言中,有许多符号的命名,如变量名、函数名、数组名等,都必须遵守一定的规则,按此规则命名的符号称为标识符。2.2.1标识符的命名规则(必考):–标识符名可以由字母、数字和_(下划线)组合而成areaa_bt1NO.1–标识符必须以字母或_(下划线)开头4a_aa4–C语言区分大小写,因此标识符price与标识符PRICE是两个不同的标识符1.分类:⑴关键字:c语言规定了一批标识符,他们在c语言中代表着固定的含义,不能另做它用(附录4)autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatorgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile⑵预定义标识符:c语言语法允许用户把这类标识符另做它用,但是这些标识符将失去系统规定的原意。比如:printfdefine⑶用户标识符:由用户根据需要定义的标识符称为用户标识符(13)以下C语言用户标识符中,不合法的是A)_1B)AaBcC)a_bD)a—b2.2.2、常量:常量是在程序中不能被改变的量1.分类:整型常量3实型常量3.0字符常量a字符串常量world2.符号常量:用一个符号名来代表一个常量。#include“stdio.h”#definePI3.14159/*定义符号名PI3.14159*/main(){floatr;doubles;r=5.0;s=PI*r*r;printf(“s=%f\n”,s);}2.2.3、变量1.定义:在程序的运行过程中,值可以改变的量。一个变量实质上代表了内存的某个存储单元※2.说明:(1)每个变量有一个名字作为标识,它是属于用户标识符(2)变量必须先定义后使用floata;intb;a2.3整型数据(int)一、整型常量整数的表示(1)十进制表示:用一串连续的数字表示十进制数。例:345316840-23456※只有十进制可以是负数。(2)八进制表示:以数字0(不是o)开头的一个连续数字序列,序列中只能有0-7这八个数字。例:045-07806745l而019、423是非法的八进制数。(3)十六进制表示:以0X或0x开头的连续数字和字母序列,序列中只能有0-9、A-F和a-f这些数字和字母,字母a、b、c、d、e、f分别对应数字10、11、12、13、14、15,大小写均可。二、整型变量可以分为基本型、短整型、长整型和无符号型四种名称全称类型说明符缩写类型说明符字节范围整型intint4-2,147,483,648至2,147,483,647无符号整型unsignedintunsigned40至4,294,967,295短整型shortintshort2-32768至+32767无符号短整型unsignedshortintunsignedshort20至65,535长整型longintlong4-2,147,483,648至2,147,483,647无符号长整型unsignedlongintunsignedlong40至4,294,967,295定义和使用整型变量:•定义变量:(先定义后使用)类型变量名;intk;使用:k=2;•定义时初始化变量:(定义的同时赋初值)类型变量名=值;intk=2;在同一个定义语句中也可以同时定义多个变量,变量之间用逗号隔开。inti,j,k;三、整数在内存中的存储形式(包括一下各种进制的转换)位(bite):计算机里最小的存储单元字节(byte):8个二进制组成一个字节字(word):若干个字节组成一个字16个二进制位2个字节最高位最低位0表示正数1表示负数一、正整数以原码形式存储例正整数5的二进制代码:0000000000000101二、负整数1.以补码形式存储反码:1和0互换补码:对原码取反加1(符号位不参加取反)例负整数-5的二进制代码:11111111111110112.补码形式存储的二进制转换成负整数(1)对补码取反(2)转换成十进制(3)根据最高位加负号(4)对所求数减11111111111111011-5的补码1000000000000100取反转换成十进制-4减1-5三、无符号整数不在是符号位参与数值的大小中2.4实型数据一、实型常量(又称实数或浮点数)1.小数形式:由数字和小数点组成,必须有小数点。(0可以省略)例:4.230.15.154.0.02.指数形式:以幂的形式表示,以字母e或E后跟一个以10为底的幂数。字母e或E前后必须要有数字,且后面的指数必须为整数,字母e或E的前后及数字之间不得有空格(实型变量也遵守这个规则)。例:e4、.5e3.6、.e5、e都不合法二、实型变量1.单精度:关键字为float2.双精度:关键字为double定义形式:定义形式:floata,b,c;doublea,b,c;注:(1)占四个字节32位注:(1)占八个字节64位(2)7位有效数字字(2)15~16位有效数※说明:1.在内存中,实数一律以指数形式存放2.在内存中,整数可以精确存放,实型数据存在误差3.实型常量不分float和double一个实型常量可以赋给一个float型或者double型变量4.定义变量的同时可以赋初值5.实型常量的整数部分为0时可以省略,如下形式是允许的:.57,.0075e2,-.125,-.175E-2三、课堂练习1.下面四个选项中,那一组全是不合法浮点数的选项是A160.B123C-.18D-e30.122e4.2123e4.234e3.e50.01e32.下面四个选项中,均是合法浮点数的选项是A+1e+1B-.60C123eD-e35e-9.412e-41.2e-.4.8e-43e2-8e5+2e-15.e-0选择题:1、以下选项中正确的变量名是a)a*123b)_yyc)Acdd)yy&2、以下那个是八进制的表示方法?a)0Xfb)80c)080d)0763、以下那些是正确的实型常量?a)0.73e2b)0.72e0.2c)-65.55
本文标题:计算机二级c语言
链接地址:https://www.777doc.com/doc-3448168 .html