07 2023 档案
摘要:如果函数递归缺少出口设置,容易出现类似死循环的效果,且很快内存耗光程序异常结束 注意:如果能用循环解决的问题,不要用递归,因为递归比循环更耗时耗内存 1.使用递归解决计算第N项斐波那切数列 斐波那契数列:F(0)=1,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈
阅读全文
摘要:#include<stdio.h> #include<stdbool.h> #include<stdlib.h> #include<getch.h> char board[15][15]; //棋盘 char role = '@'; //角色 char key_x,key_y; //下子坐标 //初
阅读全文
摘要:五子棋项目: 数据分析: 1、定义15*15棋盘二维数组 2、定义角色变量(1?2?) '@'黑棋 '$' 白棋 '*'空 char role = '@'; 3、定义变量 用于记录落子位置 逻辑分析:考虑是否需要初始化棋盘 for(;;) { 1、清屏、打印棋盘 2、落子 判断是否超范围 如果是则提
阅读全文
摘要:类型限定符:(对类型进行额外的说明) auto 用于定义自动申请、自动释放内存的变量(局部变量),不加就代表加了(与singed类似) 注意:在C11语法标准中用于自动类型识别 auto num = 10; //int auto num = 3.13;//double 注意:不用用它修饰全局变量 e
阅读全文
摘要:自定义函数 函数声明: 返回值类型 函数名(形参类型1 形参名1,形参类型2 形参名2); 函数定义: 返回值类型 函数名(形参类型1 形参名1,形参类型2 形参名2) { //函数体 } 函数调用: 函数名(实际参数1,实参2); 函数声明:告诉调用者该函数的调用格式 C中函数名建议小写,可用下划
阅读全文
摘要:实现一个函数,找出数组中的最大值实现一个函数,对数组进行排序实现一个函数,查找数组中是否存在某个值,如果存在返回该数值在数组中的下标 #include<stdio.h> #include<time.h> #include<stdlib.h> //找最大值find_max(int arr[],int
阅读全文
摘要:数据在计算机中以补码形式存储 #include<stdio.h> int main(int argc,const char* argv[]) { int num = 0; scanf("%d",&num); char bits[32]={}; for(int i=0; i<32; i++) { bi
阅读全文
摘要:#include<stdio.h> int main(int argc,const char* argv[]) { char rets[200] = {1}; //把结果的每位数存到数组中 int cnt = 1; //记录位数 for(int i=2; i<=100; i++) { int car
阅读全文
摘要:回文数:正着读和倒着读的数据一样 #include<stdio.h> #include<stdbool.h> bool is_back_num(int num) { int old_num=num,new_num=0; while(num) { new_num = new_num*10 + num%
阅读全文
摘要:#include<stdio.h> #include<stdint.h> #include<stdbool.h> #include<stdlib.h> uint32_t date_to_days(uint16_t y,uint8_t m,uint8_t d); //把日期转换成天数 bool is_
阅读全文
摘要:#include<stdio.h> #include<stdbool.h> bool is_prime(int num); bool is_prime(int num) { for(int i=2; i<num;i++) { if(0 == num%i) return false; //若能被i整除
阅读全文
摘要:C语言中函数是管理代码的最小单位,一个函数就是一个功能的实现 main函数是程序的入口,有且只有一个 C从源文件->可执行文件过程: 1.预处理 -E 生成.i预处理文件 2.编译 -S 生成.s汇编文件 3.汇编 -c 生成.o目标文件 4.链接 gcc x.o 生成a.out可执行文件 sign
阅读全文
摘要:1、和顺序栈相比,链栈有一个比较明显的优势是: A、通常不会出现栈满的情况 B、通常不会出现栈空的情况 C、插入操作更容易实现 D、删除操作更容易实现 答案:A;顺序栈是事先确定好大小的,链栈是动态的,它们的区别类似于数组和链表。因为顺序栈用数组实现,必须事先确定栈的大小,对内存的使用效率并不高,无
阅读全文
摘要:答案:C;%不能对浮点数求余。编译期不分配内存,但产生与分配内存相关的指令,运行期对内存进行分配。运行错误指无编译错误后产生的逻辑错误,如空指针异常、除数为0、越界访问等。编译错误是语法错误或很明显的逻辑错误,如缺少分号、括号、关键字书写错误、数据类型不匹配时进行赋值等等。 25、int a=4,则
阅读全文
摘要:答案:C,括号内的式子从左到右运算,先比较3<a的值,无论a为何值,3<a 的值为真(1)或者假(0),这个结构一定比5小。 答案:A;if判断语句中,++num1 > num2++的结果为0,则逻辑&&返回值为0,且不用再计算&&右边的结构,此时num1的值为4,f语句括号内容不执行,执行else
阅读全文
摘要:答案:B;0开头表示该数为八进制数,0x开头表示该数为十六进制数。 答案:D;sizeof对一个表达式求值,编译器根据表达式的最终结果类型来确定大小,一般不会对表达式进行计算,括号内的式子在运算时,整型会自动转换成浮点型。 答案:B;类型自动转换:在运算时,无符号数自动转换成有符号数,b转为有符号数
阅读全文