二级C语言错误笔记

1.    extern、register、static、auto分别是定义外部变量、寄存器变量、静态变量、自动变量,其中,自动变量和寄存器变量属于动态存储,调用时临时分配单元;而静态变量和外部变量属于静态存储,在整个程序运行时间都存在。

2. 两个实体间的联系可以归纳为3种类型:

    一对一联系:一对一的联系表现为主表中的每一条记录只与相关表中的一条记录相关联。

    一对多联系:一对多的联系表现为主表中的每一条记录与相关表中的多条记录相关联。

    多对多联系:多对多的联系表现为一个表中的多个记录在相关表中同样有多个记录其匹配。

    一个顾客可以购买多种商品,同一种商品可以有多个顾客购买,所以商品和顾客之间是多对多的联系。

3.    C语言中的指数形式,字母E之前必须有数字,且E后面指数必须为整数。

4.    feof(fp)函数用来检测文件位置指针是否已指向文件的末尾,若已指向末尾,则函数值为非零值,否则函数值为0。

5.  C语言函数中的参数传递方式是按值传递(传地址实质也是传值),指将实参的值复制一份传递给形参,形参的改变而不影响实参,即为单向传递。

6.  C语言中,如果函数前不加任何数据类型时,缺省函数的类型为整型,函数的类型就是函数返回值的类型。

7. 文件:只读r,只写w,添加a。

8. C语言中通过格式输入函数读入数据时,在格式控制字符串中仅有格式控制说明符,对输入的数值型数据可用空格分隔,但对字符型数据不能用任何符号分隔,因为对字符数据所有输入都当成有效数据;在格式控制字符串中除了格式控制说明符外如果还有其他字符,则在输入数据时应输入与这些字符相同的字符。

9. 逻辑值"真"可用1表示,逻辑值"假"可用0表示,若只处理"真"和"假"两种逻辑值,逻辑值0和1使用整型值即可。(不使用逻辑类型)

10.'\ddd',表示八进制数,取值范围0-7,不可能出现7-9。看到八进制务必看范围。

11. 当数组名作为实参时,对应的形参除了是指针外,还可以用另外两种形式。即三种形式如下:(1)arrin (int  *a);(2)arrin (int  a[ ]);(3)arrin (int  a[M])。在第(2)和第(3)种形式中,虽然说明的形式与数组的说明相同,但C编译程序都将把a处理成第一种的指针形式。

12. C语言允许对每个函数单独进行编译(不止main函数),从而可以实现模块化。

13. 在C语言程序中,可以用一个符号名来代表一个常量,称为符号常量

14. 函数返回值的类型可以是整型、实型、字符型、指针和结构类型。

15. 只要在允许范围内整型数和实型数都能精确的表示。

16. if后面圆括号中的表达式,可以是任意合法的C语言表达式(如:逻辑表达式、关系表达式、算术表达式、赋值表达式等),也可以是任意类型的数据(如:整型、实型、字符型、指针型等)。

17. C语言程序是由函数构成的, C语言不能嵌套定义函数,但可以嵌套调用函数,所以选项B正确;

18. 注释间的任何内容都被编译程序忽略,但是不可以夹在变量名或者关键字的中间

int /**注解**/ data; 没问题

i /**注解**/nt data;就不行了

19. 字符数组只能存放字符,而字符串是用字符数组来表示的。

20. C语言把文件看作是一个字符的序列,即由一个一个字符的数据顺序组成。根据数据组织形式,可分为ASCII文件和二进制文件。ASCII文件又称文本文件。

21.看到for循环注意是不是空循环(在for语句一行直接打分号)

22. 要保证变量n在未赋初值的情况下初值为0,应选择的存储类别是static

23. 调用全局变量时,函数内部改变了全局变量的值,则全局变量的值随之发生改变。

24.软件测试的对象包括:源程序、目标程序、数据及相关文档。

25. 使用结构图描述软件系统的层次和分块结构关系,它反映了整个系统的功能实现以及模块与模块之间的联系与通信,是未来程序中的控制层次体系。

26.程序结构图:

  • 深度:表示控制的层数。
  • 宽度:表示整体控制跨度(最大模块数的层)。
  • 扇入:调用一个给定模块的模块个数。
  • 扇出:一个模块直接调用的其他模块数
  • 原子模块:树中位于叶子结点的模块。

27.若X-->Y , Y-->Z,则Z对X传递依赖。Y不是传递依赖。

28.线性表、向量、栈、队列都属于线性结构的顺序存储。

29.拥有两种不同的存储结构,可以用顺序存储或链式存储

30.以程序内部的逻辑结构为基础的测试技术是白盒测试。白盒测试:也叫结构测试、逻辑测试

31.printf中,如果格式符的个数小于输出变量的个数,则按自左至右的顺序,多余的变量值不输出,若格式符的个数大于输出变量的个数,则多余格式符则由程序自动输出任意值

32.预处理命令不是C语言本身的组成部分,不能直接对它进行编译(因为编译程序不能识别它们),必须在对程序进行通常的编译之前,先对程序中这些特殊的命令进行"预处理",经过预处理后程序不再包括预处理命令了,最后再由编译程序对预处理后的程序进行通常的编译。

AnonyEast

一个爱折腾的技术萌新

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐