c语言学习加强营(一):switch分支
#include <stdio.h>
#include <stdlib.h>int main(int argc, char **argv)
{int num = 0;if (argc == 2) {num = atoi(argv[1]);}switch (num) {case 0 ... 59:printf("差\n");break;case 60 ... 74:printf("中\n");break;case 75 ... 84:printf("良\n");break;case 85 ... 100:printf("优\n");break;default:break;}return 0;
}
执行结果:
root@seven:~/projects/test# vim test.c
root@seven:~/projects/test# gcc -o test test.c
root@seven:~/projects/test# ./test 0
差
root@seven:~/projects/test# ./test 59
差
root@seven:~/projects/test# ./test 60
中
root@seven:~/projects/test# ./test 75
良
root@seven:~/projects/test# ./test 85
良
root@seven:~/projects/test# ./test 95
优
root@seven:~/projects/test#
百度switch
才发现switch 语句
C语言中的switch
语法为:
switch(expression){case constant-expression :statement(s);break; /* 可选的 */case constant-expression :statement(s);break; /* 可选的 *//* 您可以有任意数量的 case 语句 */default : /* 可选的 */
case
的constant-expression
必须与switch
中的变量具有相同的数据类型,且必须是一个常量或字面量。
字面量
在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation)。几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数、浮点数以及字符串;而有很多也对布尔类型和字符类型的值也支持字面量表示;还有一些甚至对枚举类型的元素以及像数组、记录和对象等复合类型的值也支持字面量表示法
constant-expression: 常量表达式。
结论
case 的值必须是常量表达式。值域也是可以的,但是为值域时前面的值一定要小于等于后面的值,否则将无效,当然编译时会警告的。
int i = 0;
switch(i){case 'a'...'z':case 'A'...'Z':case 0 ... 9:case 150:default:break;
}
注:
使用整形数字值域时,数字和
...
使用空格隔开,以防止别人读的时候认为是小数点。
引用文献
- 字面量.
- C switch 语句 | 菜鸟教程.
c语言学习加强营(一):switch分支相关推荐
- c语言switch同时比较多个变量,C语言学习if和switch分支选择结构
如何判断一个整数是否为正数 计算机同我们一样,也是可以判断大小.在此之前,我们需要先说明在计算机中用来判断两个数关系的符号,即关系运算符. 关系运算符号 c语言中的关系运算符与数学上学习的有什么不同? ...
- 学习笔记_关于switch在whlie中无限循环的解决办法_C语言
学习笔记_关于switch在whlie中无限循环的解决办法_C语言 今天在做作业的时候突然发现一个问题 #include<stdio.h> int main() {int a;while( ...
- C语言第二次博客作业---分支结构
C语言第二次博客作业---分支结构 一,PTA实验作业 题目1.计算分段函数 本题目要求计算下列分段函数f(x)的值 1.代码 double x, result;scanf("%lf&quo ...
- c语言源码转流程图工具_C语言学习路线 (详细)
C语言怎么学习,这是很多人留言问的问题,其实这个问题没有正确答案,一千个读者有一千个哈姆雷特,每个人学习方法和学习习惯都不一样,这里我就结合一些人的学习经验和自己的学习经历,给出我认为的比较合理的C语 ...
- 寒假回归篇——C语言学习感悟2022.1.16
前言 Everybody!欢迎来到一飞的博客!没错,历经将近三个礼拜的间隔,我又回来啦!前端时间由于在学校里学习和生活上的各种事情,停更了不短的时间,现在,我回来啦! 不在的时间里,我也关注着我的CS ...
- C语言学习笔记1——零散基础知识
我的c语言学习之路是课本<c程序设计>+"面向百度编程",利用写博客的形式来监督自己去奋斗.在写这篇博文时我已经学完c语言很久了,但为了考证和出来工作的,我不得不再次巩 ...
- R语言学习手记 (1)
R语言学习手记 (1) 经管的会计和财管都会学数据统计与分析R语言这门课,加上我也有点兴趣,就提前选了这门课,以下的笔记由老师上课的PPT.<R语言编程艺术>和<R语言数据科学> ...
- 计算机基础语言学习线路图
计算机基础语言学习线路图 HTML HTML教程 HTML简介 HTML编辑器 HTML基础 HTML元素 HTML属性 HTML标题 HTML段落 HTML样式 HTML格式化 HTML引用元素 H ...
- C语言学习——从零开始学编程(第三篇:选择与循环)
文章目录 前言--小颖的话 一.语句 1)C语言中的语句有哪些 2)语句 二.选择语句 1) if选择语句 1. if语句 2.if-else语句 3.if - else if - else 多分支语 ...
最新文章
- The substring() Method in JDK 6 and JDK 7
- [导入]WAP网站的网关服务器应用形式
- c++监听键盘_想知道木马程序的键盘记录原理吗?python告诉你 !
- iOS之AVPlayerViewController的使用oc
- 查看linux文件系统结构,如何查看Linux系统架构类型
- 【Python基础入门系列】第03天:Python 变量与数据类型
- Python工程笔记(1):轨迹与日志
- 获取数据后插入到jsp页面(自用,没内容)
- 车机没有carlife可以自己下载吗_长安CS55自带百度CarLife使用方法
- 快来了解下Snappy Ubuntu是什么
- 苹果6用U盘越狱_iOS12.3.1 A12 支持在线越狱?作者黑人问号
- 我的Java开发学习之旅------Java ClassLoader解析一(转)
- Luogu4885 灭顶之灾
- flash 火狐总是崩溃_火狐浏览器经常崩溃怎么办,解决Firefox、Flash假死问题
- 猜一猜,我国第一次大规模应用二维码是什么时候?
- 高等数学:求“分段函数在分段点”的导数,可以直接用导数公式吗?
- 2021-2022-1 20212820《Linux内核原理与分析》第一周作业
- 单片机原理及应用之AT89S52
- Python笔记之通过PyWin32模块实现在QQ聊天窗口自动发送消息
- EXCEL函数篇之一文读懂VLOOKUP精准查找、近似查找、模糊查找的区别