1、2016“”C程序设计(Programming in C )“”这次课的主要内容C程序的基本结构C语言的基本符号C语言的基本数据类型“”“”一个简单的C C程序#include int main(void) int inches, feet, fathoms; printf(input fathoms:); scanf(“%d“,&fathoms); feet = 6 * fathoms; inches = 12 * feet; printf(Wreck of the Hesperus:n); printf(Its depth at sea in defferent units:n); pri
2、ntf( %d fathomsn, fathoms); printf( %d feetn, feet); printf( %d inchesn, inches); return 0;英寻英寻英寸的换算:英寸的换算:1)把英寻数赋给一个变量;把英寻数赋给一个变量;2)把英寻转换为英尺,并存到把英寻转换为英尺,并存到一个变量中;一个变量中;3)把英尺转换为英寸,并存到把英尺转换为英寸,并存到一个变量中;一个变量中;4)把不同单位的测量值整齐地把不同单位的测量值整齐地显示在屏幕上。显示在屏幕上。“”函数是C C程序的基本模块在上面的例子中,有一个名称为在上面的例子中,有一个名称为“main”的函数,
3、每一个的函数,每一个独立运行的独立运行的C程序有且仅有一个程序有且仅有一个mian函数,函数,C程序设计中的程序设计中的一部分主要工作就是编写函数。一部分主要工作就是编写函数。我们将从一个函数的结构出发理解我们将从一个函数的结构出发理解C程序中的基本要素。程序中的基本要素。函数内有对数据的声明和对数据的运算,例如函数内有对数据的声明和对数据的运算,例如声明部分:声明部分:三个值将变化三个值将变化的整数的整数运算部分:运算部分:接收一个整数;接收一个整数;用乘运算进行用乘运算进行单位换算单位换算“”常量和变量是程序中的基本元素常量和变量常量和变量(constants and variables)
4、 常量常量(constants)(constants) :在程序的运行过程中值保持不变。例如,下面程序中的:在程序的运行过程中值保持不变。例如,下面程序中的“6”6”和和“12”12” 变量变量(variables)(variables) :在程序的运行过程中值可以改变。例如,下面程序中的:在程序的运行过程中值可以改变。例如,下面程序中的“fathoms”fathoms”、 “ “feet”feet”、 “ “inches”inches”。“”可以给程序中的常量命名若一个数据元素的值在程序的运行过程中保持不变若一个数据元素的值在程序的运行过程中保持不变(是常量是常量),则可以用一个符号为其命名
5、。则可以用一个符号为其命名。 例如,将下面程序中的例如,将下面程序中的6 6命名为命名为“VALUE1”VALUE1”,1212命名为命名为“VALUE2”VALUE2”常量定义常量定义符号常量符号常量字面常量字面常量或字面值或字面值“”程序中的符号形式程序中出现的所有符号都必须有含义,有些符号的形式和含程序中出现的所有符号都必须有含义,有些符号的形式和含义是语言设计者规定的,例如下面例子中的义是语言设计者规定的,例如下面例子中的“include”、 “define”、 “int”等。等。“”用在程序中的基本字符和符号C语言程序中的基本字符如下语言程序中的基本字符如下“”C C语言的关键字下面
6、是下面是C语言中已经有定义的标识符,程序员为某种对象命名时不能使用语言中已经有定义的标识符,程序员为某种对象命名时不能使用“”变量(Variable)(Variable)一个变量是一个用于存放值一个变量是一个用于存放值(value)的占位符的占位符(placeholder)。内存的存储空间可看作是若干个从内存的存储空间可看作是若干个从0开始编号的盒子。例如,开始编号的盒子。例如,若内存为若内存为128MB,则有,则有12810241024个盒子个盒子(每个盒子可每个盒子可以存储一个以存储一个8位的二进制数位的二进制数)。)。123.k内存内存0.存储单元存储单元504inches变量名变量名变
7、量值变量值“”“”C语言的基本数据类型C语言的基本数据类型有 整数类型整数类型 实数类型实数类型 字符类型字符类型l对于基本数据类型,我们将从以下三个方面介绍其内容对于基本数据类型,我们将从以下三个方面介绍其内容每种类型数据的表示形式每种类型数据的表示形式数据的取值范围数据的取值范围数据的运算数据的运算“”整数类型整数类型数据的表示形式:整数类型数据的表示形式: 十进制、八进制、十六进制十进制、八进制、十六进制 常量、变量常量、变量0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0“”整型变量基本的整数类型变量用基本的
8、整数类型变量用“int”进行声明进行声明 int feet, inches, i;int feet, inches, i;unsigned int feet, inches, i;unsigned long m;“”整数类型及取值范围ANSIANSI标准定义的整数类型标准定义的整数类型类型符号类型符号 比特数比特数取值范围取值范围-32768 -215 215-1signed intsigned int16160 0 216-1unsigned intunsigned int1616-32768 -215 215-1signed short intsigned short int16160 0
9、 216-1unsigned short intunsigned short int1616long intlong int32320 0 232-1unsigned long intunsigned long int3232-2147483648 2147483647 -231 231-1“”整型数据的运算针对整数类型数据的运算有针对整数类型数据的运算有 算术运算:加算术运算:加( (+ +) )、减、减( (- -) ) 、乘、乘( (* *) ) 、除、除( (/ /) ) 、整除取余、整除取余( (% %);); 关系运算:等于关系运算:等于( (=) )、不等于、不等于( (!=!=
10、) )、大于、大于( ( ) ) 、大于或等于、大于或等于( (=) ) 、小于、小于( ( ) )、小、小于或等于于或等于( (=) ) 函数函数“”实数类型实数类型数据的表示形式实数类型数据的表示形式: 十进制小数表示形式,例如十进制小数表示形式,例如3.143.14、9.89.8 指数表示形式指数表示形式: : EE ,其中,其中E E可用可用e e代替,例如代替,例如3.0E-53.0E-5实数类型实数类型类型符号类型符号 比特数比特数取值范围取值范围-3.410-38 3.41038 floatfloat3232-1.710-308 .710308 doubledouble6464-
11、1.210-4932 .2104932long doublelong double128128有效数字有效数字6 715 1819“”实型数据的舍入误差在计算机中,实数运算中有误差在计算机中,实数运算中有误差 实数的表示采用近似值方式实数的表示采用近似值方式 例如,在例如,在floatfloat类型中,类型中,12345678848.0+2012345678848.0+20 1.0 / 3 1.0 / 3 * * 3 3的运算结果取整数为的运算结果取整数为0 0TC2.0“”实数的有效数据#include main( ) float x1, y1; double x2, y2; x1 = 11
12、1111.111; y1 = 222222.222; printf( x1 = %f n, x1); printf( y1 = %f n, y1); printf( x1+y1 = %fnn, x1 + y1); x2 = 111111.111; y2 = 222222.222; printf( x2 = %f n, x2); printf( y2 = %f n, y2); printf( x2+y2 = %fn, x2 + y2);运行结果:运行结果: x1 = 111111.109375 y1 = 222222.218750 x1 + y1 = 333333.328125 x2 = 111
13、111.111000 y2 = 222222.222000 x2 + y2 = 333333.333000“”实型数据的运算针对实数类型数据的运算有针对实数类型数据的运算有 算术运算:加算术运算:加( (+ +) )、减、减( (- -) ) 、乘、乘( (* *) ) 、除、除( (/ /);); 关系运算:等于关系运算:等于( (=) )、不等于、不等于( (!=!=) )、大于、大于( ( ) ) 、大于或等于、大于或等于( (=) ) 、小于、小于( ( ) )、小、小于或等于于或等于( (=) ) 函数函数“”字符类型字符类型数据的表示形式:字符类型数据的表示形式: 常量,用单撇号括
14、起来,例如:常量,用单撇号括起来,例如: a a , D D , ? ? 变量,变量,char c1, c2;char c1, c2;#include main() int i; for(i = 0;i 128; i+) if (i % 16 = 0) printf(n); printf(%c ,i); printf(n);“”字符类型C语言中允许将字符类型数据看作整数类型语言中允许将字符类型数据看作整数类型 字符类型数据既可以以字符形式输出,也可以以整数形式输出。字符类型数据既可以以字符形式输出,也可以以整数形式输出。 字符数据可以进行算术运算字符数据可以进行算术运算#include mai
15、n() char ch1,ch2; ch1=a; ch2=b; printf(ch1=%c,ch2=%cn,ch1,ch2); printf(ch1=%d,ch2=%dn,ch1,ch2);程序运行结果:程序运行结果: ch1=a,ch2=b ch1=97,ch2=98“”字符串常量像像abc这样的在双引号内的字符序列是串常量这样的在双引号内的字符序列是串常量, 例如,例如, How do you do.How do you do. 、 Good morning.Good morning. 等,都是字符串常量,其长度等,都是字符串常量,其长度分别为分别为1414和和13(13(空格也是一个字符
16、空格也是一个字符) )。0chinac ch hi in na a00“”特殊字符的表示常用的转义字符常用的转义字符n字符形式字符形式含义含义ASCII编码编码换行,将当前位置移到下一行开头换行,将当前位置移到下一行开头10t水平制表,跳到下一个水平制表,跳到下一个tab位置位置9b退格,将当前位置移到前一列退格,将当前位置移到前一列8r回车,将当前位置移到本行开头回车,将当前位置移到本行开头13单撇号字符单撇号字符39双撇号字符双撇号字符34“” 0“”本次课程的内容提要C程序由函数构成,对数据的声明和对数据的运算构成了函数标识符用于为程序中的对象命名,标识符的形式为:以字母和下划线起头的字母、数字字符串。常量是程序运行中不改变值的数据变量用标识符命名,变量名代表程序运行时的一个存储空间,因此变量具有两个属性:地址和值。读取变量的值不会改变其值,为变量赋新值将覆盖其原来的值。程序中的所有数据都有类型。C语言的基本数据类型有:整型、实型、字符型,对每种数据类型要掌握其表示形式、取值范围和运算方法。“”下次课的主要内容C程序中的运算符号和表达式输入和输出处理“”作业1.1.教材教材Page65 3.4Page65 3.42.2.教材教材Page66 3.9Page66 3.9请复习和预习教材第三章的内容请复习和预习教材第三章的内容