C语言—每日选择题—Day58

指针相关博客

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

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

第一题

  1. 下面字符常量正确的是( )
    A:"c"

B:'\\''

C:'n'

D:'ab'

答案及解析 C

A:错误,A是字符串不是字符常量

B:错误,转移字符高亮显示为:'\\''也就是这里面一共有2个字符,格式错误

C:正确

D:错误,两个字符不可以用 ' ',格式错误

第二题

  1. 以下函数值的类型是()
cpp 复制代码
fun (float x)
{
    float y;
    y = 3 * x - 4;
    return y;
}

A:int

B:不确定

C:void

D:float

答案及解析 A

C语言中没有写函数返回值类型,默认是int类型,函数返回值以函数返回值类型为准,如果return的类型和返回值类型不匹配,要发生隐式类型转换

第三题

  1. 下面程序段执行后的输出结果是()(□表示一个空格)
cpp 复制代码
int a=3366;
printf("│%-08d│",a);

A:│-0003366│

B:│00003366│

C:│3366□□□□│

D:输出格式非法

答案及解析 C

本题考查的是%md的打印,负号代表的是左对齐,d前面的数字大于要打印的位数,就补空格。

%md在printf语句和scanf语句中的区别-CSDN博客

第四题

  1. 数组a的定义为:int a34; 下面哪个不能表示 a11
    A:*(&a00 + 5)

B:*(*(a + 1) + 1)

C:*(&a1 + 1)

D:*(a1 + 1)

答案及解析 C

做这个题之前,可以看看上面两个博客

交给大家一个任务,自己画图发在评论区哦,看看自己对指针的理解

第五题

  1. 以下程序调用fun 函数后输出数组中最大值及对应元素的下标,横线处添()
cpp 复制代码
#include <stdio.h>
void fun(int *s, int n, int *k) 
{
    int i;
    for (i = 0, *k = i; i < n; i++)
        if (s[i] > s[*k])
            ________;
}
 
int main() 
{
    int a[5] = {1, 6, 2, 8, 0}, k;
    fun(a, 5, &k);
    printf("%d %d\n", k, a[k]);
}

A:*k = i

B:k = i

C:*k = i - s

D:k = i - s

答案及解析 A

本题考查的是大家看代码的能力,是让k得到的是最大值的数组下标,k属于输出型参数,也就是会在函数调用之后使用的。所以在函数体内部,就要去更新*k的下标,最后要成为最大值的下标,那一定是对*k的更新,BD排除。if语句中,如果si大于s\*k,那就更新*k = i。

相关推荐
jiayoushijie-泽宣2 分钟前
SHIFT-PathFormer:专家轨迹蒸馏、连续安全优化与超大迷宫实验
算法
tachibana22 分钟前
Go 语言里的 Context 是什么?
开发语言·后端·golang·go·语言
天桥下的卖艺者7 分钟前
R语言使用ggcube包轻松绘制文章中的各类3D图形
开发语言·3d·r语言
UIU1141 小时前
P1003 [NOIP 2011 提高组] 铺地毯
数据结构·c++·算法
爱读书的小胖1 小时前
LeetCode 88. 合并两个有序数组 C 解题分析
c语言·数据结构·算法
唐钰小宝B1 小时前
深度解读 JDK 8、JDK 11、JDK 17 和 JDK 21 的区别
java·开发语言·windows
inrichtt2 小时前
第七课时:STM32时钟系统揭秘:从零理解时钟树
c语言·数据结构·stm32·单片机·嵌入式硬件
知识分享小能手2 小时前
C学习教程,从入门到精通,C语言指针 —— 详细知识点总结(10)
c语言·开发语言·学习
熊猫钓鱼>_>2 小时前
开源鸿蒙平台 KMP 三方库 kotlin-csv 适配全流程:从编码假设到沙箱真机互通验证
开发语言·人工智能·华为·kotlin·harmonyos·鸿蒙