热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C/C++语言考试习题

1C语言是一门编译型语言gcc-Edemo.cgcc-Sdemo.cgcc-cdemo.c2在CC中,只要是以“#”开头的,都是预处理命令#in

1 C语言是一门编译型语言

gcc -E demo.c
gcc -S demo.c
gcc -c demo.c

2 在C/C++中,只要是以“#”开头的,都是预处理命令

#include // 文件引入
#define MAXSIZE 10 // 宏定义
#ifdef n // 条件编译

3 %s表示的是字符串的格式

char str[] = "abcd";
printf("%s", str);

4 头文件只能放函数的声明,而源文件需要放函数的定义,这是工程开发的规范

// .h
void func();
// .c
#include
void func() {printf("Hello World");
}
int main() {func();
}

5 对于%2的位运算可以使用&1的位运算去替换

6 设有100个元素,用折半查找法去查找,最大比较次数为7次

int func(int arr[], int length, int keyword) {int low &#61; 0, high &#61; length - 1, mid;while (low <&#61; high) {mid &#61; (high - low)/2 &#43; low;if (keyword &#61;&#61; arr[mid]) {return mid;}else if (keyword >&#61; arr[mid]) {low &#61; mid &#43; 1;}else {high &#61; mid - 1;}}return -1;
}

7 二进制数字11111111111111111111111111111111&#xff08;32个1&#xff09;表示的十进制整数为-1
由符号位可知&#xff08;0正1负&#xff09;&#xff0c;此为负数&#xff0c;因此该码为补码&#xff0c;将其还原为原码步骤为&#xff1a;

  • 末位减1&#xff1a;11111111111111111111111111111110
  • 数值位取反&#xff1a;100000000000000000000000000000001
  • 所以原码为&#xff1a;-1 * &#xff08;1 * 2^0&#xff09; &#61; -1

8 数组的大小可以通过sizeof()获得

sizeof(arr);

9 数组可以分为一维和高维&#xff0c;但是计算机底层都是按照一维数组去存储的

10 typedef可以给非结构体类型设置类型别名

typedef struct LNode {int val;struct LNode* next;
}LNode, *LinkList;

11 以下程序的输出结果为&#xff08;&#xff09;。#define ADD(x) xx main( ) { int a&#61;4,b&#61;6,c&#61;7,d&#61;ADD(a&#43;b)c; printf(“d&#61;%d”,d); } 70

12 在64位操作系统中&#xff0c;任何类型的指针变量都占8字节的空间大小

int n &#61; 1;
int* n_ptr &#61; &n;
printf("%d", sizeof(n_ptr));

13 设a为int型变量&#xff0c;执行下列赋值语句后&#xff0c;a的取值分别是&#xff08;&#xff09;a&#61;125.534; a&#61;(int)125.521%4; a&#61;5<<2; 125 1 20

14 C语言的默认执行顺序是从主函数开始向下执行的

int main() {printf("Hello World");return 0;
}

15 在C语言中要想使用printf函数需要包含下面哪个头文件&#xff1a;#include

int main() {printf("Hello World");return 0;
}

16 若有定义&#xff1a;char a;int b;float c;double d;则表达式“a&#43;b*c-d”的类型为&#xff08;&#xff09;double

17 printf函数的返回值代表着成功输出字符的个数

int main() {int n &#61; printf("Hello World");printf("%d", n);return 0;
}

18 在64位操作系统中&#xff0c;一个int类型变量占4字节的空间大小

19 任何一个字符都对应着一个整型值

char str &#61; &#39;a&#39;;
printf("%d", str);

20 字符串“hello”要大于字符串“hallo”

21 C语言的程序流程结构分为顺序结构、分支结构和循环结构

22 要想接收int arr[2] [3]这个数组&#xff0c;可以采用下面哪种形式&#xff1a;int (*p)[3];

23 2/3的值为0

24 递归函数就是函数自己调用自己的过程

25 C语言的可移植性要远远高于汇编语言

26 递归函数就是函数内部自己调用自己的过程

27 一个结构体 struct Node {int a; char b, int c; char d;}; 定义的一个变量所占大小为&#xff1a;16字节

struct Node {int a;char b;int c;char d;
};
Node n;
sizeof(n);

28 异或运算^是一类“逆运算”

补充一点其他的东西

Unix系统在C之前
IDE&#xff1a;Intergrated Development Environment
Linux和MacOS是基于Unix系统


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 【重识云原生】第四章云网络4.8.3.2节——Open vSwitch工作原理详解
    2OpenvSwitch架构2.1OVS整体架构ovs-vswitchd:守护程序,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换flow-basedswitchin ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 006_Redis的List数据类型
    1.List类型是一个链表结构的集合,主要功能有push,pop,获取元素等。List类型是一个双端链表的结构,我们可以通过相关操作进行集合的头部或者尾部添加删除元素,List的设 ... [详细]
  • 如何用JNI技术调用Java接口以及提高Java性能的详解
    本文介绍了如何使用JNI技术调用Java接口,并详细解析了如何通过JNI技术提高Java的性能。同时还讨论了JNI调用Java的private方法、Java开发中使用JNI技术的情况以及使用Java的JNI技术调用C++时的运行效率问题。文章还介绍了JNIEnv类型的使用方法,包括创建Java对象、调用Java对象的方法、获取Java对象的属性等操作。 ... [详细]
author-avatar
0o可人儿o0_962
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有