C语言—每日选择题—Day49

第一题

  1. 假定有语句" int b[10], *pb; ",则不正确的赋值为 ( )
    A:pb=b

B:pb=b[5]

C:pb=b+2

D:pb=&b[0]

答案及解析 B

本题考查的是指针类型对数组的引用;

A:b是数组名,是首元素地址,数据类型是int *,数据类型匹配,赋值正确;

B:b[5]是数组的一个元素,数据类型是int,数据类型不匹配,赋值错误;

C:b是数组名,首元素的地址,b + 2;就是往后移动2个int类型的大小,也就是8字节,到达的是第三个元素的地址,相当于&b[3],所以数据类型是int*,正确;

D:&b[0],数据类型是int*,数据类型匹配,正确;

第二题

  1. 运行时的C程序,下列哪些变量在内存中的stack(栈)区域的有()
cpp 复制代码
int a = 0;
char *p1;
int main() 
{
    int b;
    char s[] = "abc";
    char *p2;
    char *p3 = "123456";
    static int c =0;
    p1 = (char *)malloc(10);
    free(p1);
    return 0;
}

A:a

B:b

C:c

D:s

E:p1

F:p2

答案及解析 BDF

stack是栈空间的意思,我们学习数据结构就知道了;而这里考察的是内存中栈中存放的是哪些数据?栈中存放的是局部变量的空间;
a 和p1 :这是一个全局变量,存放在静态区;

b,s,p2,p3:这些都是局部定义的变量,存放的就是栈区

static的变量:是静态变量,存在静态区;

由malloc开辟的空间:存放的是堆区;

第三题

  1. 以下程序的运行结果是()
cpp 复制代码
#include <stdio.h>
int main() 
{ 
    int m = 12,n = 34;    
    printf("%d %d ", m++, ++n);    
    printf("%d %d\n", n++, ++m);  
} 

A:12 35 35 14

B:12 35 35 13

C:12 34 35 14

D:12 34 35 13

答案及解析 A

本题依旧考察的是前置++和后置++;

记住前置++的表达式,表达式的值是++之后的值;

后置++的表达式,表达式的值是++之前的值;

--也是一个道理

第四题

  1. 若有以下程序
cpp 复制代码
#include <stdio.h>
int main() 
{
    int s = 0, n;
    for (n = 0; n < 4; n++) 
    {
        switch (n) 
        {
            default:
                s += 4;
            case 1:
                s += 1;
            case 2:
                s += 2;
            case 3:
                s += 3;
        }
    }
    printf("%d\n", s);
    return 0;
}

则程序的输出结果是?
A:6

B:18

C:10

D:24

答案及解析 D

本题考查的是switch语句,只要case和default语句后面没有break,就会依次执行下面每一个case或default的语句;

比如第一次循环,n=0,只满足default,而他们都没有break,所以依次执行下面的语句

s += 4,s += 1,s += 2,s += 3;

剩下的循环以此类推;

第五题

  1. 下面函数输出结果是()
cpp 复制代码
#include <stdio.h>
int main() 
{
    int k = 12345;
    printf("%2d\n", k);
    return 0;
}

A:12

B:45

C:12345

D:无法通过编译

答案及解析 C

本题考查的是格式化打印

直接看这篇博客:%md在printf语句和scanf语句中的区别-CSDN博客

相关推荐
没有梦想的咸鱼185-1037-166313 分钟前
基于R语言机器学习方法在生态经济学领域中的实践技术应用
开发语言·机器学习·数据分析·r语言
.YM.Z19 分钟前
C语言——文件操作
c语言·文件操作
向上的车轮37 分钟前
基于go语言的云原生TodoList Demo 项目,验证云原生核心特性
开发语言·云原生·golang
The Chosen One98539 分钟前
C++ : AVL树-详解
开发语言·c++
PH_modest1 小时前
【Qt跬步积累】—— 初识Qt
开发语言·qt
GanGuaGua1 小时前
Linux系统:线程的互斥和安全
linux·运维·服务器·c语言·c++·安全
怀旧,1 小时前
【C++】18. 红⿊树实现
开发语言·c++
xiaopengbc2 小时前
在 Python 中实现观察者模式的具体步骤是什么?
开发语言·python·观察者模式
Python大数据分析@2 小时前
python用selenium怎么规避检测?
开发语言·python·selenium·网络爬虫
ThreeAu.2 小时前
Miniconda3搭建Selenium的python虚拟环境全攻略
开发语言·python·selenium·minicoda·python环境配置