c语言讲义ppt2
合集下载
第2章 C语言基础 ppt课件

/*用字符形式输出一个大于256的
printf("ch1+10=%d\n", ch1+10);
printf("ch1+10=%c\n", ch1+10);
printf("ch2+10=%d\n", ch2+10);
printf("ch2+10=%c\n", ch2+10);
}
运行程序,效果如图2.23所示。
printf("输入3个学生的身高:(单位:CM)\n"); 示信息,提示用户输入3个学生身高*/
/*输出提
scanf("%f%f%f",&a1,&a2,&a3); /*将用户输入的*/
avg=(a1+a2+a3)/3;
printf("平均身高为:%f\n",avg);
}
运行程序,效果如图2.11所示。
C语言基础
2020/12/27
1
计算学生平均身高
输入3个学生的身高,并用空格分隔开来,求这3个学生的平均身高。#include<stdio.h>
void main()
{
float a1=0,a2=0,a3=0;
/*定义存储学生身高变量并赋值*/
float avg=0;
/*定义存储平均身高的变量并赋值*/
float f=2.2f; 整型变量*/
/*定义单精度型变量
double result=i+c+f;
/*得到相加的结果*/
printf("%f\n",result);
C语言程序设计教程完整全套教学课件pptx

C语言与高级语言的关系
探讨C语言与Java、Python等高级语 言之间的联系与区别,以及各自适用 的场景。
C语言的特点与优势
阐述C语言高效、灵活、可移植等特 点,以及在系统级编程、嵌入式开发 等领域的广泛应用。
计算机系统基本概念
1 2 3
计算机系统的组成 介绍计算机硬件系统的基本组成,包括中央处理 器、内存、输入/输出设备等。
局部变量和全局变量
局部变量
在函数内部定义的变量,只在该函数内有效,不同函数中的局部变量互不影响。
全局变量
在函数外部定义的变量,可以在整个程序范围内访问,但过度使用全局变量会降低程序的可维护性和可读性。
模块化设计思想
模块化设计概念
01
将程序划分为若干个独立的功能模块,每个模块完成特
定的功能,提高程序的可维护性和可重用性。
函数原型声明
在调用函数之前,需要进行函数原型声明,以便编译 器识别函数。
参数传递方式
值传递
将实参的值复制给形参,形参的改变不会影响 实参。
地址传递
将实参的地址传递给形参,形参和实参共享同 一块内存地址,形参的改变会影响实参。
引用传递
通过引用传递方式,形参成为实参的别名,对形参的操作直接作用于实参。
强制类型转换
通过类型转换运算符来实现,其一般 形式为“(类型说明符)(表达 式)”,其功能是把表达式的运算结 果强制转换成类型说明符所表示的类 型。
03
控制结构
顺序结构
顺序结构的概念
按照代码的先后顺序,逐行执 行程序。
顺序结构的流程图
用箭头表示程序执行的顺序。
顺序结构的应用场景
适用于简单的计算和输出任务。
计算机中的数与编码 讲解计算机中数的表示方法,如二进制、十六进 制等,以及字符编码方式,如ASCII码、 Unicode等。
C语言循环结构程序设计2PPT教学课件

if(m%i==0) break;
if(i<=k)
printf("%d不是一个素数\n",m);
else
printf("%d是一个素数\n",m);
if(b%3==1) {b+=3; continue;} } printf("%d\n",a); }
2020/12/10
程序运行结果: 4
10
循环程序设计(循环嵌套)
例7:打印如下所示等腰三角形() * ***
***** ******* *********
2020/12/10
11
循环程序设计(循环嵌套)
结果的输出:
如果循环是中途退出的,则i<=k,输出m不是素 数;否则,m是一个素数。
2020/12/10
23
例6.6 程序
#include<stdio.h>
#include<math.h>
main( )
{
int i,m,k;
scanf("%d",&m);
k=(int)sqrt(m);
for(i=2;i<=k;i++)
(2)语句作用:
结束本次循环。
(3)语句执行流程:
continue语句可以结束本次循环,即不再执
行循环体中continue 语句之后的语句,转入
下一次循环条件的判断与执行。
2020/12/10
8
【例6:ch6_006】 求300以内能被17整除 的所有整数。
#include "stdio.h"
void main()
... }
c语言讲稿(PPT32张)

由计算机硬件系统可以识别的二进制指令组成的语 言称为机器语言
第二时期——汇编语言
用人们比较习惯的符号来代替机器指令
程序设计基本概念
程序设计语言的发展历程
第三时期——高级语言
采用人们容易理解和记忆的符合和语句来代替原有 的指令,形成的这种更接近人类的语言 例如:Fortran、Cobol、Basic、Pascal、C、 C++、Java等
求两个整数的较大者?
#include <stdio.h> void main ( ) { int max(int x,int y); int a, b, c; int max(int x,int y) scanf ("%d,%d",&a,&b); { c=max (a,b); int z; printf ("max=%d",c); if (x>y) z=x; } else z=y; return (z); }
简单的C语言程序
计算机求解问题的过程
程序编写
#include<stdio.h> void main() { int a,b,sum; printf("please input two integer:"); scanf("%d %d",&a,&b); sum=a+b; printf("sum is %d \n",sum); }
注意
标准的程序必须有注释,注释不被执行
简单的C语言程序
简单C程序的结构和特点
注释
注释出现的位置 (1)程序开头——注目程序的名称、功能、思路、
C语言第二章PPT课件

64位
4字节
7精度
4字节
16精度
从低精度转换到高精度,会使精度损失 float a=0.1234567890123456789013456 printf(“%f/n”,a); //精度损失
19
第19页/共27页
限定词const
• const将变量限定为“只读”,无法改变其值 const int a=3; a++; //对只读变量自加,编译报错
• 定义const变量时,必须初始化(赋初值) const int a; //未初始化,报错 const int a=3;//初始化为3,正确
20
第20页/共27页
限定词volatitle
• 修饰的变量必须每次重新读取这个变量值
21
第21页/共27页
小结
• 说出整形、浮点型、字符型的字节长度 • 说出数字71转换成字符型,结果是多少 • 说出=与==的含义 • 说出&&与||的含义 • 换行符是什么?
25
第25页/共27页
26
第26页/共27页
感谢您的欣赏!
27
第27页/共27页
16
第16页/共27页
字符型和整形转换 int a=67; char b=‘A’;
printf(“%c”,a); //让a输出成%c,即输出成字符 printf(“%d”,b); //让b输出成%d,即输出成整数
注意啦: 1、字符型转换为整形,输出对应的ASCII码 2、整形转换为字符型,则将该数字当ASCII码处理 31、7 由于ASCII码只有127位,所第以17数页/共字27大页 小不能超过127
22
第22页/共27页
上机实验
C语言程序设计基础讲解PPT第3章(第二讲)

14
与 哪 个 if 配 对 ? ⑶ if (c<=100) if (c>=50) printf("50<=c<=100\n"); else printf("c<50\n")
2019/1/8
再例如:
if(a>b) if(a>c) if(a>d) m=1; else m=2; else m=3; 问题:哪一个 else 和哪一个 if 相匹配?
24
2019/1/8
注意:
25
switch语句的书写格式:语句体本身必须用花括 号括起;case和default后面如果有多条语句, 则可以不必使用花括号;case和常量表达式之 间必须有空格;default可以写在语句体的任何 位置,也可以省略不写 break语句可以改变case的语句标号作用,终止 后续case语句序列的执行。 switch语句和break 语句结合,可以实现程序的选择控制(break语 句还可以在循环语句中使用) 允许switch嵌套使用,但同一个switch语句中, 任意两个case的常量表达式值不能相同。
2019/1/8
程序:
#include "stdio.h" main( ) { char ch; ch=getchar( ); if (ch>='A' && ch<='Z') ch=ch+32; printf("%c\n",ch ); } 可使用条件表达式代替
程序运行情况如下: putchar(ch>='A' && ch<='Z' ? ch+32:ch); G putchar (' \n') g
C语言程序设计教程ppt课件完整版pptx
C语言的应用领域
计算机系统基本概念
计算机系统的组成 操作系统的基本概念 计算机中的数与编码
编程环境与工具安装配置
01
常见的C语言编程环境
02
安装与配置C语言编译器
使用集成开发环境(IDE)进行C语言编程
03
第一个C程序:Hello, World!
01
C程序的基本结 构
02
编写Hello, World!程序
应用场景
适用于需要根据特定条件提前终 止循环或跳过某些循环操作的情 况。
04 函数与模块化设计
函数定义和调用
01
函数定义
包括函数名、参数列表、返回值 类型和函数体等部分,用于描述 函数的功能和实现细节。
函数调用
02
03
函数声明
通过函数名和参数列表来调用函 数,实现相应功能并获取返回值 。
在使用函数之前,需要对函数进 行声明,以便编译器识别函数的 存在和调用方式。
THANKS FOR WATCHING
感谢您的观看
指针运算符
包括取地址运算符&和取值运算符*,分别 用于获取变量的内存地址和通过指针访问内 存中的数据。
动态内存分配函数(malloc, free)使用方法
malloc函数
用于在堆区动态分配指定大小的内存空间,并返回 分配内存的起始地址。
free函数
用于释放之前通过malloc函数分配的内存空间,防 止内存泄漏。
动态规划思想
动态规划是一种在数学、计算机科学和经济学中 使用的,通过把原问题分解为相对简单的子问题 的方式来求解复杂问题的方法。动态规划常用于 优化重叠子问题的计算。
回溯与分支限界法
回溯法是一种通过探索所有可能的候选解来找出 所有解的算法,而分支限界法是一种通过剪枝来 减少搜索空间的优化算法。回溯与分支限界法常 用于解决组合优化问题。
计算机系统基本概念
计算机系统的组成 操作系统的基本概念 计算机中的数与编码
编程环境与工具安装配置
01
常见的C语言编程环境
02
安装与配置C语言编译器
使用集成开发环境(IDE)进行C语言编程
03
第一个C程序:Hello, World!
01
C程序的基本结 构
02
编写Hello, World!程序
应用场景
适用于需要根据特定条件提前终 止循环或跳过某些循环操作的情 况。
04 函数与模块化设计
函数定义和调用
01
函数定义
包括函数名、参数列表、返回值 类型和函数体等部分,用于描述 函数的功能和实现细节。
函数调用
02
03
函数声明
通过函数名和参数列表来调用函 数,实现相应功能并获取返回值 。
在使用函数之前,需要对函数进 行声明,以便编译器识别函数的 存在和调用方式。
THANKS FOR WATCHING
感谢您的观看
指针运算符
包括取地址运算符&和取值运算符*,分别 用于获取变量的内存地址和通过指针访问内 存中的数据。
动态内存分配函数(malloc, free)使用方法
malloc函数
用于在堆区动态分配指定大小的内存空间,并返回 分配内存的起始地址。
free函数
用于释放之前通过malloc函数分配的内存空间,防 止内存泄漏。
动态规划思想
动态规划是一种在数学、计算机科学和经济学中 使用的,通过把原问题分解为相对简单的子问题 的方式来求解复杂问题的方法。动态规划常用于 优化重叠子问题的计算。
回溯与分支限界法
回溯法是一种通过探索所有可能的候选解来找出 所有解的算法,而分支限界法是一种通过剪枝来 减少搜索空间的优化算法。回溯与分支限界法常 用于解决组合优化问题。
第二章 C语言基础 C语言课件
字符型数据
字符串常量
用一对双引号括起来的一个字符串;如“hello” C规定:在一个字符串的末尾系统自动加一个字符串结束标志“\0”
在内存中占的字节数=字符个数+1 “hello”在内存中的存储形式是该字符对应的ASCII码值:
104 01 108 108 111 0
h
e
l
l
o \0
“B”
‘B’
根某每通数向重向读变据片新过据存复变取量空内创存类储问量不将间存 建 储型 空 题 的 会会的空 一 空决 间 存 改6存的地间 个 间定 写 储 变储步址的 变 的分 入 空 变值骤直地量地配值间量。。接址就址多时写的结找即要或少,入值果到该给变个将值。导或区它量连值时致者域分名续转,变通最配找的换即量过左一到存为只的变侧片该储二有空量起独空空进执间名点 有 间间 制 行中先位 的 ,。形 “保转置 内 得式 赋留换的 存 到, 值新为存 该二 ”值储, 对编空进原操应号间制来作的。。中数的的地值值 时址的位 被 候然拷的 覆 。后贝数 盖找版量。到。与。存储空间的位数量相同,即写 入值会充满整个存储空间。
的编号。 问题6:如何将值存储到该内存空间? 答:存储空间写入值时,将值转换为二进制形式,二进制数值
位的数量与存储空间的位数量相同,即写入值会充满整个存 储空间。
变量
问题7:如何写入新值? 答:重复问题6的步骤。结果导致变量的空间中保留新值,
原来的值被覆盖。 问题8:变量的值何时会发生改变? 答:向变量的存储空间写入值时,即只有执行“赋值”操作
运算符和表达式
C运算符:算术运算符、关系运算符、逻辑运算符、赋 值运算符等 C表达式:由运算对象(常量、变量、函数)、运算符 和括号组成的式子。 如:算术表达式、赋值表达式、关 系表达式、逻辑表达式、 条件表达式、逗号表达式等。
C语言基础讲义课件
几个基本概念: 类、对象、属性、事件、方法
三类机制: 封装、继承、多态
第一章 C语言概述
§1.3 简单C程序分析
例1.1 打印(显示)一串字符。
/* example1.1 */ #include<stdio.h> void main( ) { printf(“This is an example. \n”); 运} 行结果: This is an example.
else z=y ;
c=max( a , b ) ;
return (z) ;
printf(“max=%d\n ”, c) ;
}
}
14
第一章 C语言概述
C程序结构
1、C程序由函数构成
{一个主函数(main函数)
C程序= 一个主函数+若干其他函数(子或库)
{ { 说明部分
2、函数 { 函数体 }
数据定义(语句) 执行部分
11
第一章 C语言概述
例1.2 已知角度值45°, 求正弦值的2倍。
/*example 1.2*/
#include<stdio.h>
#include<math.h>
void main( ) { float x, y;
x=45; y=2*sin(x*3.14/180); printf(“Y=%f \n”, y); }
第二章 算法
§2.1 算法的概念
算法:为解决一个问题而采取的方法和步骤。 对同一个问题, 算法是不唯一的。例如:
1+2+3+……+100=5050 或 100+1+99+2+98+……+49+51+50= 100+49*100+50=5050
C讲义入门PPT课件
使用strcmp函数比较两个字符 串的大小关系。
05
指针与内存管理
指针的概念与操作
指针的定义
指针是一种特殊类型的变量,它存储的是另一个变量的内存地址 。
指针的声明与初始化
使用特定的语法声明指针变量,并将其初始化为某个变量的地址。
指针的运算
可以对指针进行加法、减法、比较等操作,以实现对内存地址的灵 活控制。
数组名作为指针
数组名本质上是一个指向数组首元素的常量 指针。
指针与多维数组
多维数组可以看作是指针的嵌套,通过多级 指针间接引用多维数组中的元素。
指针访问数组元素
可以使用指针算术运算访问数组中的元素, 实现数组元素的遍历、修改等操作。
字符串与字符指针
字符串常量在内存中存储为字符数组,可以 通过字符指针对其进行操作和处理。
C讲义入门PPT课件
目录
• C语言概述 • C语言基础语法 • 函数与模块化设计 • 数组与字符串处理 • 指针与内存管理 • 文件操作与数据处理 • C语言高级特性
01C语言概述来自 C语言的历史与发展起源
C语言最初是由丹尼斯·里奇(Dennis Ritchie)在1972年为开发UNIX操作 系统而设计的一种高级编程语言。
二维数组的遍历
使用嵌套的for循环遍历数组中的每个元素。
字符串处理函数
字符串的长度
使用strlen函数获取字符串的 长度。
字符串的连接
使用strcat函数连接两个字符 串。
字符串的输入与输出
使用scanf和printf函数进行字 符串的输入和输出。
字符串的复制
使用strcpy函数复制字符串。
字符串的比较
内存分配与释放
01
05
指针与内存管理
指针的概念与操作
指针的定义
指针是一种特殊类型的变量,它存储的是另一个变量的内存地址 。
指针的声明与初始化
使用特定的语法声明指针变量,并将其初始化为某个变量的地址。
指针的运算
可以对指针进行加法、减法、比较等操作,以实现对内存地址的灵 活控制。
数组名作为指针
数组名本质上是一个指向数组首元素的常量 指针。
指针与多维数组
多维数组可以看作是指针的嵌套,通过多级 指针间接引用多维数组中的元素。
指针访问数组元素
可以使用指针算术运算访问数组中的元素, 实现数组元素的遍历、修改等操作。
字符串与字符指针
字符串常量在内存中存储为字符数组,可以 通过字符指针对其进行操作和处理。
C讲义入门PPT课件
目录
• C语言概述 • C语言基础语法 • 函数与模块化设计 • 数组与字符串处理 • 指针与内存管理 • 文件操作与数据处理 • C语言高级特性
01C语言概述来自 C语言的历史与发展起源
C语言最初是由丹尼斯·里奇(Dennis Ritchie)在1972年为开发UNIX操作 系统而设计的一种高级编程语言。
二维数组的遍历
使用嵌套的for循环遍历数组中的每个元素。
字符串处理函数
字符串的长度
使用strlen函数获取字符串的 长度。
字符串的连接
使用strcat函数连接两个字符 串。
字符串的输入与输出
使用scanf和printf函数进行字 符串的输入和输出。
字符串的复制
使用strcpy函数复制字符串。
字符串的比较
内存分配与释放
01
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第
一
章
语言基本语法
§1
字
法
C语言的合法字符集是 语言的合法字符集是ascii 字符集(含扩展 字符集(含扩展ascii字符) 字符) 语言的合法字符集是 字符 命名字符集:这些字符可以用于命名程序实体名字(标识符) 命名字符集:这些字符可以用于命名程序实体名字(标识符) 字母、数字、下划线(字母下划线打头,大小写有别) 字母、数字、下划线(字母下划线打头,大小写有别)
2 基本数据类型简介 (1) 整型 ( int ) ) * 取值范围:-32768…… 32767 * 可进行的运算:+ - * / % % 运算是求余运算。 运算是求余运算。 * 整型数的表示方式
[符号 进制 数值 长短类 符号][进制 数值>[长短类 符号 进制]<数值 长短类]
十进制 八进制 缺省 0
* 符号常量: 符号常量用标识符来代替一个常量,但 符号常量: 符号常量用标识符来代替一个常量,
须先加以说明(定义)。例如: )。例如 在使用前必 须先加以说明(定义)。例如:
# define PI 3.1415926 const int maxint=32767; const char *p=“borland c”;
便于程序员编程。
程序不使用变量,实际上把计算机当成计算器使用, 程序不使用变量,实际上把计算机当成计算器使用,此时的 程序也就失去了意义。尽可能将你的数据放入变量中
(2)使用变量 ) * 进行定义(先说明,后使用) 进行定义(先说明,后使用)
变量的名称(标识符)及类型, 变量的名称(标识符)及类型, * 以变量名代替变量所存放的数据。 以变量名代替变量所存放的数据。 * 变量初始化
§3 数 据 类 型
1 类型的内涵 基本类型 (int,char ,float ) short [int] long [ int] unsigned [ int] double long double char 与 int 通用 构造类型 ( struct union 数组 ) 指针类型
枚举型
类型与类型之间的区别在于: 类型与类型之间的区别在于:每一种类型都有其特有的 取值范围和允许进行的运算。例如: 取值范围和允许进行的运算。例如:整型和实型
§4
常量、变量、 常量、变量、表达式和函数
1 常量 :在程序运行中其值不能被改变的量。常量都是出 在程序运行中其值不能被改变的量。
现在程序的表达式中。 现在程序的表达式中。
* 字面常量(立即数):138(int)1.38 (float) ‘a’ (char) 字面常量(立即数) ( )
“abcde” ( string ) 等。
比较
例 35 % 6 , -35 % 6, -35 % -6, 35 % -6 , , 长整型 l(L) 其他 缺省
十六进制
0x
字符型( (2 ) 字符型( char ):括在两个单括号中的一个字 符。 * 取值范围:ascii 字符表中的字符(含不可显示的字 取值范围: 字符表中的字符(
符和扩展ascii字符) 字符) 符和扩展 字符 * 可进行的运算:比较 可进行的运算: * 字符型数据表示法: 字符型数据表示法: 将字符置于两个单引号之间。 将字符置于两个单引号之间。例如 ‘A’ ‘0’ 等。 表空格, 表示空字符。 ‘ ’ 表空格,‘’ 表示空字符。 用整型数表示 65 , 0101 , 0x41都表示 ‘A’ 都表示 注意转义字符的使用。 注意转义字符的使用。’\n’ ‘\r’, ‘\t’, ‘\b’,‘\101’ ‘\x41’
使用符号常量的好处是便于修改程序
2 变量 (1)使用变量的目的有三 )
* 提高内存的利用率。 提高内存的利用率。 * 使程序的应用范围大为扩大 形式逻辑 抽象 形式化 形式系统
代数中的式子所包含的信息远大于算术中的式子所含的信息。 代数中的式子所包含的信息远大于算术中的式子所含的信息。 编程序类似代数演算 *
* 可进行的运算:+ - * / 比较,但要注意: 可进行的运算: 比较,但要注意: 在实际中只要两数差的绝对值小于某个微小的 例如: 就可以认为是相等。 值(例如:10-10)就可以认为是相等。 * 实型数表示法 如同常规, 小数表示法 如同常规,但要注意一定要有小数点 且小数点前后都要有数字。 且小数点前后都要有数字。 0. 201 2. 0 . 21 8. 8 一定要有e 科学表示法 一定要有 且e 的前后也要数字 1. 35e3 1e1 e1 1e
int
a=5;
float d=3.14;
int i , j=9 ,\rde\b\t\101\x41 fg\n”);
( 3 ) 实型 ( float ) * 取值范围:3.4*10-38 < | r | <3.4* 10 38 或 取值范围:
3.4e(-38)<| r |<3.4e38
1.7*10-308 < | r | <1.7* 10 308 或 1.7e(-308)<| r |<1.7e308
§2
词
法
1.保留字: 具有固定语法含义的字符串,在程序中不允许重 .保留字: 具有固定语法含义的字符串, 新定义。 新定义。 * 标准 C 语言共有 个保留字, 其中最常用的有: 语言共有32个保留字 其中最常用的有: 个保留字, break case char continue const default do else float for int if return struct switch typedef union void while * 不同的编译系统有不同的增添 2.标识符:用来表示变量、函数、类型和文件名称 的字符串。 的字符串。 .标识符:用来表示变量、函数、 * 为了便于程序的修改,程序中多次出现的常量通常也定 为了便于程序的修改, 义一个名称。 义一个名称。 * 标识符中的字符只能是命名字符集中规定的字符。 标识符中的字符只能是命名字符集中规定的字符。 * 系统标识符 如头文件中的函数名
功能字符或功能字符组合 例如 算术运算字符集: 算术运算字符集:+ - * / % 用于四则运算 比较运算字符集: 用于比较运算。 比较运算字符集: < > = 用于比较运算。 赋值运算字符: = 赋值运算字符: 分隔字符集: 说明、 保留字、标识符、 分隔字符集: ; ,用于 句、说明、项、保留字、标识符、 数间的分隔 指示字符: 用于指示变量的分量。 指示字符: . 用于指示变量的分量。 功能字符组合: 功能字符组合:() { } [ ] <= >= != == ++ -- ‘’ -> && || 保留字
一
章
语言基本语法
§1
字
法
C语言的合法字符集是 语言的合法字符集是ascii 字符集(含扩展 字符集(含扩展ascii字符) 字符) 语言的合法字符集是 字符 命名字符集:这些字符可以用于命名程序实体名字(标识符) 命名字符集:这些字符可以用于命名程序实体名字(标识符) 字母、数字、下划线(字母下划线打头,大小写有别) 字母、数字、下划线(字母下划线打头,大小写有别)
2 基本数据类型简介 (1) 整型 ( int ) ) * 取值范围:-32768…… 32767 * 可进行的运算:+ - * / % % 运算是求余运算。 运算是求余运算。 * 整型数的表示方式
[符号 进制 数值 长短类 符号][进制 数值>[长短类 符号 进制]<数值 长短类]
十进制 八进制 缺省 0
* 符号常量: 符号常量用标识符来代替一个常量,但 符号常量: 符号常量用标识符来代替一个常量,
须先加以说明(定义)。例如: )。例如 在使用前必 须先加以说明(定义)。例如:
# define PI 3.1415926 const int maxint=32767; const char *p=“borland c”;
便于程序员编程。
程序不使用变量,实际上把计算机当成计算器使用, 程序不使用变量,实际上把计算机当成计算器使用,此时的 程序也就失去了意义。尽可能将你的数据放入变量中
(2)使用变量 ) * 进行定义(先说明,后使用) 进行定义(先说明,后使用)
变量的名称(标识符)及类型, 变量的名称(标识符)及类型, * 以变量名代替变量所存放的数据。 以变量名代替变量所存放的数据。 * 变量初始化
§3 数 据 类 型
1 类型的内涵 基本类型 (int,char ,float ) short [int] long [ int] unsigned [ int] double long double char 与 int 通用 构造类型 ( struct union 数组 ) 指针类型
枚举型
类型与类型之间的区别在于: 类型与类型之间的区别在于:每一种类型都有其特有的 取值范围和允许进行的运算。例如: 取值范围和允许进行的运算。例如:整型和实型
§4
常量、变量、 常量、变量、表达式和函数
1 常量 :在程序运行中其值不能被改变的量。常量都是出 在程序运行中其值不能被改变的量。
现在程序的表达式中。 现在程序的表达式中。
* 字面常量(立即数):138(int)1.38 (float) ‘a’ (char) 字面常量(立即数) ( )
“abcde” ( string ) 等。
比较
例 35 % 6 , -35 % 6, -35 % -6, 35 % -6 , , 长整型 l(L) 其他 缺省
十六进制
0x
字符型( (2 ) 字符型( char ):括在两个单括号中的一个字 符。 * 取值范围:ascii 字符表中的字符(含不可显示的字 取值范围: 字符表中的字符(
符和扩展ascii字符) 字符) 符和扩展 字符 * 可进行的运算:比较 可进行的运算: * 字符型数据表示法: 字符型数据表示法: 将字符置于两个单引号之间。 将字符置于两个单引号之间。例如 ‘A’ ‘0’ 等。 表空格, 表示空字符。 ‘ ’ 表空格,‘’ 表示空字符。 用整型数表示 65 , 0101 , 0x41都表示 ‘A’ 都表示 注意转义字符的使用。 注意转义字符的使用。’\n’ ‘\r’, ‘\t’, ‘\b’,‘\101’ ‘\x41’
使用符号常量的好处是便于修改程序
2 变量 (1)使用变量的目的有三 )
* 提高内存的利用率。 提高内存的利用率。 * 使程序的应用范围大为扩大 形式逻辑 抽象 形式化 形式系统
代数中的式子所包含的信息远大于算术中的式子所含的信息。 代数中的式子所包含的信息远大于算术中的式子所含的信息。 编程序类似代数演算 *
* 可进行的运算:+ - * / 比较,但要注意: 可进行的运算: 比较,但要注意: 在实际中只要两数差的绝对值小于某个微小的 例如: 就可以认为是相等。 值(例如:10-10)就可以认为是相等。 * 实型数表示法 如同常规, 小数表示法 如同常规,但要注意一定要有小数点 且小数点前后都要有数字。 且小数点前后都要有数字。 0. 201 2. 0 . 21 8. 8 一定要有e 科学表示法 一定要有 且e 的前后也要数字 1. 35e3 1e1 e1 1e
int
a=5;
float d=3.14;
int i , j=9 ,\rde\b\t\101\x41 fg\n”);
( 3 ) 实型 ( float ) * 取值范围:3.4*10-38 < | r | <3.4* 10 38 或 取值范围:
3.4e(-38)<| r |<3.4e38
1.7*10-308 < | r | <1.7* 10 308 或 1.7e(-308)<| r |<1.7e308
§2
词
法
1.保留字: 具有固定语法含义的字符串,在程序中不允许重 .保留字: 具有固定语法含义的字符串, 新定义。 新定义。 * 标准 C 语言共有 个保留字, 其中最常用的有: 语言共有32个保留字 其中最常用的有: 个保留字, break case char continue const default do else float for int if return struct switch typedef union void while * 不同的编译系统有不同的增添 2.标识符:用来表示变量、函数、类型和文件名称 的字符串。 的字符串。 .标识符:用来表示变量、函数、 * 为了便于程序的修改,程序中多次出现的常量通常也定 为了便于程序的修改, 义一个名称。 义一个名称。 * 标识符中的字符只能是命名字符集中规定的字符。 标识符中的字符只能是命名字符集中规定的字符。 * 系统标识符 如头文件中的函数名
功能字符或功能字符组合 例如 算术运算字符集: 算术运算字符集:+ - * / % 用于四则运算 比较运算字符集: 用于比较运算。 比较运算字符集: < > = 用于比较运算。 赋值运算字符: = 赋值运算字符: 分隔字符集: 说明、 保留字、标识符、 分隔字符集: ; ,用于 句、说明、项、保留字、标识符、 数间的分隔 指示字符: 用于指示变量的分量。 指示字符: . 用于指示变量的分量。 功能字符组合: 功能字符组合:() { } [ ] <= >= != == ++ -- ‘’ -> && || 保留字