2月28日做题总结(C/C++真题)

        今天是2月28日,做题第三天。道阻且长,行则将至;行而不辍,则未来可期!

第一题

static char a[2]={'1','2','3'};说法是否正确?

A---正确

B---错误

正确答案:B

解析:数组定义时,中括号内代表数组大小。这题数组越界,所以错误。

第二题

若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是()

A---0

B---2

C---1.5

D---1

正确答案:D

解析:(x+y)%2取模运算(取余数):(x+y)%2=5%2=1 。(int)a/(int)b除法运算(取商):(int)a/(int)b=(int)2.5/3.5=0(int型除法运算取"整数部分",忽略余数)(x+y) % 2 + (int) a / (int) b =  1 。

第三题

若有定义语句: int year=1009 , *p=&year ;以下不能使变量 year 中的值增至 1010 的语句是()

A---*p+=1;

B---(*p)++

C---++(*p)

D---*p++

正确答案:D

解析:++ 作为后缀时的优先级比* 高,结合律从左到右。因此D *p++ 是先p++, 而后*(p++)的。

++作为后缀时优先级和()一样高,结合律从左到右。结合律仅考虑同优先级时。因此(*p)++ 能够先得到1009 然后++。++ 作为前缀时的优先级和* 一样高, 结合律从右到左, 所以C可以写成++*p == ++(*p)的。

第四题

请问下面的程序一共输出多少个“-”()

int main(void)
{
    int i;
    for (i = 0; i < 2; i++) 
    { 
        fork(); 
        printf("-"); 
    } 
    return 0; 
} 

A---2

B---4

C---6

D---8

正确答案:D

解析:如图所示

        最终的打印出数据是在进程退出的时候也就是return或者exit进行缓冲区刷新的时候打印出来的数据,6次调用printf函数共输出8次。

第五题

对于int j,a[10],*p;,下列语句中合法的是() 

A---p=a;

B---p=a[5];

C---p=a[2]+2;

D---p=&(j+2);

正确答案:A

解析:A选项中,表示将数组a的首地址赋值给指针变量p。BC选项将一个int型变量直接赋值给一个int型的指针是不行的。D选项中j+2是一个右值,右值是不能进行取地址操作的。

第六题

以下代码在64位的机子上输出是()

#include <stdio.h>
int getSize(int data[])
{
    return sizeof(data);
}

int main()
{
    int data1[] = {1,2,3,4,5};
    int size1 = sizeof(data1);
    
    int* data2 = data1;
    int size2 = sizeof(data2);
    
    int size3 = getSize(data1);
    
    printf("%d, %d, %d", size1, size2, size3);
    return 0;
}

A---20,8,8

B---4,4,4

C---20,4,20

D---20,20,20

正确答案:A

解析:64位系统:int型占4个字节,指针占8个字节。data1[]数组大小是5,则4 * 5 = 20个字节;
data2指针,即8个字节;数组名data1作为函数getSize()的参数会退化成指针,即8个字节。

第七题

请问下面的程序一共输出多少个“-”()

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>

int main(void) 
{
    int i;
    for (i = 0; i < 2; i++) 
    {
        fork();
        printf("-\n");
    }
    return (0);
}

A---2

B---4

C---6

D---8

正确答案:C

解析:

        如图所示,共输出6个“-”。

第八题

以下对枚举类型名的定义中正确的是()

A---enum a={one,two,three};

B---enum a{a1,a2,a3};

C---enum a={'1','2','3'};

D---enum a{"one","two","three"};

正确答案:B

解析:枚举类型的定义如下,枚举在C/中,是一个被命名的整型常数的集合。
enum 枚举名

{

        标识符[=整型常数],

        标识符[=整型常数],

        ...

        标识符[=整型常数]

} 枚举变量;

故本题选B。

第九题

32位机器中,以下结构的sizeof(P)为()

struct A 
{
    int a;
    char b;
    int c;
    char d;
};
struct P
{
    struct A w[2];
    short b;
    struct A* p;
}

A---26

B---38

C---40

D---30

正确答案:C

解析:这道题考察结构体对齐和填充:结构体每个成员相对于结构体首地址的偏移量都是成员大小的整数倍,如果不是,编译器会自动在成员间填充。
struct A

{
        int a;                            //4 bytes
        char b;                        //1 bytes
        //char pad[3]               //3 bytes
        int c;                           //4 bytes
        char d;                       //1 bytes
        //char pad[3]              //3 bytes
}// total = 16 bytes

/* P中有结构体A的成员,但是计算时按照A中数据类型确定的*/

struct P

{
        struct A w[2];    // 2 * 16 bytes
        short b;            //2 bytes
        //char pad[2]    //2 bytes
        struct A* p;      //4 bytes
}  // total = 40 bytes

故本题选C。

        我们努力的意义,就是为了遇见优秀的人和更优秀的自己!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/415164.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统——Nginx拓展

目录 一、重写功能——rewrite 1.if 1.1 if 2. return 2.1状态码301和302的区别 301 302 3. set 4. break 5. rewrite 5.1 rewrite flag使用 5.2 flag说明 5.3举例 5.3.1访问 bj 跳转 beijing 5.3.2举例——break 5.3.3 http 转 https 5.3.4 break 与 last …

JavaScript 进阶03

编程思想 面向过程 面向过程就是分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候再一个一个的依次调用 面向对象 面向对象是把事务分解成为一个个对象&#xff0c;然后由对象之间分工与合作。 在面向对象程序开发思想中&a…

kali安装ARL灯塔(docker)

1、root身份进入容器 ┌──(root㉿Kali)-[~/桌面] └─# su root ┌──(root㉿Kali)-[~/桌面] └─# docker 2、先更新再克隆 ┌──(root㉿Kali)-[~/桌面] └─# apt-get update …

如何在windows系统部署Lychee网站,并结合内网穿透打造个人云图床

文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站&#xff0c;可以看做是云存储的一部分&#xff0c;既可…

蓝桥杯-常用STL(三)

常用STL &#x1f388;1.映射&#x1f388;2.map的基础使用&#x1f52d;2.1引入库&#x1f52d;2.2构造一个映射&#x1f52d;2.3插入一对映射&#x1f52d;2.4判断关键字是否存在&#x1f52d;2.5遍历映射&#x1f52d;2.6清空 &#x1f388;1.映射 &#x1f50e;映射是指两个…

xss.haozi.me靶场练习

靶场地址alert(1) 1、第一关 输入在文本框里面&#xff0c;我们闭合前面的标签&#xff0c;中间的内容我们就可以随意写了 2、第二关 逃逸value的属性即可&#xff0c;这里使用点击事件触发xss 3、第三关 看代码&#xff0c;使用了正则表达式&#xff0c;去掉了所有的括号字…

Apache POl

介绍 Apache POl是一个处理Miscrosoft Ofice各种文件格式的开源项目。简单来说就是&#xff0c;我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作,一般情况下&#xff0c;POI都是用于操作 Excel 文件。 Apache POl 的应用场景 1.银行网银系统导出交易…

如何正确清除电脑的缓存垃圾?终于明白了!

前言 新的电脑总是好的&#xff0c;各种干净整洁无垃圾。 使用了一段时间之后&#xff0c;小伙伴们就会发现电脑C盘飙红了。然后就各种论坛查找清除电脑垃圾的方法。 电脑正常使用下&#xff0c;是会产生很多缓存的&#xff0c;所以C盘红了也很正常。除非电脑组装之后不开机&a…

如何做代币分析:以 TRX 币为例

作者&#xff1a;lesleyfootprint.network 编译&#xff1a;cicifootprint.network 数据源&#xff1a;TRX 代币仪表板 &#xff08;仅包括以太坊数据&#xff09; 在加密货币和数字资产领域&#xff0c;代币分析起着至关重要的作用。代币分析指的是深入研究与代币相关的数据…

量子算法入门—4.量子比特与量子门(1)

1.量子比特 经典比特和量子比特 经典比特只有0、1两种取值&#xff0c;非黑即白&#xff0c;有n位即 2 n 2^n 2n种可能量子比特使用0、1的量子态描述量子比特的状态&#xff0c;可以通过线性组合形成新的量子态&#xff0c;就像光谱可以调节成分 引入线代记法&#xff0c;0、…

java程序设计案例教程王希军,渣本二面阿里受挫

1 JVM的内存区域布局 java代码的执行步骤有三点 java源码文件->编译器->字节码文件字节码文件->JVM->机器码机器码->系统CPU执行 JVM执行的字节码需要用类加载来载入&#xff1b;字节码文件可以来自本地文件&#xff0c;可以在网络上获取&#xff0c;也可以实时…

【Go语言】Go语言中的切片

Go语言中的切片 1.切片的定义 Go语言中&#xff0c;切片是一个新的数据类型数据类型&#xff0c;与数组最大的区别在于&#xff0c;切片的类型中只有数据元素的类型&#xff0c;而没有长度&#xff1a; var slice []string []string{"a", "b", "c…

android应用开发基础知识,安卓面试2020

第一章&#xff1a;设计思想与代码质量优化 1、设计思想六大原则 2、三大设计模式 3、数据结构 4、算法 第二章&#xff1a;程序性能优化 1、启动速度和执行效率优化 2、布局检测与优化 3、内存优化 4、耗电优化 5、网络传输与数据存储优化 6、APK大小优化 7、屏幕适配 8、…

Sora - 真正单兵作战时代来临了

一、 OpenAI Sora 视频生成模型技术报告总结 不管是在视频的保真度、长度、稳定性、一致性、分辨率、文字理解等方面&#xff0c;Sora都做到了SOTA&#xff08;当前最优&#xff09;。 技术细节写得比较泛&#xff08;防止别人模仿&#xff09;大概就是用视觉块编码&#xff08…

通过QScrollArea寻找最后一个弹簧并且设置弹簧大小

项目原因&#xff0c;最近需要通过QScrollArea寻找其中最后一个弹簧并且设置大小和策略&#xff0c;因为无法直接调用UI指针&#xff0c;所以只能用代码寻找。 直接上代码&#xff1a; if (m_scrollArea){int iScrollWidth m_labelSelectedTitle->width();m_scrollArea-&g…

第三百七十二回

文章目录 1. 概念介绍2. 实现方法2.1 maskFilter2.2 shader 3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"两种阴影效果"相关的内容&#xff0c;本章回中将介绍如何绘制阴影效果.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概…

Python爬虫实战第二例【二】

零.前言&#xff1a; 本文章借鉴&#xff1a;Python爬虫实战&#xff08;五&#xff09;&#xff1a;根据关键字爬取某度图片批量下载到本地&#xff08;附上完整源码&#xff09;_python爬虫下载图片-CSDN博客 大佬的文章里面有API的获取&#xff0c;在这里我就不赘述了。 一…

一文搞懂运放!

11.集成运放 集成电路是采用专门的制造工艺&#xff0c;在半导体单晶硅上&#xff0c;把晶体管、场效应管、二极管、电阻和电容等元器件以及它们之间的连线所组成的电路制作在一起&#xff0c;使其具有特定功能的芯片。 1.组成 集成运放由输入级、中间级、输出级和偏置电路四…

Python 深拷贝在接口自动化里的用法!

深拷贝&#xff08;deep copy&#xff09;常用于复制请求参数、配置对象或其他复杂数据结构&#xff0c;以确保每次发送请求时使用的是独立的数据副本&#xff0c;避免不同请求之间的数据互相影响。例如&#xff0c;当你需要多次调用同一个接口&#xff0c;但每次调用的参数略有…

关于静态应用程序安全测试(SAST)的自动修复(AutoFix)

SAST&#xff08;Static Application Security Testing&#xff0c;静态应用程序安全测试&#xff09;具是一种在软件工程中使用的安全解决方案&#xff0c;它主要用于在程序员编写好源代码后&#xff0c;无需经过编译器编译&#xff0c;直接对源代码进行扫描&#xff0c;以找出…