目录
5、在printf函数中int用%d输出,请问longint、char、double、float分别用什么输出?
8、什么是指针,什么是地址,什么是指针变量,三者之间是什么关系?
期末复习:
1、什么叫分配内存,什么叫释放内存:
操作系统该某一块内存空间的使用权限分配给该程序叫分配内存
操作系统把分配给该程序的内存空间的使用权利收回,该程序就不能够再使用这一块内存空间,这叫释放内存。
附注:释放内存不是把该内存的内容清零
2、变量为什么必须初始化:
不初始化,则变量通常是垃圾值
不初始化,输出语句,编译会报错。
3、详细说明系统是如何执行:int i=5;这个语句的
1、vs2019软件请求操作系统为i分配存储空间
2、操作系统会在内存中寻找一块空闲的局域,把该区域当i来使用
3、vs2019会把i和这块空闲区域关联起来,今后对字母i操作就是对这块空闲的区域操作
4、把5存储到字母i所关联的内存区域中
附注:所谓的内存区域也就是内存的一块存储单元
4、请详细列出C语言所有的基本类型:
int longint shorint char float double
5、在printf函数中int用%d输出,请问longint、char、double、float分别用什么输出?
%ld %c %lf %f
6、函数的优点是什么?
1、避免重复性操作
2、有利于程序的模块化
7、谈谈你对函数的理解:
略,看个人笔记函数部分
8、什么是指针,什么是地址,什么是指针变量,三者之间是什么关系?
地址是内存单元的编号,指针就是地址,指针和地址是同一个概念
指针变量是存放内存单元编号的变量,指针变量和指针是两个完全不同的概念
只不过人们通常把指针变量简称指针
9、请写出静态变量和动态变量的异同:
相同:
都需要分配内存
不同
静态变量是由系统自动分配的,自动释放,程序员无法在程序运行的过程中手动分配,也无法在程序运行的过程中手动释放
静态变量是在栈中分配的
函数终止之后,静态变量的存储空间才会被系统自动释放
动态变量是由程序员手动分配的,手动释放,程序员可以在程序运行的过程中手动分配,可以在程序运行的过程中手动释放
动态变量是在堆中分配的
程序员可以函数执行的过程当中的任何一个时刻手动的释放动态变量的空间,不需要等到函数终止时才释放。
10、C语言中那些知识点是我们学习的重点,请一一列举出来:
流程控制 函数 指针 静态内存和动态内存
11、for语句题目1:
for (1; 2; 3)
A;
B;1、2成立,会继续执行那个语句:A
2、3执行完毕后,会继续执行那个语句:2
3、A执行完毕,会继续执行那个语句:3
4、1总共执行几次:1
12、for语句题目2:
for (1; 2; 3)
for(4;5;6){
A;
B;
}
C;
1、6执行完毕,会继续执行那个语句:5