计算机二级课程

举报
资源描述
计算机二级课程第 1 章 程序设计基本概念1.1 程序和程序设计1.1.1 C 程序计算机语言:二进制用 户:自然语言自然语言T英文助记符、数学表达式(C 语 言)少二进制指令(目标文件*.obj)少可执行程序(*.exe)C 源程序(*.c)不能直接执行,只能进行编辑源程序转换为目标文件的过程,叫做“编译compile”目标文件(*.obj)也不能直接执行目标文件转换为可执行程序的过程,叫做“连接link”.c-compile-*.obj-link *.exe1.1.2 程序设计1.2 算法算 法:为解决某个问题而采用的确定且有限的步骤。算法的特性:1)有 穷 性:算法应该在有限的步骤内结束。2)确 定 性:算法不能有二义性,对于相同的输入能得到相同的输出。3)可 行 性:算法的步骤可以实现。4)拥有足够的情报:算法有0 个或多个输入;1 个或多个输出。1.3 结构化程序设计和模块化结构1.3.1 结构化程序C 语言程序有3 种基本结构:顺序结构选择结构(分支结构)循环结构(重复结构)1.3.2 模块化结构自顶向下、逐步求精、模块化C 语言使用“函数”实现模块化。C 语言是函数的语言。C 程序的基本组成单位是函数。第 2 章 C 程序设计的初步知识2.1 简单C 语言程序的构成和格式include main()double a,b,area;a=1.2;/*将矩形的两条边分别赋给a 和 b*/b=3.6;/*计算矩形的面积*/area=a*b;printf(,a=%f,b=%fJarea=%fn,Ja,bJarea);)说 明:1、main是主函数名。C 语言程序必须使用main作为主函数名,其后需接一对圆括号()表示其函数身份。main函数是C 程序唯一的入口,也是程序唯一的出口,C 程序从main函数的第一条语句开始执行。故,C 程序有且仅有一个main函数。2、C 程序的语句以分号结尾。一般一条语句作为一行,但可以在一行上写多条语句,也可以将一条语句写成多行。语句需写在。表示的函数体内。3、在程序中可以使用I*1符号表示注释,被注释的部分将不会在程序执行过程中起作用,仅仅作为程序的说明。int a=3,b=5;a=10;I*赋值*/b=20;a+b的值是_30_int a=3,b=5;a=10;I*赋值 b=20;*/a+b的 值 是 _ 152.2 标识符、常和变2.2.1 标识符标识符包括:变量名、数组名、函数名。1 )由字母、数字、下划线组成;2)数字不能开头;3)不能和关键字重名。int(整 型)float(单精度实型)double(双精度实型)char(字符型)sizeof(求字节数)short(短整型)long(长整型)area PI a_array x100 _100 x(正 确)a$b a+x.y 100 x(错 误)变量名可以叫做main、printf标识符对大小写敏感。int(错 误)Int(正 确)2.2.2常量常 量:在程序执行过程中,值不发生改变的量。12-1 0(整型常量)3.14-2.7 0.0(实型常量)A b(字符型常量)NCRE Wuhan(字符串常量)2.2.3符号常习惯上,常量使用大写字母表示,变量使用小写字母表示,但不是必须的。#define N 10main()(N=N*2;/*不能对符号常量 赋 值*1printf(%dn,N);)main()int n=10;n=n*2;/*可以对变量赋值*/printf(n%dnH,n);)#define PI 3.14main()(double r,s;r=5.0;s=r*r*PI;printf(,s=%fn,Js);)变量名可以叫做define、include2.2.4变变 量:在程序执行过程中,值可以发生改变的量。变量必须“先定义,后使用”定义时,需指明变量的数据类型和变量名。2.3 整型数据2.3.1 整型常十进制:32767-32768 0八进制:由*0”引导的整数。010 011 0234 0386(错误)十六进制:由“Ox”或“0 X*|导的整数。0 x123 Oxaa Oxlff09 a-10 b-11.f-15长整型常量:40000L 40000I无符号型常量:100U 100u-12U(错 误)2.3.2 整型变int a;int a,b,c;2.3.3 整型数据的分类long(int)4 字节int 4 字节short(int)-32768 32767 2 字节signed 有正有负unsigned正整数unsigned short 0 655352.3.4整型数据在内存中的存储形式位(b it):二 进 制 位 100110 最小单位字 节(byte):1 byte=8 bit 最基本单位2.4 实型数据2.4.1 实型常小数形式:0.123.123 3.0 3.在实数的整数部分或小数部分为0 时,可将为0 的部分省略,但小数点不可省。0.0 0.0,(错 误)指数形式:3E2-3*102-300 3.15e3 3.15e-1E(e)的前面必须有数字,后面必须为整数。E2 2e 3e1.0(错 误)2.4.2 实型变float(单精度实型)4 字节double(双精度实型)8 字节2.5 算术表达式2.5.1 基本的算术运算符整数和整数运算,结果为整数参与运算的数字中,有一个实数,结果结果就为实数+-*/注 意:在什么情况下运算结果才有小数部分。%求余数。求余数运算两边必须为整数。绝对值相除得余数,符号取决于被除数。main()printf(H%dn,4%3);1printf(n%dn,4%-3);1printf(n%dn,-4%3);-1printf(,%dn,-4%-3);-1)2.5.2 运算符的优先级、结合性和算术表达式*/%+-2.5.3 强制类型转换表达式(目标类型)需转换变量(int)bint(b)(错 误)2.6 赋值表达式2.6.1 赋值运算符和赋值表达式注 意:1 )赋值运算的优先级很低,往往需要在所有运算完成后,再进行赋值。2)赋值运算理解上,从右向左进行。3)赋值后,右侧变量值不变,左侧变量值更新。4)赋值号左侧只能是变量,不能是常量或表达式。5)赋值表达式整体的值,等于被赋值变量的值。main()(int a,b;printf(,%dn,(a=3)+(b=5);)2.6.2复合鼠值表达式a+=1 f a=a+1a*=2 a=a*2a*=1+2 a=a*(1+2)main()int a=5;a+=a-=a+a;printf(n%dnn,a);2.6.3赋值运算中的类型转换以被赋值变量的类型为准。int a;a=3.5;3float a;a=3;3.02.7 自加、自减运算符和逗号运算符2.7.1 自加运算符”+”和自减运算符“一”独立构成语句时,i+和+i是等价的。j=i+;f j=i;*先取值,后自增i=i+1;j=+i;i=i+1;3 先自增,后取值j=i;main()int i=5;printfC%dn,i+);5printf(,%dn,+i);7)2.7.2逗号运算符和逗号表达式逗号运算符的优先级最低;从左至右运行每个表达式;整个逗号表达式的值,等于最后一个表达式的值。main()(int i,j,x;x=(i=3,j=4);printf(%dn,x);4)main()(int i,j,x;x=i=3,j=4;printf(%dn,x);3)第 3 章顺序结构3.1 赋值语句在赋值表达式后加上“;号,构成赋值语句a=10 赋值表达式a=10;赋值语句3.2 数据输出3.2.1 printf函数的一般调用形式printf(a=%dn,a);1 )非格式说明符部分原样输出。如:a=2)转义符进行转义。n 换行t 下一制表位b 退格r 回到开头3)格式说明符输出变量值。3.2.2 printf函数中常用的格式说明%d%ld%u%o%x%f%lf%e%g3.2.3使用printf函数时的注意事项3.3 数据输入3.3.1 scanf函数的一般调用形式scanf中格式说明符的相关规则,和 printf相同。scanf中变量前需要加&号(取地址scanf(%dn,&a);3.3.2 scanf函数中常用的格式说明3.3.3 通过scanf函数从键盘输入数据scanf中非格式说明符部分,在输入时应原样输入。scanf(“d,%d”,&a,&b);10,20scanf(a=%d,%d,&a,&b);a=10,20连续格式说明符,应使用空格、制表符、回车分隔数据。scanf(%d%d,&a,&b);10 20按指定宽度输入数据。scanf(%2d%3d%d,&a,&b,&c);123 456 789printf(%d,%d,%dn,a,b,c);12,3,456跳过某个输入数据。格式说明符中*号,表示跳过此位置的输入。a=b=c=5;scanf(%d%*d%d,&a,&b);1 2 3printf(%d,%d,%dn,a,b,c);1,3,53.4 复合语句和空语句3.4.1 复合语句在 C 语言中,可以使用 号将多条语句括起来,形成复合语句。复合语句在逻辑上当做一条语句处理。3.4.2 空语句;号是构成C 语言语句的重要符号,若只有一个;号也能构成语句,它是一个空语句。空语句本身不做任何操作,故一般不会影响程序结果,而不是完全不会影响程序结果。第 4 章选择结构4.1 关系运算和逻辑运算4.1.1 C 语言的逻辑值C 语句中没有逻辑类型。在程序中使用0 值表示假,使用非0 值表示真。main()(if(O)printf(yesn);else printf(nonn);)nomain()(if(-1)printf(yesn);else printf(Hnonn);)yes在程序计算结果时,用 0 值表示假,用 1 表示真。main()printf(H%dn,2=32);0)=1);14.1.3逻辑运算符和逻辑表达式&逻 辑 与“且”两边同时为真,结果为真。|逻 辑 或“或”两边有一边为真,结果为真。!逻辑非原来真,变为假。原来假,变为真。main()printf(n%dnn,43&3=2);0printf(,%dn,43|3=2);1printf(,%dn,!(43);0)逻辑运算的中断:&运算前段为假,后段不运行。main()(int x=3,y=5;(x=0)&(y=8);printf(,%d,%dn,x,y);0,5)II运算的前段为真,后段不运行。main()(int x=O,y=O;x+|y+;printf(%d,%dn,x,y);1 ,1)运算符的优先级:单目 算术运算符 关系运算符 逻辑运算符 赋值运算符运算符!*/%+-=3&2+5|7*3 14.2 if语句和用if语句构成的选择结构4.2.1 if 语句计算if的括号内表达式的值是否为真,若为真则运行if的子句)main()(int x;scanf(n%d,&x);if(x%2=0)printf(偶数n“);)注 意:1 )if只能控制最近的一条语句。逗号main()int x;scanf(H%d,&x);if(x%2=0)x+;x+;printf(H%dn,x);)2)若有多条语句作为if的子句,需用 构成复合语句。main()(int a=3,b=6,t=0;if(a=b)t=a;a=b;b=t;printf(H%d,%dn,a,b);6,03)在 if的括号后不用加了号,否则会影响程序的逻辑。main()int x=8;if(x=6);x+;printf(dn”,x);9)4)i f 的条件通常是一个关系表达式,但要注意其他情况,特别是赋值表达式冒充关系表达式的情况。main()(int x=8;if(x=6)x+;printf(dn”,x);7)if-else计算if的括号内表达式的值是否为真,若为真则运行if的子句,否则运行else的子句。main()int x;scanf(H%d,&x);if(x0)
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关资源
正为您匹配相似的精品文档
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号