C语言程序设计 清华大学■ 郑莉安颖莲 第二讲 C语言基础 参考书:《C程序设计》第一、二、三、四章 Page 1
C语言程序设计 清华大学 郑莉 安颖莲 第二讲 C语言基础 参考书:《C程序设计》第一、二、三、四章 Page 1
C语言程序设计 清华大学 郑莉安颖莲 本讲主要内容 C语言的程序格式及结构特点 数据类型 ·算术运算符与算术表达式 赋值运算符和赋值表达式 ·逗号运算和逗号表达式 ·逻辑运算与逻辑表达式 ·赋值语句 数据输入、输出 简单程序举例
C语言程序设计 清华大学 郑莉 安颖莲 本讲主要内容 • C语言的程序格式及结构特点 • 数据类型 • 算术运算符与算术表达式 • 赋值运算符和赋值表达式 • 逗号运算和逗号表达式 • 逻辑运算与逻辑表达式 • 赋值语句 • 数据输入、输出 • 简单程序举例
C语言程序设计 清华大学 郑莉安颖莲 C语言的程序格式 实例 程序格式 main() - 关键字及编译预处理命令用小 { 写字母书写。 int x,y,z; -由语句组成。 x=2; 以分号(:)作为语句的结束符, y=3; (不是分隔符)。 z=xty; 没有行的概念,可任意书写。 printf ("x+y-%d n",z); - 用大括号对}表示程序的层次 范围,一个完整的程序模块要 用一对{}包括。 不能在变量名、函数名、关键 字中插入空格和空行。3
C语言程序设计 清华大学 郑莉 安颖莲 C语言的程序格式 • 实例 main() { int x, y, z; x=2; y=3; z=x+y; printf("x+y=%d\n",z); } • 程序格式 - 关键字及编译预处理命令用小 写字母书写。 - 由语句组成。 - 以分号(;)作为语句的结束符, (不是分隔符)。 - 没有行的概念,可任意书写。 - 用大括号对{}表示程序的层次 范围,一个完整的程序模块要 用一对{}包括。 - 不能在变量名、函数名、关键 字中插入空格和空行。 Page 3
C语言程序设计 清华大学 郑莉安颖莲 C语言的结构特点 。 结构特点 ·函数的一般形式 只有一个名字为 函数名(参数) main的函数,称 参数说明; 主函数。 - 除main函数外,其 数据说明部分; 它函数都是在执行 执行语句部分; main函数时被调用 执行的。 Page 4
C语言程序设计 清华大学 郑莉 安颖莲 C语言的结构特点 • 结构特点 - 只有一个名字为 main的函数,称 主函数。 - 除main函数外,其 它函数都是在执行 main函数时被调用 执行的。 • 函数的一般形式 函数名(参数) 参数说明; { 数据说明部分; 执行语句部分; } Page 4
C语言程序设计 清华大学 郑莉安颖莲 数据类型 常量与变量 整型数据 实型数据 字符型数据 给变量赋初值 不同类型的混合运算 Page 5
C语言程序设计 清华大学 郑莉 安颖莲 数据类型 • 常量与变量 • 整型数据 • 实型数据 • 字符型数据 • 给变量赋初值 • 不同类型的混合运算 Page 5
C语言程序设计 清华大学 郑莉安颖莲 数据类型 常量与变量 #define PRICE 30 main() { 符号常量 变量先定 int num,total; 名字常用大写 义后使用 float v,r,h; num=10; 常量 total=num*PRICE; 变量 变量名: printf (total=%d,t tatal); 以字母或下划线 r=2.5; 开头,由数字、 h=3.2; 字母、下划线构 v=3.14159*r*r*h; 成。最多31个字 printf (v=%f\n,v); 符,多余不识别. 般小写。 Page6
C语言程序设计 清华大学 郑莉 安颖莲 数据类型 ——常量与变量 #define PRICE 30 main() { int num,total; float v ,r,h; num=10; total=num*PRICE; printf(total=%d,tatal); r=2.5; h=3.2; v=3.14159*r*r*h; printf(v=%f\n,v); } 常量 变量名: 以字母或下划线 开头,由数字、 字母、下划线构 成。最多31个字 符,多余不识别. 一般小写。 变量 变量先定 义后使用 符号常量 名字常用大写 Page 6
C语言程序设计 情化大学 凯渐安骊蔬 数据类型 根据值的大小 整型数据 自动确定类型。 无unsigined型, #define PRICE 30 但非负数可对 整型变量定义 main() unsigned变量赋 { 值。 int num,total; 十进制:123, 456 整型变量 float v,r,h; num=10;← 整型常量 八进制:0开头 1nt、 unsigned int 十六进制:Ox开头 total=num*PRICE; 2字节 printf (total=%d,tatal) short r=2.5; unsigned short h=3.2; 2字节 v=3.14159*r*r*h; long printf (v=%f\n,v); unsigned long 4字节 Page 7
C语言程序设计 清华大学 郑莉 安颖莲 #define PRICE 30 main() { int num,total; float v ,r,h; num=10; total=num*PRICE; printf(total=%d,tatal); r=2.5; h=3.2; v=3.14159*r*r*h; printf(v=%f\n,v); } 数据类型 ——整型数据 整型常量 •根据值的大小 自动确定类型。 •无unsigined型, 但非负数可对 unsigned变量赋 值。 •十进制:123, -456 八进制:0开头 int、unsigned int 十六进制:0x开头 2字节 short unsigned short 2字节 long unsigned long 4字节 整型变量 整型变量定义 Page 7
C语言程序设计 清华大学 郑莉安颖莲 数据类型 整型数据的定义及取值范围 类型 定义符位数 数值范围 I/0格式符 基本 int 16位 -3276832767 %d 短整 short 16 同上 %hd 长整 long 32 -231(231-1) %1d 无符号 unsigned [int] 16 0~65535 %u unsigned short 16 同上 %hu unsigned long 32 0~(232-1) %1u
C语言程序设计 清华大学 郑莉 安颖莲 数据类型 ——整型数据的定义及取值范围 类型 定义符 位数 数值范围 I/O格式符 基本 int 16位 -32768~32767 %d 短整 short 16 同上 %hd 长整 long 32 -231~(231-1) %ld 无符号 unsigned [int] 16 0~65535 %u unsigned short 16 同上 %hu unsigned long 32 0~(232-1) %lu
C语言程序设计 清华大学 郑莉安颖莲 数据类型 实型数据 #define PRICE 30 main() ·十进制形式 ·指数形式:123E3 int num,total; (123×103)) 实型变量 float v,r,h; ·不区分单、双精 num-10; 度,赋值时截取有 total=num*PRICE; 效长度。如: printf (total=%d,tatal); float a float 4字节 r=2.5; a-111111.111; 3.4×10±38 h=3.2; 实型常量 7位有效数字 7位有效数字 v=3.14159*r*r*h; double8字节 printf (v=%f\n,v); 1.7×10±308 15位有效数字 Page 9
C语言程序设计 清华大学 郑莉 安颖莲 数据类型 ——实型数据 #define PRICE 30 main() { int num,total; float v ,r,h; num=10; total=num*PRICE; printf(total=%d,tatal); r=2.5; h=3.2; v=3.14159*r*r*h; printf(v=%f\n,v); } •十进制形式 •指数形式:123E3 (123×103 ) •不区分单、双精 度,赋值时截取有 效长度。如: float a; a=111111.111; 实型常量 7位有效数字 float 4字节 3.4×10±38 7位有效数字 double 8字节 1.7×10±308 15位有效数字 实 型 变 量 Page 9
C语言程序设计 清华大学 郑莉安颖莲 数据类型 字芯型数据 字符常量 -单引号括起来的一个字符,如:’a,’D,’?,’$ 。 字符变量 一用来存放字符常量 例:char cl,c2; c1=’a'; c2='A'; 字符数据在内存中的存储形式 以ASCII码存储,占1字节,用7个二进制位 Page 10
C语言程序设计 清华大学 郑莉 安颖莲 数据类型——字符型数据(一) • 字符常量 - 单引号括起来的一个字符,如:'a', 'D', '?', '$' • 字符变量 - 用来存放字符常量 例:char c1,c2; c1='a'; c2='A'; • 字符数据在内存中的存储形式 - 以ASCII码存储,占1字节,用7个二进制位 Page 10