C语言最重要的常考知识点总结

合集下载

C语言知识点完全版汇总

C语言知识点完全版汇总

C语言知识点完全版汇总C语言是一门广泛应用于计算机编程的高级程序设计语言。

它是由丹尼斯·里奇(Dennis Ritchie)在20世纪70年代初开发的,在过去几十年中一直被广泛使用。

下面是C语言的知识点完全版汇总。

一、基本语法1. 注释:C语言中的注释有单行注释和多行注释两种方式。

单行注释使用"//",多行注释使用"/* */"。

2. 变量和数据类型:在C语言中,需先声明再使用变量。

常用的数据类型包括int(整型)、float(浮点型)、char(字符型)等。

3. 运算符:C语言支持各种数学和逻辑运算符,如加减乘除、赋值、比较等。

二、控制流程1. 条件语句:C语言提供if-else语句和switch语句来实现根据条件执行不同的代码块。

2. 循环结构:C语言中常用的循环结构有for循环、while循环和do-while循环,用于重复执行一段代码。

3. 跳转语句:C语言提供了break语句和continue语句用于跳出循环或继续下一次循环的执行。

三、函数1. 函数定义和调用:在C语言中,函数由函数头和函数体组成。

函数头包括函数的返回类型、函数名和参数列表。

调用函数时,需提供函数名和对应的参数值。

2. 递归函数:递归函数是指在函数体内调用自身的函数。

递归函数可以解决一些需要重复执行的问题,如计算阶乘等。

四、数组和指针1. 数组:C语言中的数组是一种存储多个同类型元素的结构。

数组可以通过下标访问和修改其中的元素。

2. 指针:指针是C语言中的一个重要概念,它存储了一个变量或函数的地址。

通过指针,可以实现对内存进行直接操作。

五、字符串处理1. 字符串的定义和初始化:C语言中的字符串是字符数组,可以通过多种方式定义和初始化字符串。

2. 字符串的输入和输出:C语言提供了多个函数用于输入和输出字符串,如gets、puts、printf、scanf等。

3. 字符串的处理:C语言提供了一系列函数用于处理字符串,如字符串的拷贝、连接、比较等。

C语言知识点归纳总结

C语言知识点归纳总结

C语言知识点归纳总结C语言是一种广泛应用的计算机编程语言,它的设计初衷是为了开发UNIX操作系统。

C语言具有高效的特性,易于理解和学习,所以它成为了一种十分流行的编程语言,广泛用于系统软件开发和应用软件开发。

本文将对C语言的知识点进行总结和归纳,帮助读者更好地了解和学习C语言。

1. 基本概念C语言是一种结构化的程序设计语言,它包括变量、数据类型、运算符、逻辑控制语句、循环语句等基本概念。

在C语言中,变量用来存储数据,数据类型用来定义变量的类型,运算符用来进行数学运算和逻辑运算,逻辑控制语句(如if语句)用来进行条件判断,循环语句(如for循环)用来进行循环操作。

2. 数据类型C语言包括基本数据类型和复合数据类型。

基本数据类型包括整型、浮点型、字符型等,整型用来存储整数,浮点型用来存储小数,字符型用来存储字符。

复合数据类型包括数组、结构体、联合体等,数组用来存储相同类型的数据集合,结构体用来存储不同类型的数据组合,联合体用来存储不同类型的数据共享一块内存。

3. 运算符C语言中包括算术运算符、关系运算符、逻辑运算符等。

算术运算符用来进行加减乘除等数学运算,关系运算符用来进行大小比较,逻辑运算符用来进行逻辑运算。

此外,C语言还包括位运算符、赋值运算符、条件运算符等。

4. 控制语句C语言中包括逻辑控制语句和循环语句。

逻辑控制语句包括if语句、switch语句等,用来进行条件判断和选择结构;循环语句包括for循环、while循环、do-while循环等,用来进行循环操作。

5. 函数C语言是一种函数式编程语言,函数是C语言中的基本概念之一。

函数是一段完成特定任务的代码块,具有独立性和封装性。

在C语言中,函数包括函数声明、函数定义、函数调用等,可以传递参数和返回值。

6. 数组数组是C语言中的重要概念之一,用来存储相同类型的数据集合。

数组可以是一维数组、二维数组、多维数组等,可以通过下标访问数组元素,具有高效的特性。

c语言必考知识点

c语言必考知识点

以下是C语言考试中的一些必考知识点:
1. 数据类型:包括整型、浮点型、字符型等数据类型,以及它们的范围和存储方式。

2. 变量和常量:如何声明、定义和使用变量,常量的使用方法。

3. 运算符:包括算术运算符、关系运算符、逻辑运算符等,以及它们的优先级和结合性。

4. 控制结构:包括条件语句(if-else语句、switch语句)、循环语句(for循环、while循环、do-while循环)以及跳转语句(break语句、continue语句)等。

5. 数组:如何声明、定义和使用数组,多维数组的操作。

6. 函数:如何声明、定义和调用函数,函数的参数传递方式(值传递、引用传递)。

7. 字符串处理:字符串的定义和初始化,字符串的输入输出,字符串的操作(比较、连接、复制等)。

8. 指针:指针的定义和初始化,指针的运算,指针与数组的关系。

9. 结构体和联合体:结构体的定义和使用,结构体成员的访问,联合体的定义和使用。

10. 文件操作:文件的打开、读写和关闭,文件指针的操作。

以上是C语言考试中的一些必考知识点,建议你结合教材和练习题进行系统地学习和复习。

在备考过程中,多做一些相关的编程练习和实践,加深对知识点的理解和掌握。

C语言基础必须掌握的知识点

C语言基础必须掌握的知识点

C语言基础必须掌握的知识点C语言是一种通用的高级计算机编程语言,是学习其他编程语言的基础。

掌握C语言基础知识对于提升编程水平和解决实际问题非常重要。

本文将介绍C语言基础必须掌握的知识点。

1.基本语法:了解C语言的基本语法,包括标识符、关键字、注释、数据类型、变量、常量、运算符、表达式、语句、循环和条件语句等。

2.数据类型:掌握C语言中的基本数据类型,包括整型、浮点型、字符型和指针等。

了解它们的存储大小和范围,以及它们之间的转换。

3. 输入输出:了解C语言中的输入输出函数,包括scanf和printf 等。

掌握格式化输入输出的用法,以及如何进行输入和输出的格式控制。

4.数组:了解数组的概念和用法,包括一维数组和多维数组。

掌握数组的声明、初始化、访问和遍历等操作,以及数组和指针之间的关系。

5. 字符串:了解C语言中的字符串类型和常用的字符串处理函数,包括strlen、strcpy、strcat和strcmp等。

掌握字符串的输入和输出方法,以及字符串的常见操作。

6.函数:了解函数的概念和用法,包括函数的声明、定义、调用和返回值等。

掌握函数的参数传递方式,包括值传递和引用传递。

了解递归函数的原理和应用。

7.结构体:了解结构体的概念和用法,包括结构体的定义、访问和操作等。

掌握结构体数组和指针的使用,以及结构体和函数之间的关系。

8.文件操作:了解C语言中的文件操作函数,包括文件的打开、关闭、读取和写入等。

掌握文本文件和二进制文件的读写方法,以及文件指针的使用。

9. 动态内存管理:了解动态内存分配的原理和方法,包括malloc、calloc和realloc等函数的使用。

掌握内存的申请、释放和管理,防止内存泄漏和内存溢出。

10.指针:掌握指针的概念和用法,包括指针的声明、初始化、访问和操作等。

了解指针和数组、指针和函数之间的关系,以及指针的高级应用,如指向指针的指针和指针的运算。

11. 预处理器:了解C语言中的预处理器指令和宏定义,包括#include、#define和#ifdef等。

c语言重点笔记

c语言重点笔记

c语言重点笔记C语言重点笔记一、基础语法1.注释:用于解释代码,不会被编译器执行。

单行注释以“//”开头,多行注释用“/* */”包围。

2.变量:用于存储数据。

定义变量时需要指定类型和名称,如int num;赋值时使用等号,如num=10;也可以在定义时进行赋值,如int num=10;3.数据类型:C语言提供了基本的数据类型,包括整型、浮点型、字符型等。

4.运算符:C语言提供了各种运算符,包括算术运算符、关系运算符、逻辑运算符等。

5.控制语句:C语言提供了各种控制语句,包括条件语句、循环语句等。

二、函数1.函数定义:函数是一段可重复使用的代码块。

定义函数需要指定返回值类型、函数名和参数列表。

如int add(int a, int b) { return a + b; }2.函数调用:调用函数时需要使用函数名和参数列表,并根据返回值类型进行接收。

如int result = add(1, 2);3.递归函数:递归是一种特殊的函数调用方式,在函数内部调用自身。

需要注意避免死循环。

三、数组1.数组定义:数组是一组相同类型的数据。

定义数组时需要指定类型和长度,如int arr[5];2.数组初始化:可以在定义时进行初始化,如int arr[5] = {1, 2, 3, 4, 5};3.数组访问:使用下标访问数组元素,下标从0开始,如arr[0]表示数组的第一个元素。

4.多维数组:多维数组是由一维数组组成的。

二维数组可以看作是一个矩阵,定义时需要指定行数和列数。

四、指针1.指针定义:指针是一个变量,用于存储另一个变量的地址。

定义指针时需要指定类型和名称,如int *p;2.指针运算:可以对指针进行加减运算,表示移动指针位置。

3.指针与数组:可以使用指针访问数组元素,如int *p = arr; p[0]表示arr[0]。

4.空指针:空指针是没有被初始化的指针。

五、结构体1.结构体定义:结构体是一种自定义数据类型,可以包含多个不同类型的成员变量。

c语言的知识点总结

c语言的知识点总结

c语言的知识点总结C语言是一种通用的高级编程语言,广泛用于系统和应用程序开发。

它具有强大的功能和灵活性,是许多编程语言的基础。

C语言的知识点涵盖了许多方面,包括基本语法、数据类型、指针、数组、结构体、函数、文件IO等。

本文将系统总结C语言的各种知识点,以便读者更好地掌握C语言编程。

1. 基本语法C语言的基本语法包括关键字、标识符、常量、变量、表达式、语句和注释等。

关键字是C语言定义的具有特殊含义的单词,如int、char、if、else等。

标识符是由字母、数字和下划线组成的名字,用于表示变量、函数和其他对象。

常量是固定的数值或字符串,包括整数常量、浮点常量、字符常量和字符串常量。

变量是用来存储数据的内存位置,可以通过标识符来引用。

表达式是由操作符和操作数组成的结构,用于计算数值或做其他操作。

语句是独立的执行单位,包括赋值语句、条件语句、循环语句和函数调用语句等。

注释用于对程序进行说明,可以提高程序的可读性。

2. 数据类型C语言的数据类型包括基本数据类型和派生数据类型。

基本数据类型包括整数类型、浮点类型、字符类型和布尔类型。

整数类型包括short、int、long、long long等,用于表示整数值。

浮点类型包括float、double、long double等,用于表示浮点数值。

字符类型用于表示单个字符,布尔类型用于表示真假值。

派生数据类型包括数组、指针、结构体和联合体。

数组是相同类型的数据的集合,指针是指向其他对象的地址,结构体是不同类型的数据的聚合,联合体是不同类型的数据的共享存储。

3. 运算符和表达式C语言的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和其他运算符。

算术运算符包括加法、减法、乘法、除法和取余等,关系运算符包括等于、不等于、大于、小于、大于等于和小于等于等,逻辑运算符包括与、或、非等,位运算符包括按位与、按位或、按位异或、左移、右移等,赋值运算符包括赋值、加等、减等、乘等、除等和取余等,其他运算符包括条件运算符、逗号运算符和sizeof运算符等。

c语言重点知识总结

c语言重点知识总结

c语言重点知识总结C语言是一种通用的、高级的、面向过程的编程语言。

它被广泛应用于软件开发、系统编程、嵌入式开发等领域。

C语言作为一门非常重要的编程语言,有一些重点的知识点需要掌握。

本文将对C语言的重点知识进行总结,帮助读者更好地理解和应用C语言。

1. 基本语法:掌握C语言的基本语法是学习C语言的第一步,包括数据类型、变量、常量、运算符、控制语句等。

掌握这些基本语法可以编写简单的程序。

2. 数组与指针:数组和指针是C语言中非常重要的概念,也是C语言与其他语言相比的特色之一。

数组是一组相同类型的数据的集合,可以用于存储多个数据。

指针是一个变量,它存储的是内存地址。

熟练使用数组和指针可以灵活处理内存中的数据。

3. 函数:函数是C语言中组织代码的基本单元。

函数可以接收参数,执行一定的操作,并返回一个值。

函数可以提高代码的复用性和可读性。

熟练使用函数可以组织结构清晰的程序。

4. 结构体与联合体:结构体是一种自定义数据类型,可以包含多个不同类型的成员变量,用于表示复杂的数据结构。

联合体是一种特殊的结构体,它的成员变量可以共享同一份内存空间,用于节省内存。

掌握结构体和联合体可以处理各种复杂的数据结构。

5. 文件操作:C语言提供了丰富的文件操作函数,可以对文件进行打开、关闭、读写等操作。

文件操作是进行数据持久化的重要手段,熟练使用文件操作可以实现数据的读取和存储。

6. 预处理器:C语言的预处理器是一种在编译之前对代码进行处理的工具,可以定义常量、宏、条件编译等。

预处理器可以改变源代码的结构和语义,提供了更高级的编程功能。

7. 动态内存管理:C语言提供了动态内存管理的函数,包括malloc、calloc、realloc和free等。

动态内存管理可以在程序运行时动态地申请和释放内存,提高内存使用效率。

8. 输入输出操作:C语言提供了标准的输入输出函数库,可以通过printf和scanf等函数实现与用户的交互,也可以通过文件操作实现文件的读写。

c语言重点知识点总结

c语言重点知识点总结

c语言重点知识点总结c语言重点知识点总结上学的时候,说起知识点,应该没有人不熟悉吧?知识点是指某个模块知识的重点、核心内容、关键部分。

还在苦恼没有知识点总结吗?下面是小编帮大家整理的c语言重点知识点总结,欢迎大家分享。

c语言重点知识点总结篇1◆知识点1:交换两个变量值的方法1)采用第三方变量(最容易想到的方法)2)采用加减法进行值得交换(面试时常用**)代码如下:b = a - b;a = a - b;b = a + b;3)采用按位异或的位方式代码如下:a = a^b;b = a^b;a = a^b;◆知识点2:取语言重点知识点总结余运算%的结果与被除的符号相同,结果为两个正数取余后前面加符号◆知识点3:sizeof的使用sizeof是一种运算符不要想当然理解为函数sizeof使用时可以不加()sizeof可以加变量、常量、数据类型跟数据类型是必须加()◆知识点4:static和 extern区别是能否进行跨文件访问①函数②变量1、对函数的作用:外部函数:定义的函数能被本文件和其他文件访问内部函数:定义的函数只能被本文件访问默认情况下,所有函数都是外部函数(相当于带关键字extern),所以可以省略extern作用:完整的定义和引用一个外部函数都加extern引用时也是默认是外部函数所以也省略externstatic作用:定义一个内部函数使用:static返回类型函数名(参数列表)不能被其他文件调用一个项目中,本文件的外部函数名不能和其他文件的外部函数同名(error)本文件中的内部函数(static)可以和其他文件的函数名同名的2、对变量的作用:全局变量分为两种:外部变量:定义的变量可以被其他文件访问①默认情况下所有的全局变量都是外部变量②不同文件中的同名外部变量都代表同一个③定义一个外部变量不加extern,声明才加extern同样的声明是没有错误的内部变量:定义的变量不能被其他文件访问不同文件的同名内部变量互不影响◆知识点5:数组的几种初始化方式如下:int a[3] = {10, 9, 6};int a[3] = {10,9};int a[] = {11, 7, 6};int a[4] = {[1]=11,[0] = 7};(知道有此种初始化方式即可)◆知识点6:数组的内存分析和注意点存储空间的划分(内存的分配是从高地址到低地址进行的,但一个数组内部元素又是从低到高进行的)【注:对于以后学习重要】数组名的作用,查看元素地址注意数组不要越界◆知识点7:字符串知识点"123”其实是由’1’、’2’、’3’、’’组成字符串的输出”%s”,’’是不会输出的◆知识点8 :字符串处理函数:strlen()计算的是字符数,不是字数计算的字符不包括’’,一个汉字相当于3个字符例子:"哈haha" 字符数为7从某个地址开始的数字符个数,知道遇到’’为止指针部分在C语言中占据重要地位,所以重点学习与整理了指针的知识:◆知识点9:指针定义的格式变量类型 *变量名如:Int *p◆知识点10:指针作用能够根据一个地址值,访问对应的.存储空间例:Int *p;Int a = 90;P = &a;*p = 10;//把10赋值给p所指的存储空间◆知识点11:指针使用注意Int *p只能指向int类型的数据指针变量只能存储地址指针变量未经初始化不要拿来间接访问其他存储空间◆知识点12:指针与数组遍历数组int ages[5] = {10, 4, 9, 44, 99};for(int i = 0; i<5; i++){printf("%d ", ages[i]);}使用指针遍历数组:int *p;// 指针变量P指向了数组的首地址p = &ages[0];// 使用指针遍历数组for(int i = 0; i<5; I++){printf("ages[%d] = %d ", i, *(p + i));}注:指针+ 1取决于指针的类型注:数组的访问方式数组名[下标]指针变量名[下标]*(p + i)◆知识点12:指针与字符串定义字符串的两种方式:1、利用数组Char name[] = “Andyzhao”特点:字符串里的字符可以修改适用场合:字符串内容需要经常修改2、利用指针Char *name = “itcast”特点:字符串是一个常量,字符串里面的字符不能修改使用场合:字符串的内容不需要修改,而这个字符串经常使用◆知识点13:预处理指令(三种):宏定义条件编译文件包含1、宏定义的配对使用和带参数的宏:#define#undef带参数的宏:#define sum(v1,v2) ((v1) + (v2))//括号是必须的例如:#define pingfang(a) a*a#define pingfang(a) (a*a)调用时pingfang(10)/pingfang(2)//不正确pingfang(5+5)//不正确带参数的宏效率比函数高2、条件编译(一般是判断宏的值)#if 条件#elif 条件#else#endif(非常重要)不然后面的代码全部无效3、文件包含:<>表示系统自带的文件,""表示自定义文件不允许循环包含,比如ah包含bh,bh又包含ah◆知识点14:typedef 只是给类型起了个别名并不是定义新类型struct Student{int age;char *name;};typedef struct Student Student;等价于typedef struct Student{int age;char *name;}Student;也等价于typedef struct {int age;char *name;}Student;类似的给枚举类型起名typedef enum Sex{Man,Women}Sex;下面这种情况的写法比较特殊//下面是函数指针类型的自定义数据类型,返回值类型和参数类型要匹配#includetypedef int (*TypeFuncPointer)(int, int);int add(int a, intb){return a + b;}int minus(int a, intb){return a - b;}int main(){TypeFuncPointer p = add;//使用自定义类型TypeFuncPointer p2 = minus;//使用自定义类型printf("add = %d ",p(1, 2));printf("minus = %d ",p2(1, 2)); return 0;}下面是定义结构体的指针类型typedef struct Student{int age;char *name;}*PtrStu;//使用方式Student stu ={18, "zhangsan"}; PtrStu p = &stu;宏定义也是可以为类型起名的#define Integer int相当于typedef int Integer注意和typedef的区别例如:typedef char * String#define String2char *。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
考试注意点:括号在这里的重要性。
第五章
函数:是具有一定功能的一个程序块;
1)函数的参数,返回数值(示意图):
main()
{
int a = 5,b=6,c;
c = add(a,b);
printf(“%d”,c);
}
调用函数
a,b是实参
整个函数得到一个数值就是
add函数的返回数值。
int add ( int x, int y)
5)一定要记住二进制如何化成十进制。
概念常考到的:
1、编译预处理不是C语言的一部分,不占运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、每个C语言程序中main函数是有且只有一个。
3、在函数中不可以再定义函数。
4、算法是一定要有输出的,他可以没有输入。
5、break可用于循环结构和switch语句。
10)018的数值是非法的,八进制是没有8的,逢8进1。
11)%符号两边要求是整数。不是整数就错了。
12)三种取整丢小数的情况:
1、int a =1.6;
2、(int)a;
第二章
1)printf函数的格式考查:
%d对应整型;%c对应字符;%f对应单精度等等。宽度的,左对齐等修饰。
%ld对应long int;%lf对应double。
6、逗号运算符的级别最低。
第一章
1)合法的用户标识符考查:
合法的要求是由字母,数字,下划线组成。有其它元素就错了。
并且第一个必须为字母或是下划线。第一个为数字就错了。
关键字不可以作为用户标识符号。main define scanf printf都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。
C语言常考知识点总结
总体上必须清楚的:
1)程序结构是三种:顺序结构,循环结构(三个循环结构),选择结构(if和switch)
2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.
4)bit是位是指为0或者1。byte是指字节,一个字节=八个位.
对a[3][3]的讨论。
1、a表示数组名,是第一个元素的地址,也就是元素a[0][0]的地址。
2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。
3、a是二维数组名,所以它是行指针,也就是说a+1是跳一行。
4、a[0]、a[1]、a[2]也都是地址常量,不可以对它进行赋值操作,同时它们都是列指针,a[0]+1,a[1]+1,a[2]+1都是跳一列。
4)如何实现两个变量x,y中数值的互换(要求背下来)
不可以把x=y ,y=x;要用中间变量t=x;x=y;y=t。
5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)
这个有推广的意义,注意x = (int)x这样是把小数部分去掉。
第三章
特别要注意:c语言中是用非0表示逻辑真的,用0表示逻辑假的。
实参和形参之间传数值,和传地址的差别。(考试的重点)
传数值的话,形参的变化不会改变实参的值。
传地址的话,形参的变化就会有可能改变实参的值。
3)函数声明的考查:
一定要有:函数的返回类型函数名函数的参数类型。
不一定要有:形参的名称。
第六章
指针变量的本质是用来放地址,而一般的变量是放数值的。
int *p中*p和p的差别:
(2,3,4)的表达式的数值就是4。
9)位运算的考查:
会有一到二题考试题目。
总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。
例1:char a = 6, b;
b = a<<2;这种题目的计算是先要把a的十进制6化成二进制,再做位运算。
例2: 在没有舍去数据的时候,<<左移一位表示乘以2;>>右移一位表示除以2。
运行的机理:++a是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a++是先用该变量的数值为5,然后再把a的数值加上1为6,再放到变量a中。进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。
考试口诀:++在前先加后用,++在后先用后加。
逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。
还有记住脱衣服法则:
a[2]变成*(a+2) a[2][3]变成*(a+2)[3]再可以变成*(*(a+2)+3)
这个思想很重要!
int a=20;
Printf(”%d”,0<a<20);
上面这句输出为1,因为先比较0<a结果为1,再将结果1和20比较,最后结果为1
static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;
注意(int)(a+b)和(int)a+b的区别。前是把a+b转型,后是把a转型再加b。
8)表达式的考查:
是表达式就一定有数值。
赋值表达式:表达式数值是最右边的数值,a=b=5;该表达式为5,常量不可以赋值。a=b=c=5可理解为a=(b=(c=5))
自加、自减表达式:假设a=5,++a(a为6),a++(a为5);
在程序中int a = 06d,是一个八进制的形式。
在转义字符中,’\x6d’才是合法的,0不能写,并且x是小写。
‘\141’是合法的,0是不能写的。
‘\108’是非法的,因为不可以出现8。
6)算术运算符号的优先级别和结合性:同级别的有的是从左到右,有的是从右到左。
7)强制类型转换:
一定是(int)a不是int(a),注意类型上一定有括号的。
5、注意a和a[0]、a[1]、a[2]是不同的,它们的基类型是不同的。前者是一行元素,后三者是一列元素。
二维数组做题目的技巧:
如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。
步骤一:把他们写成:
第一列 第二列 第三列
a[0]123 ->第一行
a[1] 456—>第二行
a[2] 789->第三行
P为指向整型变量的指针变量,则:
m=*p++与m=*(p++)等价于m=*p; p=p+1;
m=(*p)++等价于m=*p; *p=*p+1;
m=*++p与m=*(++p)等价于p=p+1; m=*p;
m=++*p与m=++(* p)等价于*p=*p+1;m=*p;
2)scanf函数的格式考察:
注意该函数的第二个部分是&a这样的地址,不是a;
Scanf(“%d%d%*d%d”,&a,&b,&c);跳过输入的第三个数据。
3)putchar ,getchar函数的考查:
char a = getchar()是没有参数的,从键盘得到你输入的一个字符给变量a。
putchar(‘y’)把字符y输出到屏幕中。
4)整型一般是两个字节,字符型是一个字节,双精度一般是4个字节:
考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节,字符型是一个字节,双精度一般是4个字节就可以了。
5)转义字符的考查:
在程序中int a = 0x6d,是把一个十六进制的数给变量a注意这里的0x必须存在。
*p可以当做变量来用;*的作用是取后面地址p里面的数值
p是当作地址来使用。
*p++和(*p)++的之间的差别:改错题目中很重要
*p++是地址会变化。
(*p)++是数值会要变化。
三名主义:(考试的重点)
数组名:表示第一个元素的地址。数组名不可以自加,他是地址常量名。(考了很多次)
函数名:表示该函数的入口地址。
d)do-while()循环的最后一个while();的分号一定不能够丢。(当心上机改错)
2) break和continue的差别
记忆方法:
break:是打破的意思,(破了整个循环)所以看见break就退出整个一层循环。
continue:是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。
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的相组合的。
4)条件表达式:
表达式1 ?表达式2:表达式3
1)关系表达式:
表达式的数值只能为1(表示为真),或0(表示假)
当关系的表达是为真的时候得到1。如9>8这个是真的,所以表达式的数值就是1;
2)逻辑表达式:
只能为1(表示为真),或0(表示假)
a)共有&& || !三种逻辑运算符号。
b) !>&&>||优先的级别。
c)注意短路现象。考试比较喜欢考到。
相关文档
最新文档