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

第一题

1、下列程序的输出是( )

cpp 复制代码
#include<stdio.h>
int main()
{
    int a[12]= {1,2,3,4,5,6,7,8,9,10,11,12};
    int *p[4];
    int i;
    for(i=0;i<4;i++)
    {
        p[i]=&a[i*3];
    }
    printf("%d\n",p[3][2]);
    return 0;
}

A: 上述程序有错误

B: 6

C: 8

D: 12

答案及解析 D

p是一个指针数组,p[i] = &a[i*3]相当于是把数组a每3个一组分开并把每组的首地址存在p数组,此时p类似一个4行3列的二维数组,p[3][2]就是4行第3个元素12,下面是图解:

第二题

2、二维数组X按行顺序存储,其中每个元素占1个存储单元。若 X[4][4] 的存储地址为 Oxf8b82140 , X[9][9] 的存储地址为 Oxf8b8221c ,则 X[7][7] 的存储地址为( )
A: Oxf8b821c4

B: Oxf8b821a6

C: Oxf8b82198

D: Oxf8b821c0

答案及解析 A

我们首先没办法确定这个二维数组的行就是9,列就是9,所以我们要假设每行有n个元素。

所以在X[9][9]和X[4][4]之间,一共有4n+(n-4)+9个元素;一个元素是一个存储单元,那他们的地址总共差了也是4n+(n-4)+9个;

所以21c - 140 = 4n + (n - 4) + 9;

解得 n = 43;

设x[7][7]的地址是z

所以x[7][7]和x[9][9]地址的距离为:

21c - z = 43 + 9 + 43 - 7;

解得 z = 1c4

第三题

3、以下哪个选项可以正确描述 sizeof(double) ( )
A: 一个整型表达式

B: 一个双精度型表达式

C: 一个不合法的表达式

D: 一种函数调用

答案及解析 A

sizeof是C语言中的一个操作符,不是函数调用,简单的说其作用就是返回一个对象或者类型所占的内存字节数,结果是无符号整数,因此可以把它看作是整型表达式。所以选择A

第四题

4、下列代码运行后的结果是什么( )

cpp 复制代码
int main()
{
    char a = 'a';
    char b;
    printf("%c,", ++a);
    printf("%c\n", b = a++);
    return 0;
}

A: b,b

B: b,c

C: a,b

D: a,c

答案及解析 A

前置++,保留的是++后的值

后置++,保留的是当前值

第五题

5、以下逗号表达式的值为( )

cpp 复制代码
(x = 4 * 5 , x * 5) , x + 5;

A: 25

B: 20

C: 100

D: 45

答案及解析 A

逗号表达式是从前到后依次计算子表达式,而其结果是最后一项的值,此题去掉括号后的表达式,和原表达式是等价的,先计算4*5并赋值给x,x变为20,中间x*5并没有改变x的值,最后一项x+5值是25,也就是整个表达式的值

相关推荐
无敌最俊朗@6 小时前
力扣hot100-206反转链表
算法·leetcode·链表
Kuo-Teng7 小时前
LeetCode 279: Perfect Squares
java·数据结构·算法·leetcode·职场和发展
王哈哈^_^7 小时前
YOLO11实例分割训练任务——从构建数据集到训练的完整教程
人工智能·深度学习·算法·yolo·目标检测·机器学习·计算机视觉
檐下翻书1737 小时前
从入门到精通:流程图制作学习路径规划
论文阅读·人工智能·学习·算法·流程图·论文笔记
CoderYanger7 小时前
B.双指针——3194. 最小元素和最大元素的最小平均值
java·开发语言·数据结构·算法·leetcode·职场和发展·1024程序员节
SalvoGao7 小时前
Python学习 | 怎么理解epoch?
数据结构·人工智能·python·深度学习·学习
小曹要微笑9 小时前
STM32各系列时钟树详解
c语言·stm32·单片机·嵌入式硬件·算法
inputA10 小时前
【LwIP源码学习8】netbuf源码分析
android·c语言·笔记·嵌入式硬件·学习
前进的李工10 小时前
LeetCode hot100:094 二叉树的中序遍历:从递归到迭代的完整指南
python·算法·leetcode·链表·二叉树
麦麦大数据10 小时前
F049 知识图谱双算法推荐在线学习系统vue+flask+neo4j之BS架构开题论文全源码
学习·算法·知识图谱·推荐算法·开题报告·学习系统·计算机毕业设计展示