章C语言基础知识介绍
1.1永不过时的C语言1
1.1.1品味C语言这一坛老酒1
1.1.2C语言的发展史2
1.1.3学习C语言还有用吗2
1.2认识段C语言程序3
1.2.1编写段C语言程序3
实例1-1:段C语言程序(定义变量并进行算数操作)3
1.2.2分析C语言程序的具体组成4
1.3如何学好C语言6
第2章安装C语言开发工具
2.1一步到位的Visual Studio7
2.1.1安装Visual Studio20177
2.1.2使用Visual Studio20179
实例2-1:使用Visual Studio2017运行一个C程序9
2.2使用DEVC开发C语言程序12
2.2.1安装DEVC12
2.2.2使用DEVC运行一个C语言程序14
2.3使用Turbo C3.0开发C语言程序14
2.3.1安装Turbo C3.014
2.3.2使用Turbo C3.015
第3章C语言语法基础
3.1标识符和关键字16
3.1.1标识符16
3.1.2关键字17
3.2数据类型19
3.3常量和变量20
3.3.1常量20
3.3.2变量21
实例3-1:计算圆的周长和面积23
3.4整型数据24
3.4.1整型常量24
3.4.2整型变量26
实例3-2:计算两个整型变量的和27
3.5实型数据类型28
3.5.1实型常量28
3.5.2实型变量29
实例3-3:对一个很大的数和一个很小的数进行加法运算29
3.6字符型数据30
3.6.1字符常量详解30
实例3-4:通过转义字符输出指定的文本字符31
3.6.2字符串常量32
实例3-5:我最喜欢的偶像是欧阳娜娜32
3.6.3字符变量33
实例3-6:将字符变量和整型变量进行相互赋值33
3.7整型、实型和字符型数据之间的运算34
3.7.1强制转换34
实例3-7:将int类型强制转换为double类型35
3.7.2自动转换35
实例3-8:计算圆的大概面积和精确面积36
第4章运算符和表达式
4.1运算符和表达式介绍37
4.2算术运算符和算术表达式38
4.2.1算术运算符的分类38
4.2.2单目运算符39
实例4-1:使用单目运算符实现基本的数学运算39
4.2.3双目运算符39
实例4-2:获取任意小于1000的正整数的个位、十位、百位和千位的数字40
4.3赋值运算符和赋值表达式40
4.3.1基本的赋值运算符41
4.3.2复合赋值运算符43
4.3.3赋值表达式43
实例4-3:实现基本的赋值表达式运算处理43
4.4关系运算符和关系表达式44
4.4.1关系运算符44
4.4.2关系表达式44
实例4-4:比较体重45
4.5逗号运算符和逗号表达式46
4.5.1逗号运算符46
4.5.2逗号表达式46
实例4-5:使用逗号运算符实现数学运算47
4.6逻辑运算符和逻辑表达式48
4.6.1逻辑运算符48
4.6.2逻辑表达式49
实例4-6:对变量进行逻辑运算处理,并输出运算后的结果49
4.7求字节数运算符sizeof50
实例4-7:使用sizeof运算符计算不同类型数据的字节大小51
4.8运算符的优先级52
第5章数据的输入和输出
5.1语句介绍54
5.1.1C语句简介54
5.1.2赋值语句56
5.2C语言内置的数据输入和输出函数57
5.2.1使用字符输出函数putchar58
实例5-1:使用函数putchar输出指定的字符58
5.2.2使用字符输入函数getchar59
实例5-2:使用getchar函数获取在键盘中输入的内容60
5.2.3使用格式输出函数printf60
实例5-3:使用printf函数输出不同格式变量a和b的数据61
实例5-4:使用printf格式字符输出指定格式的数据62
5.2.4使用格式输入函数scanf64
实例5-5:输出显示用户输入字符的ASCII码和对应的大写字母66
5.2.5使用字符串输出函数puts67
实例5-6:使用函数puts输出指定的字符串67
5.2.6使用字符串输入函数gets68
实例5-7:输出显示用户的姓名和身高信息68
第6章使用流程控制语句
6.1顺序结构69
实例6-1:计算三角形的面积70
6.2选择结构70
6.2.1单分支结构语句71
实例6-2:从大到小排列3个数字71
6.2.2双分支结构语句72
实例6-3:判断用户输入内容的格式72
实例6-4:判断变量a和b的值是多少74
6.2.3使用多分支结构语句75
实例6-5:提示用户输入数字,然后将用户输入的数字输出。77
6.2.4条件运算符和条件表达式77
实例6-6:比较两个数字的大小并输出优选数79
6.3循环结构79
6.3.1使用for语句79
实例6-7:计算某个整数的阶乘80
6.3.2使用while循环语句81
实例6-8:依次输出1*1、1*2…到1*20的积82
6.3.3使用do-while语句83
实例6-9:猜数游戏84
6.3.4正确对待goto语句84
实例6-10:统计从键盘输入一行字符的个数85
6.3.5使用break语句85
实例6-11:计算圆的面积86
6.3.6使用continue语句86
实例6-12:输出显示100到200之间的不能被3整除的整数87
6.3.7死循环/退出程序87
第7章数组存储数据
7.1使用一维数组89
7.1.1定义一维数组89
7.1.2引用即使用90
实例7-1:输出数组内的各个元素值91
7.1.3数组需要初始化91
实例7-2:实现一个由小到大排列的冒泡程序92
7.2多维数组93
7.2.1二维数组93
实例7-3:输出显示10行杨辉三角95
7.2.2使用多维数组96
实例7-4:获取成绩最高分的球员编号98
7.3使用字符数组与字符串99
7.3.1侃侃字符数组99
7.3.2字符串与字符数组100
7.3.3字符数组的输入输出101
实例7-5:比较两个字符串的大小102
7.4使用字符处理函数和字符串处理函数103
7.4.1使用测试字符串长度函数strlen103
实例7-6:使用函数strlen输出程序中数组字符串的长度103
7.4.2使用字符串大小写转换函数strupr和strlwr103
实例7-7:分别输出输入字符串的小写形式和大写形式103
7.4.3使用字符串复制函数strcpy和strncpy104
实例7-8:复制用户输入的字符串104
7.4.4使用字符串比较函数strcmp和strncmp105
实例7-9:比较用户输入的字符串106
7.4.5使用字符串连接函数strcat和strncat106
实例7-10:连接用户输入的字符串107
7.4.6将字符串转换成数值的函数108
实例7-11:将用户输入的字符串转换为数值类型的值108
7.4.7使用字符检测函数109
实例7-12:判断字符串中各字符所占用的个数109
7.4.8使用字符大小写转换函数tolower和toupper110
实例7-13:将字符串分别输出转换为大写形式和小写形式111
第8章函数
8.1函数基础知识介绍112
8.1.1函数的分类112
8.1.2函数的定义114
实例8-1:比较两个数字的大小114
8.2函数声明和函数原型115
8.2.1函数声明115
实例8-2:求s=(123…n)/(123…m)的值116
8.2.2函数原型117
8.3函数的参数117
8.3.1形参和实参详解117
实例8-3:计算从1到某个数字值的和118
8.3.2将数组作为函数参数118
实例8-4:判断一个整数是否大于0119
实例8-5:互换二维数组中行和列的元素120
8.4函数的返回值120
实例8-6:计算两个整数3和4的和121
8.5实现函数的调用122
8.5.1调用函数的格式122
实例8-7:比较3个数字的大小122
8.5.2函数调用的方式123
实例8-8:计算优选公约数和最小公倍数123
8.6函数的嵌套调用和递归调用124
8.6.1函数嵌套调用详解124
实例8-9:输出字符串中最长的单词125
8.6.2函数递归调用126
实例8-10:实现数学中Hanoi塔问题的解决方案127
8.7变量的作用域129
8.7.1局部变量作用域129
实例8-11:计算长方体的体积和三个面的面积129
8.7.2全局变量作用域130
实例8-12:超市价格调整130
8.8静态存储变量和动态存储变量131
8.8.1静态存储和动态存储的区别132
8.8.2四种变量存储类型132
8.8.3自动变量132
8.8.4外部变量133
实例8-13:在函数间通过外部函数直接传递数据134
8.8.5静态变量134
实例8-14:使用静态变量设置初始值136
8.8.6寄存器变量136
实例8-15:使用register变量提升效率136
8.9内部函数和外部函数137
8.9.1内部函数详解137
实例8-16:在不同的文件内使用同一个名称的函数138
8.9.2使用外部函数138
实例8-17:在一个文件内调用另一个外部函数138
8.10库函数139
8.10.1库函数介绍139
8.10.2库函数的分类139
第9章使用指针
9.1指针和内存地址141
9.2变量的指针和指向变量的指针变量142
9.2.1声明指针变量142
9.2.2初始化指针变量143
9.2.3引用指针变量144
实例9-1:将两个指针变量分别指向两个变量145
9.2.4指针运算符145
实例9-2:对输入的数字进行排序处理146
9.2.5指针变量的运算147
实例9-3:顺序显示数组内的元素并分别逆向输出148
9.2.6指针变量作为函数参数148
实例9-4:按照从小到大的顺序排序输出三个整数150
9.2.7void类型的指针151
实例9-5:定义4个类型的变量,然后分别输出转换后的结果151
9.3指针和数组152
9.3.1数组元素的指针153
9.3.2指向一维数组元素的指针变量154
9.3.3通过指针引用数组元素155
实例9-6:分别通过指向数组的指针引用数组、利用数组名和下标引用数组156
9.3.4数组名作函数参数158
实例9-7:将数组中的元素按相反顺序存放158
实例9-8:输出数组元素中的优选值和最小值159
9.4指针和多维数组160
9.4.1多维数组的地址160
实例9-9:输出显示二维数组元素的地址162
9.4.2指向多维数组的指针变量162
实例9-10:2*3或3*4矩阵相乘运算164
9.5指针和字符串165
9.5.1指针访问字符串165
实例9-11:把一个字符串的内容复制到另一个字符串中166
9.5.2字符串指针作函数参数167
实例9-12:使用函数调用复制字符串的内容167
9.6指针数组和多级指针168
9.6.1指针数组168
9.6.2多级指针的定义和应用169
实例9-13:对5个字符串进行排序170
9.6.3指向指针的指针171
9.6.4main函数的参数171
实例9-14:使用带参数的main函数输出指针数组参数的值172
9.7指针函数和函数指针173
9.7.1指针函数173
9.7.2函数指针173
……