当前位置: 首页 > news >正文

C语言--每日五道选择题--Day20

第一题

1. 在如下结构定义中,不正确的是( )。

A:

struct student 
{  int no;  char name[10];  float score; 
};

B:

struct stud[20]
{  int no;  char name[10];  float score; 
};

C:

struct student 
{  int no;  char name[10];  float score; 
}stud[20];

D:

struct  
{  int no;  char name[10];  float score; 
}stud[20];

答案及解析 B

本题考查的是结构体的定义可以在哪里定义。

A:正确,A是声明,没有定义,我们可以在别的地方定义

B:错误,不可以把数组作为结构体名

C:正确,在结构体右括号末尾定义结构体对象,只不过是定义的结构体数组

D:正确,这种没有声明结构体的名的结构体是匿名结构体

第二题

2. 在 32 位平台上,这个联合的大小是()字节

union test {int x;char y;float z;
};

A:7

B:2

C:1

D:4

答案及解析 

union联合体是共用一个存储空间的,但是至少是最大的成员所需要的空间,int 是 4字节,char 是 1字节,float 是 4字节,所以最大成员就是4字节,这个联合体就是4字节。

第三题

3. 下面程序执行的结果为()

int main( ) { char ch1,ch2;ch1 ='D'+'8'-'3';ch2 ='9'-'1';printf("%c %d\n",ch1,ch2);return 0;
}

A:I '8'

B:I 8

C:G '8'

D:其他几项都不对

答案及解析 B

本题是考查大家对ASCII值的了解,但这里其实用不到ASCII,我们可以推断'8' - '3'的转换成ASCII值的变化量是相同的,所以'8' - '3' = 8 - 3 = 5,‘D’ + 5 = ‘I’。同理ch2 = 8;答案就是B

第四题

4. DIV (x+5,y-5)引用,替换展开后是( )

#define DIV(a, b) a / b

A:x+5/y-5

B:(x+5/y-5)

C:(x+5)/(y-5)

D:(x+5)/(y-5);

答案及解析 A

这里考查的是宏替换的问题,记住是替换,不要添加多余的括号,所以平行替换就是A

第五题

5. 有下面一段代码,执行会出现什么问题?

#define NUM 5
char str[NUM-1];
str[sizeof(str)]='\0';

A:没有问题

B:数组越界

C:赋值错误

D:忘记加地址运算符&

答案及解析 B

str[NUM-1] 替换成 str[4],是一个字符串,有4个元素,sizeof(str)计算的是整个数组的大小,因为sizeof+数组名是代表整个数组,所以总大小为4,

原式=str[4] ,但是下标访问数组的范围是0~3,没有下标为4的元素,是越界访问。

http://www.lryc.cn/news/237341.html

相关文章:

  • Fourier分析导论——第6章——R^d 上的Fourier变换(E.M. Stein R. Shakarchi)
  • 音视频技术在手机上的应用与挑战
  • 三十分钟学会SCALA
  • leetcode做题笔记242. 有效的字母异位词
  • 沸点 | Ultipa 图数据库金融应用场景优秀案例首批入选,金融街论坛年会发布
  • GaussDB SQL基础语法示例-GOTO语句
  • ClickHouse 物化视图
  • 原理Redis-ZipList
  • 小迪安全笔记——Web架构篇语言中间件数据库系统源码获取
  • Linux从 全栈开发 centOS 7 到 运维
  • Harmony Ble 蓝牙App (一)扫描
  • 录制第一个jmeter性能测试脚本2(http协议)——webtour
  • 时间序列与 Statsmodels:预测所需的基本概念(1)
  • 计算机网络(持续更新…)
  • BetterDisplay Pro for Mac(显示器校准软件)
  • Node.js之TCP(net)
  • 何时使用Elasticsearch而不是MySql?
  • nodejs微信小程序 +python+PHP+图书销售管理系统的设计与实现-网上书店-图书商城-计算机毕业设计
  • 云原生周刊:Istio 1.20.0 发布 | 2023.11.20
  • Ajax基础(应用场景|jquery实现Ajax|注意事项)
  • 【SpringCloud】Eureka基于Ribbon负载均衡的调用链路流程分析
  • Springboot和Vue+MYSQL项目(基本介绍+前后端结合初步项目)+maven+mybatis
  • 基于单片机K型热电偶温度采集报警系统
  • 利用OpenCV做个熊猫表情包 二
  • 华纳云服务器怎么清理cdn缓存?
  • python functools.wraps保留被装饰函数属性
  • 【多线程 - 11、死锁】
  • flask实现session开发
  • paddle dataset
  • 接口自动化测试实战:JMeter+Ant+Jenkins+钉钉机器人群通知完美结合