c程复习提纲
C语言程序设计复习提纲

C语言程序设计复习提纲第一章1.了解计算机程序设计语言的发展历史与分类.2.掌握C语言程序的基本结构, main函数:(1) 每个C语言程序都是由函数组成的, 构成C语言程序的基本单位是函数;;(2) 每个C语言程序中至少要包含一个函数, 那就是main函数;(3) 任何程序都是从main函数开始执行到main结束;(4) 不像其他一些程序设计语言, C语言的函数中不能再定义函数.3.掌握标识符, C语言的关键字, C语言变量的命名规则, 注意C语言中区分大小写字母.4.运算符与表达式(1) 了解常用运算符功能,操作数的个数(即是几目运算) 以及优先级与结合方向;(2) 熟练掌握算术运算符“/”和“%”的用法, 特别注意“/”作用在整型和实型数上的差别;(3) 熟练掌握运算符“++, --”的用法及其放在变量前面与后面的区别;(4)掌握各种赋值运算符的用法及其副作用;(5) 掌握对复杂表达式求值时注意各种运算符优先级与结合方向.第二章1.了解C语言数据类型的分类, 基本数据类型的宽度(即占用内存的大小) 与sizeof运算符, 数据的定点与浮点表示法以及各种类型数据在计算机中存放方式(整型以定点方式存放; 字符类型是以ASCII码方式存放, 与整型数据通用; 实型以浮点方式存放) 等常识. 如果已知各种整型数据在内存中占用的字节数, 会计算这种数据类型所能表示数的范围.2.掌握二进制, 十进制, 八进制, 十六进制之间的转换.3.掌握C语言各种常量的书写规则.4.掌握强制类型转换运算符的使用方法.5.熟练掌握输入输出语句printf与scanf的用法, 掌握常用转义字符和格式说明符, 注意printf函数的参数计算顺序(其实任何函数参数的计算顺序都是从右到左).第三章1.了解算法的三种基本控制结构: 顺序结构, 选择结构和循环结构.2.了解算法的三个基本性质: 有效性, 确定性和有穷性.3.了解算法描述的工具流程图, N-S图与伪代码的基本用法.4.掌握C语言的关系与逻辑运算:(1) C语言中用非0表示逻辑真值, 用0表示逻辑假值;(2) 关系与逻辑运算的值只有0和1两种;(3) 注意C语言中关系运算与数学上的关系运算的区别;(4) 特别注意逻辑运算符&& 和|| 的副作用: 当由左端的值可以确定整个表达式的值时, C编译器将不再计算右边的表达式.5.掌握各种选择语句的用法, 熟练掌握与其有关的编程.6.掌握三种循环语句的用法, 熟练掌握与其有关的编程.第四章1.掌握函数的概念与函数的定义, 调用和声明的格式以及什么情况下需要使用声明, 形参与实参的概念, 参数传递规则, 传值与传址. (注意: 函数的类型即是函数返回值的类型, 若未指定, 则为int 型)2.了解递归函数的概念.3.了解变量的存储类别, 全局变量与局部变量, 动态变量与静态变量的概念.4.掌握各种类型变量的生存期与作用域. 掌握不同存储类别的变量的定义方法.5.熟练掌握静态局部变量的用法及其与自动变量的区别. (注意: 一个局部变量如果未指明存储类别, 其隐含的存储类别为auto类型).6.掌握宏命令的定义与使用方法. 熟练掌握带参宏的定义与副作用.第五章1.掌握数组的概念与定义方法, 数组初始化的方法, 数组引用的方法, 使用数组时注意下标不要越界(C语言数组的下标取值范围是0到数组大小减1).2.熟练掌握一维数组和简单的二维数组编程.3.了解数组名在C语言中的特殊含义, 掌握数组作为函数参数时参数传递的方式.4.掌握字符串的概念及其与字符数组的关系. 注意C语言中字符串占用的存储空间比它的实际长度多1, 因为任何字符串都以字符串结束标记…\0‟结尾.5.掌握字符串的初始化的方法, 字符串处理函数: gets, puts, strlen, strcpy, strcat,strcmp的用法.第六章1.了解地址与指针的概念: 任何程序实体(变量, 函数等) 的指针其含义是指其地址.2.掌握指针变量的定义, 初始化和引用的方法.3.掌握指针的赋值、比较、相减、与整数相加减等运算以及运算符“*”和“&”的互逆性.4.熟练掌握指针与数组的关系. 尤其注意一、二维数组元素的指针表示法与下标表示法的关系, 能够熟练的相互转换.5.掌握指针与函数的关系, 能够运用指针参数和返回指针的函数进行编程, 特别是要熟练掌握书中提到的各种字符串处理函数的实现方法.6.了解函数指针的基本用法.第七章1.了解结构体的概念, 掌握结构体类型与变量的定义方法, 结构体的大小与存储方式, 掌握结构体变量的使用方法, 运算符. 与-> 的用法.2.了解共用体的概念, 掌握共用体类型与变量的定义方法, 共用体的大小与存储方式.3.掌握结构体与数组, 指针, 函数的关系.4.链表的基本概念, 优缺点(与数组比较).5.了解枚举类型的概念与枚举类型变量的定义及使用方法.第八章1.了解C语言中文件的分类方法: 文本文件与二进制文件.2.了解文件操作的基本步骤, 了解函数fopen, fclose, fgetc, fputc, fgets, fputs,fread, fwrite, fscanf, fprintf 的功能与用法. 了解文件结束标记EOF与feof函数.。
C 复习提纲

C程序设计复习提纲1.C语言调试运行步骤F2 存盘;ctrl+f9 运行;alt+f5 切换;ctrl+break 强行终止程序运行2.算法的定义及其特点3. C 语言的基本数据类型包括?整型;字符型;实型4.结构化程序设计的几种基本结构?顺序结构,分支结构,循环结构5.什么是常量、符号常量、变量,变量命名规则6.整型、浮点型(实型)分别包括那几类,各自的定义方法占用存储空间7.转义字符;字符变量的定义与使用8.各种运算符与表达式;各种数值型数据间的混合运算、类型转换;各种运算的优先级;算术、关系、逻辑、条件运算,赋值、逗号运算,各种表达式求值9.构成选择结构程序的语句及其各种格式;10.构成循环结构程序的语句及其格式;当型循环与直到型循环的区别;各种循环语句的执行方法及循环过程;11.各种控制语句及其作用;break 与continue 的区别12.一维、二维、字符数组的定义及使用方法13.C程序、函数的基本结构及定义方法;14.几个基本的输入输出、字符及字符串处理、数学函数的使用,如:printf() scanf() putchar() getchar() puts() gets() strcmp() strlen(“China”)15.几个经典算法及程序(1)求几个数中的较大者(或较小者)(参考教材P69例题4.1;P72例题4.3;P74例题4.4)(2 ) 交换两个变量的值(提示:设置中间变量暂存数值)(3)求符合某规律的数问题,如:1~n 之间的奇数(或偶数);(提示:奇数i % 2 !=0,偶数i % 2 = =0)1~n 之间不能被m 整除的数;(参考教材)1~100 内的素数;(参考教材)判断一年是否闰年(参考教材P71例4.2)(4)求和类问题,如:1~100 的和;(参考教材P84例4.14)1!+2!+3!+……+n!;(参考教材)1+1/2+1/3+……+1/n(参考教材P88例题4.17)(5)几何图形面积体积计算问题,如:圆面积、球表面积和体积、圆柱表面积和体积等(参考教材P17例题2.1; P65习题3.7;实验6_1)(6)分段函数计算问题,如:x (x<1)y= 2x-1 (1<=x<10)3x-11 (x>=10)(参考实验6_3)(7)ASCII 码应用类问题,如:字母大小写转换;(参考教材)题型及分值安排1.单选15个小题,每题2分,共计30 分;2.填空4 小题,每题5分,共计20 分;3.程序改错2 小题,每题5分,共10 分;4.编程题4 小题,共计40 分。
C程序复习纲要

C语言复习提纲第一章1.程序设计语言:机器语言、汇编语言、高级语言。
2.高级语言翻译成机器语言的两种方式:编译方式、解释方式。
3.算法+数据结构=程序4.结构化程序设计的三种基本结构:顺序结构、分支(选择)结构、循环结构5.算法的表示方法:自然语言、传统的程序流程图、N-S流程图。
6.结构化程序设计的32字原则:7.C语言的产生及发展:UNIX操作系统8.C语言的特点P13页:9.C语言由函数组成,有且仅有一个main函数。
10.函数:说明部分、函数体。
11.一条复杂语句分行书写,用反斜杠(\)续行。
12.注释用/*……*/第二章1.单字符输入/出:getchar()、putchar(字符变量)。
2.字符串:gets(字符数组名)、puts(数组名)。
3..格式化输入:scanf(“格式控制符”,地址列表);格式控制符:%c、 %d 、 %o 、 %x、 %s、 %f◆若输入long型、double型应加l,如%ld、 %lo、 %lf◆格式%s输入字符串不包含空格,且对应地址表列是字符数组名。
◆默认分隔符:空格、回车、Tab键(也可按域宽截取)◆格式控制符间不宜加其它字符,如加入其它字符,输入时应原样输入,否则数据接收错误。
如:scanf(“%d, %d”,&a,&b);输入数据时两数据间要有逗号;scanf(“%d %d”,&a,&b); %d间有两个空格,则输入数据时至少有两个空格。
◆输入函数中%f格式不能带小数,如:sc anf(“%7.2f”,&a)是错误的。
◆%c格式输入单字符,空格字符和转义字符都作为有效字符接收。
◆%*d表示跳过它对应的输入数据。
4..格式化输出:printf(“格式控制符”,输出列表);◆格式控制符部分可加入其它字符,原样输出。
如:提示语或使输出结果清楚显示◆输出列表:可以是变量、常量、表达式、函数调用等。
◆转义字符:P19页,以斜杠(\)开始,作为一个字符,如求字符串长度:“jk\\gk\bl\0k\nlj”,长度为7。
c程复习提纲

} case 2: a++;b++;break; } printf(“a=%d,b=%d\n”,a,b); 4、循环结构 1)三种循环结构: a)for() ; while(); do- while()三种。 b)for循环当中必须是两个分号,千万不要忘记。 c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死 循环。 d) do-while()循环的最后一个while();的分号一定不能够丢。(当心上机 改错),do-while循环是至少执行一次循环。 复习:三个循环结构的执行过程。 while 是先判断后执行。do….while是先执行后判断。 for() 先执行表达式1,判断表达式2,执行循环体中的内容,在执行表 达式3. 例题: 2) break 和 continue的差别 记忆方法: break:是打破的意思,(破了整个循环)所以看见break就退出真个一 层循环。 continue: 是继续的意思,(继续循环运算),但是要结束本次循环, 就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环 条件,进行新一轮的循环。 3)嵌套循环 就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的 计算,一般记住两层是处理二维数组的。 4) while((c=getchar())!=’\n’) 和 while(c=getchar() !=’\n’)的差别 先看a = 3 != 2 和 (a=3)!=2 的区别: (!=号的级别高于=号 所以第一个先计算 3!=2) 第一个a的数值是 得到的1;第二个a的数值是3。 考试注意点: 括号在这里的重要性。 main() { int i=0,s=0; for(;;) { if(i==0||i==5) continue ;
else 是与最接近的if且没有else的相组合的。嵌套的if….else语句的配对 的原则:else总是和之前的最近的没有和其他的else成对的if成对。 main() { int a=5,b=4,c=3,d=2; if(a>b>c) printf("%d\n",d); else if((c-1>=d)==1) printf("%d\n",d+1); else printf("%d\n",d+2); } 执行后输出结果是( )。 A) 2 B) 3 C) 4 D) 编译时有错,无结果 4)条件表达式: 表达式1 ?表达式2 :表达式3 注意是当表达式1的值为:非0时候 是表达式2的数值,当为0是就是 表达式2的数值。 考试口诀:真前假后。 5)switch语句: a) 一定要注意 有break 和没有break的差别,书上(54页)的两个例 子,没有break时候,只要有一个case匹配了,剩下的都要执行,有 break则是直接跳出了swiche语句。 b) switch只可以和break一起用,不可以和continue用。 c) switch(x) x:是整型常量,字符型常量,枚举型数据。 {case 1: …. case后面的只能是常量不能是变量 。 case 2: …. } 注意:break可以用在循环语句中,也可以用在switch语句中。但是 continue语句只能用在循环语句中。 例题: main() { int x=1,y=0,a=0,b=0; switch( x) { case 1: switch(y) {case 0: a++;break; case 1:b++;break;
C语言程序设计复习大纲.

C语言程序设计复习大纲一、复习目标(1掌握C的基本语法结构;(2掌握基本的程序设计算法和技巧;(3具备初步的高级语言程序设计能力二、基本考试题型(1选择题;(2填空题;(4阅读程序题;(5编程题。
三、程序设计语言(C的基本要素1、数据类型与表达式①、基本数据类型主要是int、float、double、char的常量和变量的说明方式,定义于基本数据类型之上的各种运算。
重点是以下运算及表达式::算术运算(含自增和自减操作、逻辑运算、关系运算、条件运算、赋值运算。
②、混合运算含混合运算的表达式中各种运算的优先级及结合方向。
2、语句结构①、赋值的方法②、逻辑判断的控制·选择语句(if语句:if语句的形式,if语句的嵌套·多路选择语句(switch语句、break③、循环语句·指定次数的循环(for循环、do循环、do-while循环的形式和使用·循环结束条件·循环控制变量的使用·指定次数循环的提前结束方法3、函数①、C程序的总体结构②、函数的定义、调用形式③、函数参数的形式和传递方式④、函数的嵌套调用⑤、全局变量和局部变量的区分和作用。
变量的作用域和生命期。
注意:static对全局变量和局部变量的不同作用。
4、数组·一维/多维数组类型的定义,数组元素的引用和数组变量的初始化方式。
·字符串的定义、结构和使用。
注意:字符串结束标志和内存占用、’\X’的含义和内存占用(X指n、t、代码值等5、指针、结构·指针类型的说明,指针的含义、使用·结构类型的定义、元素的引用和结构变量的初始化。
6、数据的输入/输出①、基本类型数据的输入/输出方法重点是:printf/scanf、getc/putc、gets/puts、fgetc/fputc、fprintf/fscanf、fgets/fputs 等输入/输出函数②、文件·文件的含义和定义方式·文件的打开与关闭方式·文件的基本读/写操作·文件状态的检测(文件结束、读/写出错等·文本文件与二进制文件的区别和一般的文本文件读/写程序结构7、其它①、命令行参数(argc, argv的说明,含义和使用②、编译预处理了解编译预处理的含义及宏定义(含宏函数、文件包含等的使用方法。
C复习提纲

《高级语言程序设计》提前重考复习提纲课程的全部内容可分为五大模块:(1)基础知识(2)三种基本结构及流程控制(3)函数(4)数据类型(5)文件下面按这五大模块分别作回顾模块一:基础知识部分一、需要掌握的知识要点:(1)C语言程序的组成:由一个或多个文件组成,每个文件由一个或多个函数组成,函数是C程序的基本单位,一个程序有且只有一个main( )函数,这是任何程序必不可少的函数(2)从C的源程序到可执行的文件的全过程:编辑、编译、链接最后才能运行,各阶段生成的文件扩展名分别为:.c、.obj、.exe,头文件的扩展名:.h(3)函数的组成:函数首部和函数体,函数中可有注释行/* …*/ (4) C程序中的六种符号:关键字、标识符、运算符、分隔符、其它符号、数据(包括常量和变量)①熟记所有常见关键字,关键字中最多的是流程控制语句中的关键字,如:for、while、do、if、else、switch、case、default、break、continue、goto、return等,还有一大类是变量类型及存储类别的,如:int、short、long、signed、unsigned、char、double、float、enum、union、struct、typedef、static、register、auto、extern,还有一些如:void 、sizeof 等;②能正确定义标识符(在程序中,符号常量名、变量名、函数名都是用户自定义标识符),自定义标识符的正确与否可从以下几方面判断:①是否以字母或下划线开头;②是否是只有字母、数字、下划线的序列③是否选用了关键字练习:1、下列哪一个是不合法的用户自定义标识符______。
A、_do_whileB、beginendC、forD、ELSE(答案C)(5)表达式、运算符及其优先级、结合方向及特殊的运算规则:34种运算符的优先级关系大致为: [ ]、( )、->、.---→一元运算符---→乘除类算术运算符---→加减类算术运算符---→移位运算符---→有大小关系的关系运算符---→等与不等的关系运算符---→位运算符---→逻辑与---→逻辑或---→条件运算符---→各种赋值运算符---→逗号运算符。
c语言复习提纲
题型一、单项选择题(共40分,每题2分,共20小题)。
二、填空题(共20分,前面各小题每空1分,后两题每空2分)。
三、程序阅读题(共12分,每题3分,共4题)。
四、程序改错题(共8分,每处2分,共4处有错)。
五、程序设计题(共20分,每题10分,共2题)。
c程序设计语言复习提纲说明:建议学生按提纲提供的知识要点,回顾这些内容是否掌握,再阅读教材相关部分内容,要注重知识的理解与应用。
当然学生可根据自己的学习情况和学习习惯,选择适用自己的学习方法。
c程序设计的常用算法一、累加求和、求阶乘等简单算法此类问题都要使用循环,要注意根据问题确定循环变量的初值、终值或结束条件,更要注意用来表示累加求和、阶乘的变量的初值。
例p66 4-27 ; P68 3; P101 例6-10二、求两个整数的最大公约数:辗转相除法求最大公约数。
P103 例6-12三、排序问题:选择法排序(升序):P71 例5-3四、矩阵(二维数组)运算(1)矩阵周边元素求和for (I=0;I<n;I++)for(j=0;j<m;j++)if(I==0)||(j===0)||(I==n)||(j==m)s=s+a[I][j];(2)矩阵转置:P78 例5-7五、迭代法算法思想:对于一个问题的求解x,可由给定的一个或多个初值,根据某一迭代公式得到一个新的值。
例:求斐波那契数列前40项p70六、字符串的一般处理1.字符串的连接:p85 例5-122.字符串中某特定字符的删除、统计:p84 例5-11 p66 例4-263.字符串中大小写字母相互转换:p82 例5-104.字符串的复制:p143 例8-18七、穷举法穷举法(又称“枚举法”)的基本思想是:一一列举各种可能的情况,并判断哪一种可能是符合要求的解。
例:百元买百鸡p65例4-25;例:求水仙花数p59 例4-20八、判断素数只能被1或本身整除的数称为素数基本思想:把m作为被除数,将2—INT (m)作为除数,如果都除不尽,m就是素数,否则就不是。
C程序设计语言复习提纲.doc
第一部分C程序设计语言复习提纲 1一. 数据的定义 1二. 运算及流程控制 3三. 程序结构和函数 4四.数据的输入和输出 5五.编译预处理 6六.面向对象程序设计初步 6第一部分C程序设计语言复习提纲一. 数据的定义(一)数据类型1. 基本类型基本类型指整型(int)、实型(float、double)和字符型(char)。
(1)常量①八进制整数:0123 十六进制整数:0x123 长整型常量:123L②实数的浮点表示法:123.0 实数的科学计数法:1.23e2③字符的转义序列:’\n’(换行)、’\065’(’A’)、’\x61’(’a’)④符号常量:#define PI 3.14 常用符号常量NULL(空值0)、EOF(文件结束符-1)(2)变量①变量的定义:int a;变量名a为一个符号地址,编译连接时对应一个内存地址,该地址代表的内存单元能够存放一个整数。
②变量的初始化:a=3;通过变量名a找到相应的内存地址,将数据3保存在此内存单元中。
2. 构造类型构造类型包括数组和结构。
(1)数组①一维数组的定义:int a[5]; 一维数组的初始化:int a[5];={1,2,3,4,5};②二维数组的定义和初始化:int b[2][3]={1,2,3,4,5};③数组元素的引用:a[0]=1; b[1][2]=0;④一维字符数组(字符串):char c[]=”abc”;(4个元素,c[3]=’\0’)⑤二维字符数组(字符串数组):char str[3][20]={“China”,”USA”,”Russia”};(2)结构①结构类型的定义:struct rectangle{float length;float width;};②结构变量的定义和初始化:struct rectangle rec1={20.0,10.0};③结构变量成员的引用:rec1.length=25.0;3. 指针(1)指针和地址的概念变量名 a p 指针变量变量值(内存单元内容)指针变量的值(地址)内存单元地址1000(2)指针变量的定义和初始化int a,*p; p=&a;(3)通过指针引用指向实体*p=10;4. 构造类型和指针类型的混和定义及应用(1)指针、数组和地址间的关系①一维数组int a[5]={1,2,3,4,5}; int *p=a; /* p=&a[0]; 首地址*/a[i]、*(p+i)、*(a+i)等价,&a[i]、p+I、a+i等价。
超全C语言程序设计期末总复习冲刺总结提纲教学PPT带练习题
基本类型
整型int
双精度型double
8个字节
1个字节
(数据类型是用来类型声明的):
double i, x;//变量
int a[10];//数组
int *p;//指针
int max();//函数
在使用之前都需要类型声明
06
C语言运算符(选择题重点)
“先计算后判断逻辑条件在中间,赋值逗号最后算”
优先级由高到低
sizeof
• 描述数据类型定义:void
• 描述数据储存类型:auto static
03
常量
#include <stdio.h>
void main()
常量:在程序执言过程中,其值不能被改变的量
{
int n=253,a,b,c,x;
a=n/100;
b=(n-100*a)/10;
c=n-100*a-10*b;
实型常量:
字符常量
字符常量:
以‘’包围的单个字符 例如: ‘A’、‘d’、‘2’、‘!’、‘#’
值为对应的
码值
要记住‘A’-65 ‘a’-97 ‘0’ -48
。
字符串常量: 以“”将一串字符括起来 例如:”hello” “0135” ”a”
字符串结束标志: ‘\0’—系统自动添加到字符串末尾
字符串实际长度=实际字符串个数加一
输出 243
输出 □□□243
输出 243
输出 243□□□
输出 000243
44
那如果,x=123.45678
但是让保留两位小数呢?
Printf(“%.2f”,&x);
• 与字符有关的输出
#include<stdio.h>
C语言程序设计复习提纲
C语言程序设计复习提纲一、Visual C++6.0开发环境1、了解Visual C++6.0的安装过程;2、了解Visual C++6.0的工作界面,菜单和工具栏的使用;▲二、掌握C语言程序运行的过程1、编辑:是指把按照C语法规则编写的程序代码通过编辑器(Visual C++ 6.0,Turbo C 3.0)输入计算机,并存盘。
在存盘时,C源文件的扩展名为 .c2、编译:对源程序进行编译,即将源程序转换为扩展名为.obj的二进制代码;即生成该源文件的目标代码。
3、连接:将用户程序生成的多个目标代码文件(.obj)和系统提供的库文件(.lib)中的某些代码连接在一起,生成一个可执行文件(.exe)。
4、执行:执行生成的可执行代码,并输出结果。
5、调试:是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。
▲三、结构化程序设计的基本概念1、概念以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,将原来较为复杂的问题化简为一系列简单模块的设计,任何模块都可以使用一些基本的结构来实现,任何复杂的程序,都可以使用这些基本结构按一定的顺序组合起来,这些基本结构的特点都是只有一个入口、一个出口,这样的程序设计方法称为结构化程序设计。
2、基本思想结构化程序设计的基本思想是采用"自顶向下,逐步细化、模块化设计、结构化编码"的程序设计方法和"单入口单出口"的控制结构。
自顶向下、逐步细化的程序设计方法从问题本身开始,经过逐步细化,将解决问题的步骤分解为由基本程序结构模块组成的结构化程序框图;"单入口单出口"的思想认为一个复杂的程序,如果它仅是由顺序、选择和循环三种基本程序结构通过组合、嵌套构成,那么这个新构造的程序一定是一个单入口单出口的程序。
据此就很容易编写出结构良好、易于调试的程序来。
3、三种基本结构⑴顺序结构⑵选择结构⑶循环结构4、三种基本结构的特点⑴只有一个入口⑵只有一个出口⑶每一个基本结构中的每一部分都有机会执行到⑷结构内不存在“死循环”5、设计原则⑴自顶向下⑶逐步细化⑶模块化设计⑷结构化编码6、结构化程序设计方法⑴要求把程序的结构规定为顺序、选择和循环三种基本机构,并提出了自顶向下、逐步求精、模块化程序设计等原则。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大体上必须清楚的:2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。
byte 是指字节, 一个字节 = 八个位.5)一定要记住二进制如何化成十进制。
概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。
C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、每个C语言程序中main函数是有且只有一个。
3、在函数中不可以再定义函数。
4、算法的是一定要有输出的,他可以没有输入。
5、break可用于循环结构和switch语句。
6、逗号运算符的级别最低(一)、C语言部分1、C语言的基础知识1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf 都不是关键字。
迷惑你的地方If是可以做为用户标识符。
因为If中的第一个字母大写了,所以不是关键字。
2)实型数据的合法形式:2.333e-1 就是合法的,且数据是2.333×10-1。
考试口诀:e前e后必有数,e后必为整数。
.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。
一般考试表示单个字符错误的形式:'65' "1"字符是可以进行算术运算的,记住:'0'-0=48大写字母和小写字母转换的方法:'A'+32='a' 相互之间一般是相差32。
4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。
碰到这种情况,不要去管,一样做题。
掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。
5)转义字符的考查:在程序中int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x必须存在。
在程序中int a = 06d, 是一个八进制的形式。
在转义字符中,’\x6d’才是合法的,0不能写,并且x是小写。
‘\141’是合法的,0是不能写的。
‘\108’是非法的,因为不可以出现8。
6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左。
7)强制类型转换:一定是(int)a 不是int(a),注意类型上一定有括号的。
注意(int)(a+b)和(int)a+b 的区别。
前是把a+b转型,后是把a转型再加b。
8)表达式的考查:是表达式就一定有数值。
赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。
自加、自减表达式:假设a=5,++a(是为6),a++(为5);运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,再放到变量a中。
进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。
考试口诀:++在前先加后用,++在后先用后加。
逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。
(2,3,4)的表达式的数值就是4。
例题:main(){int x,y,z;x=y=1;z=x++,y++,++y;printf(“%d,%d,%d\n”,x,y,z);}程序运行后的输出结果是A) 2,3,3 B) 2,3,2 C) 2,3,1 D) 2,2,19)位运算的考查:会有一到二题考试题目。
总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。
例1:char a = 6, b; b = a<<2; 这种题目的计算是先要把a的十进制6化成二进制,再做位运算。
例2:一定要记住,异或的位运算符号。
0 异或1得到1。
0异或0得到0。
两个女的生不出来。
1 异或1得到0。
两个男的生不出来。
考试记忆方法:一男(1)一女(0)才可以生个小孩(1)。
例3:在没有舍去数据的时候,<<左移一位表示乘以2;>>右移一位表示除以2。
10)018的数值是非法的,八进制是没有8的,逢8进1。
11)%符号两边要求是整数。
不是整数就错了。
12)三种取整丢小数的情况:1、int a =1.6;2、(int)a;3、1/2;3/2;13)字符型和整数是近亲:char a = 65 ;printf(“%c”, a); 得到的输出结果:aprintf(“%d”, a);得到的输出结果:652、输入和输出1)printf函数的格式考查:%d对应整型;%c对应字符;%f对应单精度等等。
宽度的,左对齐等修饰。
%ld对应long int;%lf 对应double。
2)scanf函数的格式考察:注意该函数的第二个部分是&a 这样的地址,不是a;scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。
3)putchar ,getchar 函数的考查:char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。
putchar(‘y’)把字符y输出到屏幕中。
4)如何实现两个变量x ,y中数值的互换(要求背下来)不可以把x=y ,y=x; 要用中间变量t=x;x=y;y=t。
5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)这个有推广的意义,注意x = (int)x 这样是把小数部分去掉。
main(){ double hui;int xy;scanf(“%f”,&hui);scanf(“%d”,&xy);printf(“%f,%d”,hui,xy);}如果从键盘上输入的数据的值是:23 回车34.789回车,则最后的输出结果是:3、选择结构特别要注意:c语言中是用非0表示逻辑真的,用0表示逻辑假的。
1)关系表达式:表达式的数值只能为1(表示为真),或0(表示假)当关系的表达是为真的时候得到1。
如9>8这个是真的,所以表达式的数值就是1;2)逻辑表达式:只能为1(表示为真),或0(表示假)a) 共有&& || !三种逻辑运算符号。
b) !>&&>|| 优先的级别。
c) 注意短路现象。
考试经常考到。
d) 要表示x 是比0大,比10小的方法。
0<x<10是不可以的(一定记住)。
是先计算0<x 得到的结果为1或则0;再用0,或1与10比较得到的总是真(为1)。
所以一定要用(0<x)&&(x<10)表示比0大比10小。
3)if 语句else 是与最接近的if且没有else的相组合的。
嵌套的if….else语句的配对的原则:else 总是和之前的最近的没有和其他的else成对的if成对。
main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出结果是()。
A) 2 B) 3 C) 4 D) 编译时有错,无结果4)条件表达式:表达式1 ?表达式2 :表达式3注意是当表达式1的值为:非0时候是表达式2的数值,当为0是就是表达式2的数值。
考试口诀:真前假后。
5)switch语句:a) 一定要注意有break 和没有break的差别,书上(54页)的两个例子,没有break时候,只要有一个case匹配了,剩下的都要执行,有break则是直接跳出了swiche语句。
b) switch只可以和break一起用,不可以和continue用。
c) switch(x) x:是整型常量,字符型常量,枚举型数据。
{case 1: …. case后面的只能是常量不能是变量。
case 2: ….}注意:break可以用在循环语句中,也可以用在switch语句中。
但是continue语句只能用在循环语句中。
例题:main(){ int x=1,y=0,a=0,b=0;switch( x){case 1: switch(y){case 0: a++;break;case 1:b++;break;}case 2: a++;b++;break;}printf(“a=%d,b=%d\n”,a,b);}4、循环结构1)三种循环结构:a)for();while();do- while()三种。
b)for循环当中必须是两个分号,千万不要忘记。
c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。
d) do-while()循环的最后一个while();的分号一定不能够丢。
(当心上机改错),do-while循环是至少执行一次循环。
复习:三个循环结构的执行过程。
while 是先判断后执行。
do….while是先执行后判断。
for() 先执行表达式1,判断表达式2,执行循环体中的内容,在执行表达式3.例题:2) break 和continue的差别记忆方法:break:是打破的意思,(破了整个循环)所以看见break就退出真个一层循环。
continue:是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。
3)嵌套循环就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。
4) while((c=getchar())!=’\n’)和while(c=getchar() !=’\n’)的差别先看a = 3 != 2 和(a=3)!=2 的区别:(!=号的级别高于=号所以第一个先计算3!=2)第一个a的数值是得到的1;第二个a的数值是3。
考试注意点: 括号在这里的重要性。
main(){ int i=0,s=0;for(;;){ if(i==0||i==5) continue ;if(i==6) break;i++;s+=i;}printf(“%d”,s);}A、10B、13C、21D、程序进入死循环5、函数函数:是具有一定功能的一个程序块;是C语言的基本组成单位。