C语言—每日选择题—Day63

指针相关博客

打响指针的第一枪:指针家族-CSDN博客

深入理解:指针变量的解引用 与 加法运算-CSDN博客

第一题

  1. 设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为
    A:0~255

B:0~3267

C:0~65535

D:0~2147483647

答案及解析 C

unsigned int 是无符号的类型,二进制位中最高位是数值位

所以最大值:1111 1111 1111 1111 = 65535

第二题

  1. 执行下列程序:
cpp 复制代码
#define MA(x, y)  (x*y)
i = 5;
i = MA(i,i+1)-7;

变量i的值应为( )
A:30

B:19

C:23

D:1

答案及解析 B

define宏定义是替换

i = MA(i, i + 1) - 7 = i * i + 1 - 7 = 19

第三题

  1. 用fopen函数打开一个新的二进制文件,该文件既能读也能写,则文件方字符串应是()
    A:"ab++"

B:"wb+"

C:"rb+"

D:"ab"

答案及解析 B

第四题

  1. 请问下列代码的输出是多少()
cpp 复制代码
#include <stdio.h>
int main() 
{
    int m[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
    int(*p)[4] = (int(*)[4])m;
    printf("%d", p[1][2]);
    return 0;
}

A:7

B:3

C:8

D:4

答案及解析 A

本题是将指针数组和一维数组进行联系,将一维数组m强制转换为指针数组类型,数据范围是4个元素,所以p[1][2] 相当于 *(*(p + 1) + 2),先向后移动4个元素大小,再移动两个元素大小。

第五题

  1. 有以下定义: char a; int b; float c; double d;则表达式a*b+d-c值的类型为:

A:float

B:int

C:char

D:double

答案及解析 D

本题涉及到隐式类型转换隐式类型转换(整型提升和截断)、强制类型转换的总结-CSDN博客

相关推荐
合作小小程序员小小店4 分钟前
舆情,情感微博系统demo,基于python+qt+nlp,开发语言python,界面库qt,无数据库版,数据来自第三方网站获取,
开发语言·pytorch·qt·自然语言处理·nlp
La Pulga8 分钟前
【STM32】FLASH闪存
android·c语言·javascript·stm32·单片机·嵌入式硬件·mcu
hashiqimiya10 分钟前
c++的头文件使用
开发语言·c++·算法
panamera1215 分钟前
C++中vector
开发语言·c++
拳里剑气15 分钟前
C++:string的使用
开发语言·c++·学习方法
国服第二切图仔19 分钟前
Rust开发之Result枚举与?运算符简化错误传播
开发语言·python·rust
美狐美颜SDK开放平台42 分钟前
直播美颜sdk特效功能架构全解析:从图像处理到AI渲染的技术演进
图像处理·人工智能·算法·架构·1024程序员节·美颜sdk·直播美颜sdk
Dovis(誓平步青云)44 分钟前
《静态库与动态库:从编译原理到实战调用,一篇文章讲透》
linux·运维·开发语言
Nan_Shu_6141 小时前
学习:JavaScript(1)
开发语言·javascript·学习·ecmascript
zhangx1234_1 小时前
C语言题目1
c语言·开发语言·数据结构