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

news2024/11/19 7:40:10

        今天是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。

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络编程课后模拟面试

思维导图&#xff1a; 面试题目&#xff1a; 1、 什么是回调函数 答&#xff1a;回调函数是一种作为参数传递给其他函数的函数。当特定事件发生或条件满足时&#xff0c;调用包含回调函数的函数来执行特定的操作。回调函数允许在不阻塞程序执行的情况下&#xff0c;异步地处理…

Flask入门一(介绍、Flask安装、Flask运行方式及使用、虚拟环境、调试模式、配置文件、路由系统)

文章目录 一、Flask介绍二、Flask创建和运行1.安装2.快速使用3.Flask小知识4.flask的运行方式 三、Werkzeug介绍四、Jinja2介绍五、Click CLI 介绍六、Flask安装介绍watchdog使用python--dotenv使用&#xff08;操作环境变量&#xff09; 七、虚拟环境介绍Mac/linux创建虚拟环境…

liunx操作系统 进程的基本概念

进程的基本概念 计算机结构体系冯诺依曼 操作系统的管理进程进程的特性标识符系统的调用 创建新的进程 进程的状态进程队列进程的状态在liunx查看进程状态、 计算机结构体系 冯诺依曼 在没有存储器之前&#xff0c;所有的信息都是直接进入CPU&#xff0c;这样效率很差&#xf…

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

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

LabVIEW磁阻自动优化测量系统

LabVIEW磁阻自动优化测量系统 介绍了一种基于LabVIEW开发的磁阻自动优化测量系统&#xff0c;通过自动优化测试分辨率和高度模块化设计&#xff0c;大幅提升磁阻测试的效率和准确性。系统采用功率电源、电磁铁、高分辨率特斯拉计、步进电机转动器、精密电流源与精准电压表等硬…

Zookeeper启动报错排查

前言&#xff1a;生产linux部署的zookeeper&#xff0c;执行启动脚本后&#xff0c;还是无法使用&#xff0c;故进行重启排查 在zookeeper的bin目录下执行 ./zkServer.sh start-foreground 可实时查看启动日志排查问题 根据上面的日志可以看出&#xff0c;是zoo.cfg配置文件里…

Vue3之属性传值的四种情况

文章目录 Vue3之属性传值的四种情况一、引言二、父组件向子组件传值三、子组件向父组件传值四、祖先组件向后代组件传值五、兄弟组件之间传值 Vue3之属性传值的四种情况 一、引言 在vue3中&#xff0c;组件与组件之间是可以传递属性的&#xff0c;包括三种类型&#xff1a; …

【vue】什么是虚拟Dom,怎么实现虚拟DOM,虚拟DOM一定更快吗

什么是虚拟Dom 虚拟 DOM 基于虚拟节点 VNode&#xff0c;VNode 本质上是一个对象&#xff0c;VDOM 就是VNode 组成的 废话&#xff0c;js 中所有的东西都是对象 虚拟DOM 为什么快&#xff0c;做了哪些优化 批量更新 多个DOM合并更新减少浏览器的重排和重绘局部更新 通过新VDO…

2024年腾讯云优惠券领取、使用、常见问题解答

随着云计算技术的日益普及&#xff0c;越来越多的个人和企业选择将业务迁移到云端。腾讯云作为国内领先的云计算服务提供商&#xff0c;经常推出各种优惠活动吸引用户上云&#xff0c;其中就包括发放腾讯云优惠券&#xff0c;本文将为大家详细介绍2024年腾讯云优惠券的领取、使…

【前端入门】设计模式+单多页+React

设计模式是一种解决特定问题的经验总结&#xff0c;它提供了经过验证的解决方案&#xff0c;可以在软件开发过程中使用。设计模式可以帮助前端开发人员更有效地组织和管理代码&#xff0c;并提供一种共享的语言和框架&#xff0c;以便与其他开发人员进行交流。 以下是一些常见…

XXL-JOB调度中心——定时任务

1、在调度中心新增一个执行器 2、在项目工程的service工程添加依赖 <dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId> </dependency>3、在nacos上配置xxl-job xxl:job:admin: addresses: http://loca…

Rocky Linux 运维工具 mv

一、mv的简介 ​​mv​是Linux系统中的命令&#xff0c;用于移动文件或重命名文件。它可以在同一文件系统内将文件从一个目录移动到另一个目录&#xff0c;也可以修改文件的名称。 二、mv的参数说明 1、 三、mv的实战示例 1、重命名 ###查看目录/root/下的文件列表 [rootloc…

matlab批量替换txt文本文件的特定行的内容

1.下图所示&#xff0c;我想要替换第14行。 2.运行代码后&#xff0c;第14行已经更改为需要的内容。 clc,clear; %%----------------------需要更改的地方------------------------------------ % 设置要操作的文本文件路径&#xff0c;替换为你自己的文件路径 path D:\paper_…

如何在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;既可…

STM32实现webserver显示数据及配置参数

之前已经在STM32中移植好了FREERTOSLWIP&#xff0c;要实现webserver配置参数及显示数据&#xff0c;需要使用到httpdcgissi cubeMx中配置以及代码实现参考&#xff1a;ECE471/571 (RTOS) STM32 FreeRTOSLwIP Example - Interactive Web Site 其实提到的将fsdata.c重命名为fs…

ruoyi框架学习

RBAC模型 数据字典 拦截器 token没有&#xff0c;submit&#xff0c;request.js中&#xff0c;前端前置拦截器&#xff0c;响应拦截器 后台 注解

强化学习Agent系列(二)——PyGame虚拟环境创建与Python 贪吃蛇Agent制作实战教学

文章目录 一、前言二、gymnasium 简单虚拟环境创建1、gymnasium介绍2、gymnasium 贪吃蛇简单示例 三、基于gymnasium创建的虚拟环境训练贪吃蛇Agent1、虚拟环境2、虚拟环境注册3、训练程序4、模型测试 三、卷积虚拟环境1、卷积神经网络虚拟环境2、训练代码 一、前言 大家好&am…

【Java多线程】面试常考——锁策略、synchronized的锁升级优化过程以及CAS(Compare and swap)

目录 1、锁的策略 1.1、乐观锁和悲观锁 1.2、轻量级锁和重量级锁 1.3、自旋锁和挂起等待锁 1.4、普通互斥锁和读写锁 1.5、公平锁和非公平锁 1.6、可重入锁和不可重入锁 2、synchronized 内部的升级与优化过程 2.1、锁的升级/膨胀 2.1.1、偏向锁阶段 2.1.2、轻量级锁…

如何调用GLM-4 API实现智能问答

诸神缄默不语-个人CSDN博文目录 GLM系列大模型是智谱AI提供的系列语言模型&#xff0c;GLM-4没有开源&#xff0c;只提供了API。本文介绍如何用Python语言调用GLM-4 API实现智能问答。 智谱AI为所有用户提供了18元免费额度&#xff0c;可以试用。 文章目录 1. 获得API key2. …

探索AI视频模型的无限可能:OpenAI的Sora引领创新浪潮

文章目录 &#x1f4d1;前言一、技术解析二、应用场景三、未来展望四、伦理与创意五、用户体验与互动&#x1f324;️总结 &#x1f4d1;前言 随着人工智能技术的蓬勃发展&#xff0c;AI视频模型正逐渐成为科技领域的新宠。在这个变革的浪潮中&#xff0c;OpenAI推出的首个AI视…