【C语言】关键字选择题

前言

题目一:

题目二:

题目三:

题目四:

题目五:

题目六:


前言

关于C语言关键字相关的选择题


题目一:

用在switch语言中的关键字不包含哪个?( )

A .continue

B .break

C .default

D .case
选择A。

讲解:continue不能在Switch语句中使用,只能在循环语句中使用。


题目二:

关于C语言关键字说法正确的是:( )

A .关键字可以自己创建

B .关键字不能自己创建

C .关键字可以做变量名

D .typedef不是关键字
选择B。

讲解:c语言中的关键字由官方定义,不能自己创建,更不能作为变量名。


题目三:

下面哪个不是关键字:( )

A .int

B .struct

C .define

D .continue
选择C。

讲解:选项C define是c语言中预处理阶段的关键字,不是c语言本身定义的关键字,常用于定义#define 标识符常量、以及宏定义。


题目四:

关于指针说法正确的是:( )

A .sizeof(char*)大小一定是1

B .指针变量是个变量,用来存放地址

C .指针变量的大小都是4个字节

D .指针不是变量
选择B。

讲解:A选项的sizeof是一种操作符,其目的是求字符指针类型的字节大小,c语言规定,指针的大小在32位机器上是4字节,64位机器中是8字节,估A和C均是错误的,而D选项说指针不是变量,我们常常说的指针就是指指针变量,指针变量也是用来存放地址。


题目五:

下面代码的结果是什么?( )

A . 6,8,10,12,14

B .8,10,12,14,16

C .10,12,14,16,18

D .12,14,16,18,20

cpp 复制代码
#include <stdio.h>
int sum(int a)
{
    int c = 0;
    static int b = 3;
    c += 1;
    b += 2;
    return (a + b + c);
}
int main()
{
    int i;
    int a = 2;
    for (i = 0; i < 5; i++) 
    { 
        printf("%d,", sum(a)); 
    } 
} 

选择B。

讲解:c语言中关键字static有三个作用:1、修饰局部变量后,该变量出来作用域不销毁; 2、修饰全局变量后,该变量失去了外部链接属性,别的源文件访问不了,只能在本源文件使用; 3、修饰函数,该函数失去了外部链接属性,别的源文件调用不了,只能在本源文件使用;该题为第二种情况,修饰了局部变量,因此每次调用sum函数时,变量b还保留着上一次+2的值。


题目六:

关于static说法不正确的是:( )

A .static可以修饰局部变量

B .static可以修全局变量

C .static修饰的变量不能改变

D .static可以修饰函数
选择C。

讲解:B选项是错误的。static修饰的变量是可以修改的,static对变量的作用是除了作用域不销毁或者失去外部链接属性。在c语言中const修饰的变量不能修改。ABD选项为static的三个应用场景。

相关推荐
Bonne journée几秒前
‌在Python中,print(f‘‘)是什么?
java·开发语言·python
Two_brushes.13 分钟前
C++ list 容器类的模拟实现
开发语言·c++·list
王俊山IT28 分钟前
C++学习笔记----8、掌握类与对象(五)---- 嵌套类与类中枚举
开发语言·c++·笔记·学习
Bruce_Li_Q28 分钟前
C语言贪吃蛇
c语言·开发语言
马浩同学30 分钟前
【ESP32】Arduino开发 | Timer定时器+定时器闹钟例程
c语言·单片机·嵌入式硬件·mcu
Beginner_bml32 分钟前
C语言---链表
c语言·数据结构
tomcoding36 分钟前
自己写一个FTP客户端程序的过程
c语言·ftp客户端程序
闫铁娃36 分钟前
二分解题的奇技淫巧都有哪些,你还不会吗?
c语言·数据结构·c++·算法·leetcode
RangoLei_Lzs1 小时前
C++模版SFIANE应用踩的一个小坑
java·开发语言·ui
北极无雪1 小时前
Spring源码学习(拓展篇):SpringMVC中的异常处理
java·开发语言·数据库·学习·spring·servlet