3月C语言二级
二级C语言程序设计
第一章 程序的概念
1程序的概念
程序是指令的集合
指令-编译-计算机运行
指令:编写程序的执行程序(要干什么的步骤)
编译:将程序转换为二进制(怎么干)
计算机运行:将二进制运行出结果
2 C程序的运行过程
.c文件(源程序)——.obj(目标程序——二进制程序)——.exe(可执行程序(debug文件夹中))——计算机运行
——连接程序(运行库)
3 程序设计的步骤
(1)确定数据结构
(2)确定算法——有穷性(步骤有限)
——确定性(含义确切)
——可行性(能够实现)
有零个或多个输入(数据输入)
有一个或多个输出(数据输出)
(3)编码
(4)在计算机上调试程序
(5)整理并写出文档资料
4结构化程序
三大结构:
顺序结构:程序从上到下顺序执行
选择结构:程序可以沿着不同路径执行
循环结构:指定程序重复执行
第二章 C程序设计的初步知识
1大纲分析
(1)C的数据类型(基本结构,构造类型,指针类型,无值类型,)及其定义方法
(2)C运算符的种类、运算优先级和结核性。
(3)不同类型数据间的转换与运算
(4)C表达式类型(赋值表达式,算数表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
2简单C语言构成和格式
#include<stdio.h>——命令行 调用标准库函数
main ——主函数 程序的入口 有且只有一个叫做 main()的函数
{
printf(“xxx”);
}
3标识符
(1)什么是标识符
符合一定规则的符号集合
(2)标识符命名规则
由字母(a-z,A-Z),数字(0-9),下划线
必须由字母,下划线开头,如A3,_sb
不能是c语言关键字
区分小写b2和B2是两个不同的标识符
长度一定,与系统有关(考试不涉及)
(3)标识符的分类
-关键字
-预定义标识符(系统中具有某些功能含义的名字)
-用户标识符
例如:
正确的标识符:sum a2 a_2 ,_a2
错误的标识符:2a a? if while
4常量
(1)什么是常量
常量就是在程序汇其值不能被改变的量
例如:π
(2)常量类型
-数值型常量-整型常量 -1, 0 ,2不带小数点
-实型常量 -12.68带小数点的
在C语言中0和0.0是两个不同的东西
-非数值型常量 -字符型常量 ‘A’
-字符串常量 “A”
(3)如何定义符号常量
关键字define
用法#define 标识符 常量值
5变量
(1)什么是变量
在程序运行中,值可以改变的量
(2)变量的命名规则
与标识符相同 字母数字下划线组成,必须由字母下划线开头,不可以是c语言的关键字
(3)变量的特点
变量在内存汇总要占用连续的若干个字节
所占用的字节数由变量的数据类型确定
变量使用必须要先定义
记忆理解:一个大小的盒子,大小取决于数据类型
(3)整型数据
整型数据
整型常量的表示形式
十进制整数:0、-111
八进制整数:00、-0111
十六进制整数: 0x0、-0x111
注意:**只有十进制整数有负数、八进制最大到7、十六进制最大到F **
(4)整型数据存储形式
计算机的存储单位
二进制的位bit
8 bit = 1字节 1024字节 = 1Kb 1024kb = 1m 1024m = 1g
(5)负数的存储
-转成反码
-在反码上加一 (得到补码)
注意转换是最高位符号位不转换,如果是无符号的,最高位当做数字
整数
(6)整型数据
-有符号位(没有负数)
unsigned
-无符号位(有正负)
signed
(7)实型数据
实型常量(浮点数、实数)的表示形式
一般形式的实数:12.3456、-1.23456、7.0
指数形式的实数:-1.2345E3、0.12345e-4
注意:E或e之前必须要有数字、之后必须是整数、数字和E(e)之间没有空格
实型数据类型
float单精度浮点型
double双精度浮点型
注意:
如不特别定义任意用到一个实数在C中都是double类型的,超出范围处理成0值,实数存在误差
6算数表达式
(1)基本运算符号
注意:不同类型转换,例如1/2.0 = 0.5
相同类型结构类型不变 例如:1/2 = 0
若是单精度后面加0变成双精度
%左右运算必须都是整数
(2)运算规则(优先级)
先函数,再括号,后乘除,终加减
强制转换类型 (数据类型)(表达式 )
实型转换为整型时,把小数位砍掉
7赋值表达式
(1)主要运算符号=
形式 变量名 = 表达式 ,例如 a = 10
理解记忆:*变量好比一个盒子,把等于号右边东西放到左边的盒子里面
注意:
(1)等号优先级最低,先计算右边,在赋值给左边;
(2)n =n+1;有意义,在原有变量n的基础上,增加1;
(3)左边不能是表达式 a + b = c 错误
(4)右边可以是赋值表达式 a = b = 7 +1 ;但是 a = 7 +1 = b是错误的
主要运算符号+= -= *= /= %=
(2)赋值运算的类型转换
赋值两边类型不一致,将等号右边的值转换成左边数据类型,仅限数值,成为”赋值兼容”
整型运算符转换原则:
1运算符号两边一个短整型,一个长整型,都转化成长整型
2运算符号两边一个无符号,一个有符号,都转化成无符号
整数赋值转换原则:
1左短右长,截取右边,丢高保低
2左无右有,赋值右边,负数变整数
3左有右无,复制右边,高位为1,变负数
(3)自增、自减、逗号运算符
++ –
注意:
1自增、自减符号可以放在变量前面形成前缀,也可以放在后面形成后缀
2如果是前缀,先做自我运算,后运算语句
3如果是后缀,先运算语句,后运行语句
4不要在一个表达式中多次对同一个变量做++,–运算
逗号表达式:
逗号表达式运算法则从左到右,一个表达式一个表达式计算,全部运算完毕后,最后一个表达式的结构是整个表达式的值
第三章 顺序结构
大纲分析:
1表达式语句,空语句,复合语句
2输入和输出函数的调用,正确输入数据并正确设计输出格式
1赋值语句
赋值语句也称为表达式语句,主要在赋值表达式后加入分号:,构成表达式语句
2数据输出
1什么是数据输出
2C语言如何进行数据输出
注意:
C语言没有输入输出语句,应用标准库中的函数完成输出
(1)格式控制
格式控制的作用
1按照指定的输出格式输出,格式有%符号和紧跟的其后格式描述符组成,如整型%d,单精度%f,双精度%lf
2原样输出文字和字符
(2)数据输出
%c——输出一个字符
%d——整型、
%0 ——输出八进制形式
%x(X)——输出十六进制形式
%u——以无符号输出整形数
%f——输出单精度数或双精度,也可用%lf输出双精度
%e(3)——以质数形式输出浮点数
%g(G)——系统决定使用%f还是%e输出保证输出宽度最小
%s——输出一个字符串,遇到\0终止,不受最大宽度约束
%p——输出变量内存地址
%%——输出一个%
(3)长度修饰符
输出数据所占宽度的格式说明
(1)默认输出实际宽度,且右对齐
(2)%nd整数输出,小于n左边补空格,右对齐
(4)printf使用注意事项
(1)输出自由控制
(2)如有格式控制即%,有几项后边输出几项,类型必须匹配,%多于输出项,会出乱码,%少于输出项,多余的不输出
(3)转义字符\n回车\r换行但无回车\t 制表 \a响铃等控制符
(4)输出% 输出两个%%
(5)printf(函数有返回值)
(6)尽量不要在printf中做变量运算,printf(”%d %d”,k,++k)
(7)如果出现*号,顺序写入
3数据输入
scanf函数调用形式:
scanf(格式控制,输入项1,输入项2…….);
注意:
1务必使用&运算符,除非变量本身是地址变量
2输入double类型时候一定使用%lf
(1)scanf函数使用说明
特别注意:如果在scanf格式控制符出加入其他符号,输入时必须按照它原样格式输出
4复合语句和空语句
一对大括号之间多条语句组成的一个语句组称为复合语句
{;;}
第四章 选择结构
大纲分析:
1用if语句实现选择结构
2用switch语句实现多分支选择结构
3选择结构的嵌套
1什么是逻辑值
2什么是关系运算
注意:
关系运算尽量避免两个浮点数做相等比较
3逻辑运算符
4if语句合用if语句构成的选择结构
(1)语句形式
5条件表达式
条件运算符 ?
条件表达式形式:表达式1?表达式2:表达式3
含义:当表达式1非零时,运算表达式2的值,否则运算表达式3的值
6swich语3句及break
(1)语句形式
表达式可以是整型表达式,也可以是字符型表达式
7goto语句(非大纲考点要求)
第五章 循环结构
大纲分析
1 for循环结构
2 while 和do -while循环结构
3 continue 语句和break语句
4循环的嵌套
1while循环语句
(1)一般形式
while(表达式)循环体
2do-while循环语句
do 循环体 while(表达式)
3while与do-while的比较
(1)形式比较
while(表达式)循环体
do循环体while(表达式)
(2)最少循环次数
(3)程序举例
计算1+。。。+100的值
4for语句循环结构
(1)for循环一般形式
for(表达式1:表达式2:表达式3)
5嵌套循环
重点算法:判断素数(质数)
6break和continue
break跳出switch.循环向下继续运行
continue结束本次循环 继续下次循环
第六章 字符型数据
大纲分析
大纲中只规定了 字符串与字符数组
但本章涉及一下内容:
1字符常量,字符串常量
2字符变量的定义及使用
3字符型与整型数据的换算关系
4转义字符
5字符的输入与输出
1什么是ASCII码
由于计算机只识别二进制,字符转换成固定数字存储。形成一张字符与数字的对照表格。
2什么是字符常量
单引号括起来,中间只有一个字符”a”,’abc’都是不对的
3什么是转义字符常量
单引号括起来,中间由反斜杠开头后跟一个特定字符。