Linux_C笔记day04

来源:互联网 发布:淘宝代销怎么发布宝贝 编辑:程序博客网 时间:2024/06/06 08:50
##递归##
递归函数必须满足的两个条件:a.结束条件,b.递归表达式(容易发生死循环)
递归函数实际上就是自己调用自己的函数
递归下可以与迭代进行互相转换,递归不可递归深度太深(栈会溢出)。

阶段测试考点总结
填空题
1.逻辑与和逻辑或的短路运算
2.递归的结束条件
3.字符串空间长度与字符指针的空间长度
4.const关键字的含意:
    const int a == int const a 整型静态变量a
    const int *a == int const *a是指指针所值静态整形地址的指针
    int * const a是静态指针a
5.不同类型sizeof的输出的空间大小
简答题
1.strlen与strcpy函数
2.char int float 指针变量的零值
    char \0
    int 0
    float -0.001~0.001之间
    指针 NULL
3.数组指针,一维数组可以看成特殊的二维i数组
4.字符串的存储地址,逆序输出
5.<>在编译器指定的目录下查找头文件;“”在当前路径下查找该头文件,若没有,则返回编译器指定目录下查找,若还是找不到则返回错误。
6.头文件中的#ifndef/#define/#endif的作用主要防止头文件的重复包含。
7.检测本机的大小端类型
9.#define的应用,数据较大时在数字后面加UL
10.宏定义与应用  inline内敛函数 直接加在函数名前,适用于简单函数的替换。
    #define MIN(a,b) ({if(a<b) return a;\
    else return b;})
回车要用转译符\代替
11.指针、数组、函数的重合定义
文章推荐:程序员的十层楼
12.优先级运算
编程题
1.实现整数传任意进制
2.设计一种排序方法,安装元素的频率对数组进行排序,频率高的在前,频率相同的元素按照原来的顺序排列。比如:
数组 int a[19] = {1,2,2,3,3,3,4,4,5,5,5,5,6,6,6,7,8,9,10},输出:{5,5,5,5,3,3,3,6,6,6,2,2,4,4,1,7,8,9,10};
逻辑推理
922

0 0