C语言讲义.doc_第1页
C语言讲义.doc_第2页
C语言讲义.doc_第3页
C语言讲义.doc_第4页
C语言讲义.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章 新手上路第一章 新手上路 第一课 第一课 Hello World 简单的小程序简单的小程序 输出 Hello World: /头文件 #include /主函数 main() printf(hello worldn);/函数体 注意:注意: 1.C 语言属于编译型语言 2.一个程序必须有主函数,而且只能有一个 3.C 语言源文件的扩展名是.c 4.C 语言中语句结束的标志是分号 第二课 格式化输出函数 格式化输出函数:格式化输出函数:printf() 1.不属于 C 语言基本语法 2.C 语言并非必须包含头文件 3.printf()函数是在头文件中定义的 4.用什么库函数,包含什么头文件 程序执行程序执行 1.编译:.c-.obj(二进制文件) 2.组建:.obj-.exe(可执行文件) 3.运行:在程序结束后不会关闭窗口 调用 dos 系统命令:system() 使用 system()函数要引入头文件 转义符转义符 1.n:换行 2.:反斜杠 3.:单引号 4.:双引号 5.t:缩进 第三课 变量第三课 变量 定义变量定义变量 1.定义变量: a.定义一个整数型变量 int 变量名 b.定义多个整数型变量 int 变量名1,变量名2,. 输出变量输出变量 printf(%d,变量名);其中%d 是格式控制符 printf 输出的是双引号中的内容 输入变量输入变量 a.scanf(%d,变量名前要加 其中,%d%d 之间没有空格,输入顺序与变量顺序一致 间隔符:回车、空格、制表符 第四课 变量的赋值第四课 变量的赋值 变量的赋值变量的赋值 1.%相当于百分号字符% 2.顺序结构:从上往下依次执行 3.变量:变量值可在程序中变化 4.变量初始化:将定义域赋值合并在一起,比如:int a=5; 5.赋值:将等号右边的值赋值给左边,比如:a=a+1; 运算符运算符 1.算术运算符:+、-、*、/、% 2.赋值运算符:= 3.复合运算符:+=、-=、*=、/=、%= 4.自增自减运算符:+、- 第五课 变量的交换第五课 变量的交换 借助第三方变量交换的实例借助第三方变量交换的实例 #include main() int a,b,temp; printf(请输入两个整数:); scanf(%d%d, printf(a=%d,b=%dn,a,b); temp=a; a=b; b=temp; printf(a=%d,b=%dn,a,b); 不借助第三方变量交换的实例不借助第三方变量交换的实例 #include main() int a,b; printf(请输入两个整数:); scanf(%d%d, printf(a=%d,b=%dn,a,b); a=a+b; b=a-b; a=a-b; printf(a=%d,b=%dn,a,b); 第六课 变量修饰符第六课 变量修饰符 变量修饰符知识点变量修饰符知识点 1.sizeof():计算变量在内存中所占大小 2.字符变量只占 1 字节 3.bit:最小存储单位,只能存储 0 或1 4.int:整型,占 4 字节,取值范围:-231231-1,格式控制符:%d 5.short:短整型,占2 个字节,格式控制符:%hd 6.long:长整型,占4 个字节,格式控制符:%ld 7.signed:有符号 8.unsigned:无符号,格式控制符:%u 第七课 浮点类型第七课 浮点类型 普通浮点类型普通浮点类型 a.定义:float a; b.赋值:float a=3.5f; 双精度浮点类型双精度浮点类型 a.定义:double a; b.赋值:double a=3.5; 变量、常量都占内存空间变量、常量都占内存空间 浮点型的常量:double a=.3 相当于double a=0.3 格式控制符格式控制符 a.float 控制符: %e:科学计数法形式,最常考,实数E整数(整数、0、负数) %f:保留 6 位小数,不足部分以 0 补位 %g:原样输出,最常用 b.double 控制符:%le、%lf、%lg 注意:注意: 1.浮点数和整数运算,结果为浮点数 2.整数和整数运算,结果为整数 3.实数不可以参与余数运算 第八课 格式化输入输出第八课 格式化输入输出 C 语言中三种进制语言中三种进制 1.八进制 a.逢 8 进一 b.表示八进制:0、1、2、3、4、5、6、7 c.格式控制符:%o d.赋值:以0 作为开头,例如:int a=010; 2.十进制 a.逢 10 进一 b.表示十进制:0、1、2、3、4、5、6、7、8、9 c.格式控制符:%d 3.十六进制 a.逢 16 进一 b.表示十六进制:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F c.格式控制符:%x d.赋值:以0 x 作为开头,例如:int a=0 x10 格式控制符格式控制符 1.%md:空格补位,一共占 m 位,若m:大于 2.=:大于等于 5.字符串 2 -1:字符串 1 p0-*p p1-*(p+1) p2-*(p+2) . pi-*(p+i) pij-(*(p+i)j 指针形式: pij-*(*(p+i)+j) p00-*(*(p+0)+0)-*p p01-*(*(p+0)+1)-*(*p+1) p10-*(*(p+1)+0)-*(p+1) p11-*(*(p+1)+1) 4.对应赋值:层次不同的指针不能相互赋值 第八章 线性列表和其他第八章 线性列表和其他 第一课 结构体和共用体第一课 结构体和共用体 结构体结构体 1.定义 struct 结构体类型名 成员属性 ;/以分号结束 2.定义变量 struct 结构体类型名 变量名 struct 结构体类型名 成员属性 变量名; 3.赋值 变量名.属性名 4.初始化(定义时) struct 结构体类型名 变量名=依次初始化各成员 5.定义类型别名 typedef 原类型名 新类型名 共用体共用体 union 共用体类型名 成员属性 变量名; 第二课 结构体和指针第二课 结构体和指针 结构体指针基本用法结构体指针基本用法 main() Rect x=3,5,*p; p= printf(%dn,p-width);/p 所指向的结构体的属性 优先级:+p-x 等价于+(p-x) 第五课 第五课 malloc 函数函数 本课知识点本课知识点 1.malloc 函数所在的头文件: 2.malloc 函数使用格式:malloc(空间大小) 3.malloc 函数返回值类型:void * 4.malloc 申请的空间并不会自动消失 5.释放空间:free(p); 第六课 第六课 线性链表线性链表 定义定义 #include #include struct Node int data; struct Node *next; ; main() struct Node *header=NULL; 创建创建 struct Node *create(int n) struct Node *p; p=(struct Node*)malloc(sizeof(struct Node); p-data=n; p-next=null; return p; 输出输出 void output(struct Node *p) while(p) printf(%dn,p-data); p=p-next; 修改修改 void modify(struct Node *p,int n,int k) int i; for(i=0;inext; p-data=k; 插入插入 void insert(struct Node *p,int n,int k) struct Node *pNew; int i; for(i=0;inext; pNew=(struct Node*)malloc(sizeof(struct Node); pNew-data=k; pNew-next=p-next; p-next=pNew; 删除删除 void del(struct Node *p,int n) struct Node *pDel; int i; for(i=0;inext; pDel=p-next; p-next=pDel-next; free(pDel); 第十课 第十课 文件的打开和关闭文件的打开和关闭 定义文件指针定义文件指针 FILE *fp 打开文件打开文件 fp=fopen(文件名,打开方式) 12 种打开方式种打开方式 文本文件: r:只读 w:新建写入 a:追加 r+:读写 w+:新建读写 a+:读写 二进制文件: rb:只读 wb:新建写入 ab:追加 rb+:读写 wb+:新建读写 ab+:读写 关闭文件关闭文件 fclose() 第十一课 第十一课 文件的输入和输出文件的输入和输出 字符的写入和读取字符的写入和读取 fputc(字符,文件指针):像文件中写入单个字符 putchar():在控制台打印一个字符 fgetc(文件指针):从文件中读取单个字符 getchar():从控制台读条一个字符 feof(文件指针):对文件进行遍历 rewind(文件指针):将文件指针重新指回文件头部 字符串的写入和读取字符串的写入和读取 fputs(字符串,文件指针):像文件中输入字符串 puts(数组名):向控制台输出字符串 fgets(数组名,数组大小,文件指针):从文件中读取字符串 gets(数组名):从控制台读取字符串 普通变量的写入和读取普通变量的写入和读取 fprintf(文件指针,%d,5):向文件中写入 printf(%d,5):向控制台输出 fscanf(文件指针,%d,&a):从文件中读取 scanf(%d,&a):从控制台输入 数组的写入和读取数组的写入和读取 数组的写入:fwrite(数组名,单个元素大小,数组大小,fp) 数组的输出:fread(数组名,单个元素大小,数组大小,fp) 第十二课 第十二课 进制的转换进制的转换 二二/八八/十六进制十六进制-十进制十进制 数码乘以相应权之和 十进制十进制-二二/八八/十六进制十六进制 连续除以基,直至商为0,从低到高记录余数 二进制二进制八八/十六进制十六进制 二进制转换成八进制:从右像左,每3 位一组(不足3 位补0),转换成八进制 八进制转换成二进制:用3 位二进制数代替每一位八进制数 二进制转换成十六进制:从右像左,每 4 位一组(不足 4 位补 0),转换成十六进 制 十六进制转换成二进制:用4 位二进制数代替每一位十六进制数 其中:其中: 数码:表示数的符号 基:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论