c语言常考知识点

来源:趣味经验馆 2.06W

c语言常考知识点

1.C语言的知识点包括算法结构、结构化程序设计方法、数据类型、运算符、控制语句、字符数据的输入输出、格式输入输出、数组、字符串处理函数、函数、变量的存储类别和指针等。其中,数据类型包括整型、短整型、长整型、长长整型、单精度浮点数和双精度浮点数等。C语言的入门程序是HelloWorld,它可以通过编写代码生成程序,在程序中显示HelloWorld。

小编还为您整理了以下内容,可能对您也有帮助:

c语言重要的基础知识点有哪些?

C语言重要知识点记得背会

总体上必须清楚的:

1.程序结构是三种:顺序结构 、选择结构(分支结构)、循环结构。

2.读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。3)计算机的数据在电脑中保存是以二进制的形式。数据存放的位置就是 他的地址.4)bit是位 是指为0或者1。 byte是指字节,一个字节 八个位,

概念常考到的:

1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、define PI 3.1415926;这个写法是错误的,一定不能出现分号。

3、每个C语言程序中main函数是有且只有一个。

4、在函数中不可以再定义函数。

5、算法: 可以没有输入,但是一定要有输出。

6、break可用于循环结构和switch语句。

7、逗号运算符的级别最低,赋值的级别倒数第二。

概念常考到的:

1、编译预处理不是C语言的一部分,不占运行时间不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、define PI 3.1415926;这个写法是错误的,一定不能出现分号。

3、每个C语言程序中main函数是有且只有一个,

4、在函数中不可以再定义函数。

5、算法:可以没有输入,但是一定要有输出。

6、break可用于循环结构和switch语句。

7、逗号运算符的级别最低,赋值的级别倒数第二

第一节、对C语言的基础认识

1、C语言编写的程序称为源程序,又称为编译单位。

2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。

3、一个C语言程序有且只有一个main函数,是程序运行的起点。

第二节、熟悉vc++

1、VC是软件,用来运行写的C语言程序。

2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---a.obj---a.exe)这个过程中注意.c和obj文件时无法运行的,只有.exe文件才可以运行。(常考!)

第三节、标识符

1、标识符(必考内容):

合法的要求是由字母,数字,下划线组成。有其它元素就错了。

并且第一个必须为字母或则是下划线。第一个为数字就错了

2、标识符分为关键字、预定义标识符、用户标识符关键字:不可以作为用户标识符号。main definescanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为if中的第一个字母大写了,所以不是关键字。

预定义标识符:背诵define scanf printf include。

记住预定义标识符可以做为用户标识符。

用户标识符:基本上每年都考,详细请见书上习题。

第四节: 进制的转换

十进制转换成二进制、八进制、十六进制。

二进制、八进制、十六进制转换成十进制。

第五节:整数与实数

1.C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次)

a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没有8的,逢8进1。

b、C语言中的十六进制规定要以Ox开头。

2.小数的合法写法: C语言小数点两边有一个是零的话,可以不用写。

1.0在C语言中可写成1

0.1在C语言中可以写成.1。

3.实型数据的合法形式:a、2.333e-1就是合法的,且数据是2.333x10-1。b、考试口诀: e前e后必有数,e后必为整数。请结合书上的例子。

4. 整型一般是4个字节,字符型是1个字节,双精度一般是8个字节:

long int x;表示x是长整型。

unsigned int x;表示x是无符号整型。

第六、七节: 算术表达式和赋值表达式

核心:表达式一定有数值!

1、算术表达式:+,-,*,1,%考试一定要注意:“/” 两边都是整型的话,结果就是个整型。 3/2的结果就是1.

“/” 如果有一边是小数,那么结果就是小数。 312.0的结果就是0.5

“%”符号请一定要注意是余数,考试最容易算成了除号。)%符号两边要求是整数。不是整数就错了。[注意!!!]

2、赋值表达式:表达式数值是最左边的数值,a=b=5:该表达式为5,常量不可以赋值。

1、int x=y=10:错啦,定义时,不可以连续赋值。

2、int x,y;

x=y=10;对滴,定义完成后,可以连续赋值。

3、赋值的左边只能是一个变量。

4、int x=7.7;对滴,x就是7

5、float y=7;对滴,x就是7.0

3、复合的赋值表达式

int a=2;a*=2+3;运行完成后,a的值是12。一定要注意,首先要在2+3的上面打上括号。变成(2+3)再运算。

4、自加表达式:

自加、自减表达式:假设a=5,++a(是为6), a++(为5);

运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6

再放到变量a中。 进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。考试口诀: ++在前先加后用,++在后先用后加。

5、逗号表达式:

优先级别最低。表达式的数值逗号最右边的那个表达式的数值。

(2,3,4)的表达式的数值就是4。z=(2,3,4)(整个是赋值表达式) 这个时候z的值为4。(有点难度哦!)z= 2,3,4(整个是逗号表达式)这个时候z的值为20

补充:

1、空语句不可以随意执行,会导致逻辑错误。

2、注释是最近几年考试的重点,注释不是C语言,不占运行时间,没有分号。不可以嵌套!

3、强制类型转换;一定是 (int)a不是 int(a),注意类型上一定有括号的。

注意(int)(a+b) 和(int)atb 的区别。前是把a+b转型,后是把a转型再加b。

计算机二级c语言常见知识点

计算机二级c语言常见知识点

  数据库是为了更容易地组织、存储和检索大量数据。数据库由数据库管理系统管理,通过数据库模型和查询语言来存储、创建、维护和搜索数据。下面是我整理的关于计算机二级c语言常见知识点,欢迎大家参考!

  计算机二级c语言常见知识点 篇1

  文件

  【考点1】文件类型指针

  文件指针是一个指向结构体类型的指针,定义格式为:FILE *指针变量名。在使用文件时,都需要先定义文件指针。

  【考点2】文本文件与二进制文件

  文本形式存放的是字符的ASCII码,二进制形式存放的是数据的二进制。例如“100”如果是文本形式就是存储’1’、 ’0’、 ’0’三个字符的ASCII码(00110001 00110000 00110000),如果是二进制形式就把100转化成二进制(01100100)。

  【考点3】打开文件

  文件的打开形式:

  FILE *fp;

  fp=fopen(“c:lab.c”,”rb”);。

  fopen函数的前面一部分为文件名,后面一部分为文件的使用方式。其中r代表读,w代表写,a代表添加,b代表二进制位的。

  【考点4】文件函数

  判断文件结束feof函数,移动文件指针位置fseek函数,获得文件位置ftell函数,文件位置移到开头rewind函数,文件字符输入输出fgetc函数和fputc函数,文件输入输出fscanf函数和fprintf函数,文件字符串输入输出fgets函数和fputs函数,读写二进制文件fread函数和fwrite函数。

  对C语言的深入探讨

  【考点1】编译预处理

  凡以#开头的这一行,都是编译预处理命令行,编译预处理不加分号,不占运行时间。宏替换仅是简单的文本替换,如#define f(x) (x)*(x)和#define f(x) x*x替换f(2+2)时就有区别,前者展开为(2+2)*(2+2),后者为2+2*2+2。

  如果源文件f2.c中有#include"f1.c"可以理解为把源文件f1.c原样包含到f2.c中,使f1.c和f2.c融合到一起成为一个C程序编译。所以一个C程序必有主函数,但一个C源文件未必有主函数。

  【考点2】标识符作用域

  局部变量是在函数内或复合语句内定义的变量,作用域为定义它的函数内。局部变量有三种类型:自动auto,寄存器register和静态static。

  自动变量随着函数的使用与否创建消失;寄存器变量分配在cpu中,没有内存地址;静态变量占用固定存储单元,在程序执行过程不释放,直到程序运行结束。

  全局变量是在函数外定义的变量,作用域从定义它的位置到整个源文件结束为止,生存期为整个程序运行期间。全局变量都是静态变量。

  【考点3】动态存储分配

  malloc(size)用来创建size个字节的连续存储空间,返回值类型为void *型。malloc函数常用于动态创建链表结点,如int *p; p=(int *)malloc(sizeof(int));。

  calloc(n,size)创建n个同一类型的连续存储空间,可以理解为n个malloc。

  int *p; p=(int *) calloc (10,sizeof(int));。p指向首地址。

  free(p)释放动态分配的存储单元。

  【考点4】main函数的参数

  还有main(int argc,char **argv) {}

  这种含有参数的题目,是很呆板的题目。第一个参数是表示输入的字符串的数目,第二个参数是指向存放的字符串。

  【考点5】函数指针

  函数指针的用法(*f)()记住一个例子:

  int add(int x, int y)

  {....}

  main()

  { int (*f)();

  f=add;

  }

  赋值之后:合法的调用形式为

  1、add(2,3);

  2、f(2,3);

  3、(*f)(2,3);

  计算机二级c语言常见知识点 篇2

  【考点1】函数的定义

  函数:是具有一定功能的一个程序块;是C 语言的基本组成单位。

  函数的首部为:函数类型 函数名(类型1 形参1,类型2 形参2,……)。在函数定义中不可以再定义函数,即不能嵌套定义函数。函数类型默认为int型。

  【考点2】库函数

  调用C语言标准库函数时要包含include命令,include命令行以#开头,后面是“”或<>括起来的后缀为”.h”的头文件。以#开头的一行称为编译预处理命令行,编译预处理不是C语言语句,不加分号,不占运行时间。

  【考点3】函数的返回值

  函数通过return语句返回一个值,返回的值类型与函数类型一样。return语句只执行一次,执行完或函数体结束后退出函数。

  【考点4】函数的声明

  函数要“先定义后调用”,或“先声明再调用后定义”。函数的声明一定要有函数名、函数返回值类型、函数参数类型,但不一定要有形参的名称。

  【考点5】函数的调用

  程序从上往下执行,当碰到函数名后,把值传给调用函数,当程序得到了返回值或调用函数结束,再顺序往下执行。

  【考点6】函数的参数及值传递

  形式参数简称形参,是定义函数时函数名后面括号中的参数。实在参数简称实参,是调用函数时函数名后面括号中的`参数。实参和形参分别占据不同的存储单元。实参向形参单向传递数值。

  “传值”与“传址”的区别:传数值的话,形参的变化不会改变实参的变化。传地址的话,形参的变化就有可能改变实参所对应的量。(考试的重点)

  函数的参数,返回数值(示意图)。

  【考点7】函数的递归调用

  函数直接或间接地调用自己称为函数的递归调用。递归调用必须有一个明确的结束递归的条件。在做递归题时可把递归的步骤一步步写下来,不要弄颠倒了。

  【考点8】要求掌握的库函数

  sqrt()算术平方根函数,fabs()绝对值函数,sin()正弦函数,sin(3.14159/180*30);,pow()幂函数,23是由pow(2,3)表示的。

;

C语言基础知识点

  C语言基础知识点集锦

   【知识点1】C程序

  C语言程序结构有三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch)

   【知识点2】main函数

  每个C语言程序中main 函数是有且只有一个。读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

   【知识点3】存储形式

  计算机的数据在电脑中是以二进制的形式保存。最低的存储单元是bit(位),位是由为 0 或者1构成。 byte 是指字节, 一个字节 = 八个位。数据存放的位置就是它的地址。

   【知识点4】注释

  是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。

   【知识点5】书写格式

  每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。

   【知识点6】标识符

  合法的用户标识符考查:

  合法的要求是由字母,数字,下划线组成。有其它元素就错了。

  并且第一个必须为字母或则是下划线。第一个为数字就错了。

  C语言标识符分如下3类

  (1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。

  (2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。

  (3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。

  关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If 是可以做为用户标识符。因为If 中的第一个字母大写了,所以不是关键字。

   【知识点7】实型数据

  实型数据的.合法形式:小数形式和指数形式。掌握判定指数形式合法性。

  2.333e-1 就是合法的,且数据是2.333×10-1。

   【知识点8】字符

  字符数据的合法形式::

  1 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

  0 的ASCII 数值表示为48,a 的ASCII 数值是97,A的ASCII 数值是65。

  字符型和整数是近亲:

  char a = 65 ;

  printf(“%c”, a); 得到的输出结果:a

  printf(“%d”, a); 得到的输出结果:65

  一般考试表示单个字符错误的形式:65 "1"

  字符是可以进行算术运算的,记住: 0-0=48

  大写字母和小写字母转换的方法: A+32=a 相互之间一般是相差32。

   【知识点9】整型数据

  整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节:

  考试时候一般会说,在16 位编译系统,或者是32 位系统。碰到这种情况,不要去管,

  一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节就可以了。

   【知识点10】转义字符

  转义字符的考查:

  在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x 必须存在。

  在程序中 int a = 06d, 是一个八进制的形式。

  在转义字符中, ’x6d’ 才是合法的,0 不能写,并且x 是小写。

  ‘141’ 是合法的, 0 是不能写的。

  ‘108’是非法的,因为不可以出现8。

   【知识点11】算术运算

  算术运算符一共有+、—、*、/、%这五个。%符号两边要求是整数。不是整数就错了。

  三种取整丢小数的情况:不是四舍五入是舍掉小数部分。

  1、int a =1.6;

  2、(int)a;

  3、1/2; 3/2;

   【知识点12】强制类型转换

  将一个运算对象转换成指定类型,格式为(类型名)表达式

  一定是 (int)a 不是 int(a),注意类型上一定有括号的。

  注意(int)(a+b) 和(int)a+b 的区别。前是把a+b 转型,后是把a 转型再加b。

   【知识点13】赋值

  是表达式就一定有数值。

  赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。

  复合赋值运算符:注意:a*=m+2 是 a=a*(m+2)

  自加、自减表达式:假设a=5,++a(表达式的值为6), a++(表达式的值为5);

  j=a++;等价于j=a;a=a+1; 而j=++a;等价于a=a+1;j=a;。

  考试口诀:++在前先加后用,++在后先用后加。

   【知识点14】逗号运算

  逗号表达式:优先级别最低; 表达式的数值逗号最右边的那个表达式的数值。

  (2,3,4)的表达式的数值就是4。

   【知识点15】数制转换

  一定要记住二进制 如何转换成十进制。

  八进制是没有8 的,逢8 进1,018 的数值是非法的。

计算机二级考试《C语言》知识点归纳(3)

  第六章

  指针变量的本质是用来放地址,而一般的变量是放数值的。

  int *p 中 *p和p的差别:

  *p可以当做变量来用;*的作用是取后面地址p里面的数值

  p是当作地址来使用。

  *p++ 和 (*p)++的之间的差别:改错题目中很重要

  *p++是 地址会变化。

  (*p)++ 是数值会要变化。

  三名主义:(考试的重点)

  数组名:表示第一个元素的地址。数组名不可以自加,

  他是地址常量名。(考了很多次)

  函数名:表示该函数的入口地址。

  字符串常量名:表示第一个字符的地址。

  第七章

  1一维数组的重要概念:

  对a[10]这个数组的讨论。

  1、a表示数组名,是第一个元素的地址,也就是

  元素a[10]的地址。

  2、a是地址常量,所以只要出现a++,或者

  是a=a+2赋值的都是错误的。

  3、a是一维数组名,所以它是列指针,也就是

  说a+1是跳一列。

  对a[3][3]的讨论。

  1、a表示数组名,是第一个元素的地址,也就是

  元素a[10]的地址。

  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都是跳一列。

  5、注意a和a[0] 、a[1]、a[2]是不同的,它们的

  基类型是不同的。前者是一行元素,后三者是一列元素。

  二维数组做题目的技巧:

  如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。

  步骤一:把他们写成:

  第一列 第二列 第三列

  a[0]à 1 2 3 ->第一行

  a[1]à 4 5 6—>第二行

  a[2]à 7 8 9->第三行

  步骤二:这样作题目间很简单:

  *(a[0]+1)我们就知道是第一行的第一个元素往后

  面跳一列,那么这里就是a[0][1]元素,所以是1。

  *(a[1]+2)我们就知道是第二行的第一个元素往后面

  跳二列。那么这里就是a[1][2]元素,所以是6。

  一定记住:只要是二维数组的题目,一定是写成如

  上的格式,再去做题目,这样会比较简单。

  数组的初始化,一维和二维的,一维可以不写,

  二维第二个一定要写

  int a[]={1,2} 合法。 int a[][4]={2,3,4}合法。

  但int a[4][]={2,3,4}非法。

  二维数组中的行指针

  int a[1][2];

  其中a现在就是一个行指针,a+1跳一行数组元素。

  搭配(*)p[2]指针

  a[0],a[1]现在就是一个列指针。a[0]+1 跳一个数组

  元素。搭配*p[2]指针数组使用

  还有记住服法则:

  a[2] 变成 *(a+2) a[2][3]变成 *(a+2)[3]再

  可以变成 *(*(a+2)+3)

热门标签