数据结构二

ops/2024/9/23 13:01:41/
  1. 求 sizeof(name1)?(晟安信息)

struct name1{

    char str;

    short x;

    int num;

};

sizeof name1内存对齐 8个字节 char分配8个字节 然后 short节省空间在4个字节中

而这个int独自分配分配内存 4个字节所以共8个字节

  1. (电工时代)

typedef struct _a

{

    char c1;

    long i;

    char c2;

    double f;

}a;

在64位得计ge算机下 共32个字节long 是占8个字节 但是32位得情况下24个字节 long 占4个字节但是所以可以分配在 char得内存地址中 ,所以占8个字节 而char占8个字节 而 double占8个字节24个字节

typedef struct _b

{

    char c1;

    char c2;

    long i;

    double f;

}b;

sizeof(a) = _____32/24__;

sizeof(b) = _24______;

  1. 给了一个结构体,求 sizeof(struct A) = __16______。 (鲁科安全,软通动力)

struct A{

    char a;

    char b;

    char c;

  short d;

    int e;  

    short f;

}

  1. 有一个如下的结构体,请问在64位编译器下用 sizeof(struct A) 计算出的大小是多少?( A) (鲁科安全)

struct A{

    long a1;

    short a2;

    int a3;

    int *a4;

}

A. 24 B. 28 C. 16 D. 18

对于结构体来说 

  1. 有以下说明语句,则下列错误的引用 是(        B )。(山大华天)

struct stu

{

    int no;

    char name[21];

};

stu w, *p = &w;

A. w.no B*p.no C. p->no D. (*p).no

对于B来说是语法错误 如果真的要w得数据应该括号解引用

  1. 写出下述程序结果: (中维世纪)

typedef struct test

{

    char x1;

    short x2;

    float x3;

    char x4;

}TEST_T;

printf("%d", sizeof(TEST_T));

12 char被分配4个内存  short被分配到 x1 而float分配4个字节而x4则分配4个字节

则是12个字节

  1. 下面的代码输出是什么,为什么?(64位环境) (信雅达)

struct {

    char *a1;

    long a2;

    short a3;

}A;

int main(void)

{

    printf("%d", sizeof(A));

}

对于这一块代码 24个字节 在64位得存储下 分别为8字节存储 

  1. 设有如下结构定义: struct student { int num; char name[20]; char sex; int age; char addr[30];} stud; 若用printf("%s\n", .....)访问该结构中name值的正确方法是 (D ) (杭州快越科技)

A. stud -> name B. &stud.name

C. stud.&name D. stud.name

存储得时数组正确得表达方式就是存储方式就是带 . stud.name来表达字符串得类型

  1. struct 

{

short a; char b; float c;

}cs;

则sizeof(cs)的值是(D ) (苏州特点电子科技)

A.4 B.5 C.7 D.8

  1. 如下函数的输出结果是:【 】

struct node

{

char a; short b; char c; int d;

};

struct node s = { 3, 5, 6, 99 };

struct node *pt = &s;

printf("%X\n", *(int*)pt);

对于 结构体存储来看 是这样存储得

a 0x03

0x00

0x05

0x00

c 0x0006

d0x00 00 00 63

在计算机是这样存储得但计算机时小段存储所以在存储书记时低地址存在高位 而低地址存在低位 所以 存储方式应该是 0x 00050003

  1. 编程题:定义学生结构体,存储学生的学号、姓名、分数,定义长度为5的结构体数组,实现:

①输入学生信息

②输出学生信息

③计算学生的成绩总分、平均分

④按照学生的分数进行排序

⑤输出排序后的数组


http://www.ppmy.cn/ops/114785.html

相关文章

HTML翻牌器:用CSS和HTML元素创造动态数字展示

HTML翻牌器:用CSS和HTML元素创造动态数字展示 前言 翻牌器是一种数字动态展示形式,在生活中常见的例如翻牌计分、翻牌时钟等。 之所以以翻牌的形式是因为其物理设计的原因使其只能滚动翻牌展示数字,在电子显示设备不普及时,使用…

后端开发刷题 | 合并区间

描述 给出一组区间,请合并所有重叠的区间。 请保证合并后的区间按区间起点升序排列。 数据范围:区间组数 0≤n≤2105,区间内 的值都满足 0≤val≤2105 示例1 输入: [[10,30],[20,60],[80,100],[150,180]] 返回值&#xff1a…

docker- No space left on device

mac苹果电脑docker: No space left on device 首先检查一下有没有用不到的镜像,docker images 可以进行rmi,但一般都还有用。 第一步,查看docker挂载的空间 [rootlocalhost ~]# df -h 文件系统 容量 已用 可用 已用%…

如何创建模板提示prompt

定义模型 from langchain_ollama import ChatOllamallm ChatOllama(base_url"http://ip:11434",model"qwen2",temperature0,tool_choice"auto" )什么是提示模板? 它的目的是根据不同的输入动态生成特定格式的文本,以便…

适合金融行业的银行级别FTP替代升级方案

在数字化办公日益普及的今天,金融领域对数据传输的需求日益增长,场景也变得更加多样化和复杂。这不仅包括内部协作,还涉及金融服务、外部合作以及跨境数据流动等方面。因此,金融行业对数据传输系统的要求越来越高,传统…

C++离线查询

前言 C算法与数据结构 打开打包代码的方法兼述单元测试 概念及原理 离线算法( offline algorithms),离线计算就是在计算开始前已知所有输入数据,输入数据不会产生变化,且在解决一个问题后就要立即得出结果的前提下进行的计算。 通俗的说&a…

通过markdown表格批量生成格式化的word教学单元设计表格

素材: 模板: 代码: import pandas as pd from python_docx_replace import docx_replace,docx_get_keys from docx import Document from docxcompose.composer import Composerdef parse_markdown_tables(file_path):with open(file_path,…

K8S - Access Control 机制介绍

作为开发人员, 我们通常会直接用root 帐号操作 k8s master node 里的kubectl 命令,并不能感知k8s 多用户权限管理存在。 即使自动化, 我们也会考虑用ansible 来远程操作master node… 所以大部分开发人员默认上是不用深入研究k8s的Access c…