C语言面试题----switch语句

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情
 版本声明:本文转载于公众号TeachPlus
   C语言面试题----switch语句
阅读下面的程序:
# include <stdio.h>
int  main()
{
   int a = 4;
   switch(a > 5)
   {
       case 0:
       printf("this is 0\n");
       break;
       case 1:
       printf("this is 1\n");
       break;
       case 2:
       printf("this is 2\n");
       break;
       default:
       printf("this is default\n");
   }
   return 0;
}
写出该程序的输出是什么?
答案:
输出 this is 0

本题解析

首先来看一下switch的用法,switch会计算括号中表达式的值。
并逐个与其后的常量表达式值相比较,
当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,
继续执行后面所有case后的语句。
如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
那么在本题中switch后面括号中的表达式是一个判断表达式,
判断表达式只有真和假两种,而在c语言中
2024年C语言最新经典面试题汇总(1-10) 在上面的示例中,声明了一个函数指针变量funcPtr,它可以指向返回类型为int、参数类型为int和int的函数。当n等于0或1时,满足基本情况,递归结束,函数返回1。否则,函数通过调用自身来计算n-1的阶乘,并将结果与n相乘,最终得到n的阶乘。需要注意的是,在使用递归时,必须确保递归调用最终会遇到基本情况,否则递归将进入无限循环,导致堆栈溢出。在C语言中,递归函数是一种非常有用的编程技巧,它可以将一个大问题分解成一个或多个相同类型的子问题,然后通过不断调用自身来解决这些子问题,最终得到问题的解。 阅读详情

相关推荐

switch……case语句面试题

switch……case语句面试题 注意事项: a. switch后面()中表达式的结果类型必须是 byte、short、int、char;JDK7.0及以上版本,支持String类型 【面试题目】 b. break终止switch…case结构;防止case穿透 c. case后面的值不允许重复 d. defualt可以定义case前面也可以定义case后面,如果定义在case 后面,default后面的break可以省略,但是如果定义case前面, break不能省略 ...

猫头虎技术团队:授渔优于赠鱼,兴趣引领智慧,探索之乐尤显珍贵。商务合作+:Libin9iOak ,万粉变现+:CSDNWF,猫头虎承诺每年免费为100名C站创作者做账号流量诊断服务!全网搜:猫头虎技术团队,点击文章底部名片或直接私信我一切皆可谈,快找虎哥! 644

c语言学习switch语句

显示输入整数除以3的余数。 #include&lt;stdio.h&gt; int main(void) { int a; printf("请输入一个整数:"); scanf("%d",&amp;a); if(a%3==0) puts("该数能被3整除。"); else if(a%3==1) puts("该数除以3的余数是1"); else puts("该数除以3的

weixin_42418864的博客 2407

C语言面试题100

1.请填写bool , float, 指针变量 与“零值”比较的if语句。 提示:这里“零值”可以是0, 0.0 , FALSE 或者“空指针”。 例如int 变量 n 与“零值”比较的 if 语句为: if ( n ==0 ) if ( n != 0 ) 以此类推。 bool: if(flag) if(!flag) float: const fl...

jinqg的博客 1万+

switch的相关知识点整合

关于switch的知识点,有关于case同时判断多个值的解法。

watch_bird的博客 2742

c语言习题---switch语句

详解几道C语言switch语句练习题

qq_68695298的博客 1万+

面试题中遇到的一个C语言switch语句的题目

这或许是很少见的用法,但我现在终于接受了一个事实:面试里出现的题目经常是极其恶心的代码,在实际工作中或许永远也见不到的那种.这是上个星期五土豆同学去参加的一个笔试里碰到的题,在这里记下来留作纪念. 问题: 下面的foo()的作用是什么? [code="cpp"]#include #include void foo(char* a, char* b, int len) { ...

Script Ahead, Code Behind 558

c常见面试题3在加一些c的基础与提升内容

多个独立的。

m0_73349358的博客 1599

C语言基础(分支结构)

本文系统介绍了C语言中的条件判断结构,包括以下核心内容: 基础概念:解释了条件判断的本质(基于逻辑值决定执行路径),以及C语言中0/1表示假/真的底层机制; 运算符详解: 6种关系运算符(>、<等)及其优先级 3种逻辑运算符(&&、||、!)的运算规则和优先级顺序 分支结构实现: if单/双分支语法及流程图 if-else if多分支结构 三目运算符的简化写法 switch-case结构的特点(整型/字符型判断、break穿透现象)

weixin_74136381的博客 1076

C语言-分支结构

本文详细介绍了C语言中的流程控制和数据输入输出格式控制。主要内容包括:1. 整型数据输入输出的格式说明符(十进制%d、八进制%o、十六进制%x)及其应用场景;2. 浮点型数据输入输出的格式说明符(%f、%e、%lf)及其特点;3. 输入数据时的格式控制技巧,包括列数截取、跳过指定列数等;4. 分支结构的实现方式,包括if语句、if-else语句、多分支if-else if结构,以及switch-case结构的用法和注意事项;5. 逻辑运算符和关系运算符的优先级规则及其在条件判断中的应用。

wy_yy047的博客 718

【C程序设计教程实验】基础练习题(五)

当输入9并且回车,那么下列程序的输出结果是?//当输入9并且回车,那么下列程序的输出结果是?int a;//测试测试:答案是10。分析:由于a++,故得到a=10,不满足a++

2401_84152738的博客 1018

C语言学习(二)

在32位的系统中,地址是32bit表示的空间,如果指针需要满足指向地址空间,那就需要满足32位空间需求,所以是4个字节,例题:int a[ ] = {1,2,3,4,5,6,7,8,9} , *p = a, i;定义指针的数据类型不是指针变量本身的数据类型,而是目标变量的的数据类型,简称指针的数据类型。不同类型的数据指针因为都指向地址空间的,所以不同类型的指针其在内存中都会占相同的地址空间!例子: int *pa=&a //int *pa;定义:内存单元的地址就叫做指针,是一个专门用来存放地址的变量。

weixin_61006283的博客 913

C语言:第05天笔记

本文摘要总结了C语言第05天的学习内容,重点关注流程控制和分支结构。主要内容包括: 流程控制部分 数据输入输出的格式控制 整型数据的十进制、八进制、十六进制输入输出方式 浮点型数据的输入输出注意事项 输入数据的列数截取和跳过技巧 分支结构部分 条件判断的逻辑值和表达式 关系运算符和关系表达式 逻辑运算符和逻辑表达式 运算符优先级规则 单分支if语句的基本语法 文章通过实例演示了各种格式说明符的使用方法,以及条件判断在分支结构中的应用,为C语言学习者提供了流程控制和分支结构的基础知识。

2402_84258445的博客 1341

C语言分支循环:代码世界的十字路口与跑步机

你以为这是电话区号查询系统?不!这是!case后面必须是整型常量(别想塞个变量进去!break是终止符,没有它就会开启特效default像备胎,永远在最后默默守候。

readam的博客 728

iOS求职之C语言面试题

c语言面试题: 1.static有什么用途?(请至少说明两种) 1)限制变量的作用域 2)设置变量的存储域(堆,主动分配内存也是堆) 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
 2)在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
 3)在模块内,一个被...

weixin_33955681的博客 114

【C程序设计教程实验】基础练习题(六)

/以下程序输出结果为?结果显然:接下来再测试一下://测试一下:int main()int m=4;//这里把m改成4看一下。//5。因为 m-- 是先使用后自减//所以说这时m的值为4return 0;输入:结合注释里的内容以及上面的例子,可以理解。代码五//执行下列程序后,x的值为?if(a>b) //不满足,所以直接执行下面else中的x=7。

2401_84091289的博客 923

C语言面试题汇总之一

C语言面试题汇总之一 1、static有什么用途?(请至少说明两种) l限制变量的作用域; 设置变量的存储域。 2、引用和指针有什么区别? 引用必须被初始化,指针不必; 引用初始化以后不能被改变,指针可以改变所指的对象; 不存在指向空值的引用,但是存在指向空值的指针。 3、描述实时系统的基本特征。   所谓“实时操作系统”,实际上是指操作系统工作时,其各种资源可...

weixin_34025051的博客 400
上一篇: C语言面试题---逻辑短路问题
下一篇: C语言面试题---数组
study_plus
博客等级 码龄9年 132粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值