牛客错题1

本文介绍了C语言中浮点数与零比较的方法,如fabs函数的运用,以及如何判断浮点数是否接近于零。此外,详细探讨了一个递归函数的例子,解释了其调用过程和输出结果。同时,讲解了预处理指令如#define、#if等在条件编译中的应用,以及如何利用strstr函数在字符串中查找子串。

1、

下列哪种方式可以完成float a与0的比较: fabs(a) < 0.00001f
解析:
float类型和0比较大小:if(x<0.00001 && x>-0.00001)
fabs(a):a的绝对值
< 小于号

2、递归算法:
以下代码

int x (int n) {     //这里X是一个函数!!!!
    if (n <= 3)
        return 1;
    else
        return x (n - 2) + x (n - 4) + 1;   
         //这一个式子仍将调用x函数
}
int main (void) {
    printf ("%d\n", x (x (8)));   
     //这里的x(x(8))可以看成两层,一层是内层x(8),第二层则是另外一个x
    return 0;
}

的输出和x函数被调用的次数分别是?()

解析:
第一次调用x(8),8>3,执行x (n - 2) + x (n - 4) + 1;
这是第1次调用,将8代入得到x(6)+x(4)+1;
继续调用x函数,由于6和4都大于3,所以上一步得到的式子调用了2次x函数,得到结果x(4)+x(2)+1+x(2)+x(0)+1+1;
上述式子中,又需要调用4次x函数,并得到式子x(2)+x(0)+1+1+1+1+1+1+1;
这里又调用了2次x函数,最后return 9;
则第一层调用的x次数为:1+2+4+2=9次

到了第二层,为x(9),继续上述执行思路,可得到结果:第二次也是调用了9次x函数

3、从字符串里寻找一串字符的函数时下面哪一个?

strstr(str1,str2) 函数是字符串处理函数之一,位于头文件 “string.h”中strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回 str1字符串从 str2第一次出现的位置开始到 str1结尾的字符串;否则,返回NULL。

4、转义字符
以下字符中不是转义字符的是()。
‘\c’

这里是引用

5、可以用()和()指令扩展条件编译结构来测试多种条件

这里是引用

#define 定义一个预处理宏
#undef 取消宏的定义
#if 编译预处理中的条件命令,相当于C语法中的if语句
#ifdef 判断某个宏是否被定义,若已定义,执行随后的语句
#ifndef 与#ifdef相反,判断某个宏是否未被定义
#elif 若#if, #ifdef, #ifndef或前面的#elif条件不满足,则执行#elif之后的语句,相当于C语法中的else-if(扩展条件)
#else 与#if, #ifdef, #ifndef对应, 若这些条件不满足,则执行#else之后的语句,相当于C语法中的else(扩展条件)
#endif #if, #ifdef, #ifndef这些条件命令的结束标志.
defined  与#if, #elif配合使用,判断某个宏是否被定义

### 网 SQL 刷题基础练习指南 网是一个提供多种编程语言据库练习的在线平台,非常适合初学者求职者进行 SQL 基础练习。以下是详细的 SQL 基础练习指南,帮助你高效地在网上进行 SQL 学习。 #### 1. 注册并登录 首先,你需要在网上注册一个账号,并登录。可以使用手机号、邮箱等方式进行注册。注册完成后,登录到你的账户。 #### 2. 进入刷题页面 登录后,进入“刷题”页面,选择“据库/SQL”分类。网提供了丰富的 SQL 题目,涵盖了基础查询、复杂查询、据库设计等多个方面。 #### 3. 选择题目进行练习 网的 SQL 题目分为不同的难度等级,包括入门、简单、中等、较难困难。建议初学者从简单的题目开始练习,逐步提高难度。你可以通过分类浏览选择题目,也可以直接搜索特定的题目。 - **SQL 快速入门**:共 42 题,适合初学者快速上手。 - **SQL 大厂笔试真题**:共 74 题,包含一些知名企业的笔试题目。 - **SQL 热题**:共 82 题,涵盖常见的高频题目。 - **SQL 必知必会**:共 50 题,适合巩固基础知识。 #### 4. 查看题解与讨论 提交完 SQL 答案后,你可以查看网提供的题解,或与其他刷题用户一起讨论,了解更优的解法。网的讨论区非常活跃,有很多高手分享他们的思路代码,这对新手非常有帮助。 #### 5. 做错题复习 每做错一题,你可以在错题本里记录下来,便于后续复习总结。网提供了错题本功能,方便你随时回顾自己做错的题目。 #### 6. 挑战赛/竞赛 网还定期举办 SQL 挑战赛竞赛,这些活动不仅可以检验你的学习成果,还可以与其他用户竞争,提升自己的技能。 #### 建议 - **从简单题目开始**:建议从简单的题目开始刷题,逐步提高难度,确保基础扎实。 - **刷满 150 题以上**:为了更好地掌握 SQL,建议至少刷 150 道题目,涵盖不同类型的题目。 #### 示例代码 以下是一个简单的 SQL 查询示例,用于统计某个用户在网上完成的试卷量: ```sql SELECT uid, COUNT(exam_id) AS exam_count FROM exam_record WHERE submit_time IS NOT NULL GROUP BY uid; ``` 这个查询可以帮助你了解用户完成试卷的情况,进一步分析用户的答题行为。 ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值