2023 _11 _08
可以使用tolower(char c)转换为小写,toupper(char c)转换为大写
例子如下
1 | #include <iostream> |
tolower 就是转换为小写
toupper就是转换为大写
例子如下
1 | #include <iostream> |
第一周 程序设计与C语言
程序的执行
解释:借助一个程序,那个程序能试图理解你的程序,然后按照你的要求执行
编译:借助一个程序,就像一个翻译,把你的程序翻译成计算机真正能懂的语言———机器语言——写的程序,然后,这个机器语言写的程序就能执行了
一:语言本无编译/解释之分
二:常用的执行方式而已
三:解释语言有特殊的计算能力
四:编译型语言有确定的运算性能
现代的编程语言在语法上差异很小,几乎都是C-Like语言
语言的能力/适用领域主要是由
库
传统所决定的
1989年ANSI发布了一个标准-ANSI-C
1990年ISO接受了ANSI的标准-C89
C的标桩在1995年和1999年两次更新-C95和C99
一个表达式是一系列运算符和算子的组合,用来计算一个值
(operator)是指进行运算的动作,比如加法运算符”+”,减肥运算符“-”
算子,是指参与运算的值,这个值可能是常数,也可能是变量,还可能是一个方法的返回值
举例:
1 | a=b+c |
这里面的a,b,c,就是算子,=号和+号就是运算符
这个运算符也是有一个优先级的
下面有一张,运算符的优先级
我也会写一下相对应的代码公式
C语言常见运算符优先级
这里a都等于2,b都等于3
测试代码如下:
优先级 | 运算符 | 运算 | 结合关系 | 举例 | 结果 |
---|---|---|---|---|---|
1 | + | 单目不变 | 自右向左 | a*+b | 6 |
-9 | - | 单目取负 | 自右向左 | a*-b | -6 |
2 | * | 乘 | 自左向右 | a*b | 6 |
2 | / | 除 | 自左向右 | a/b | 0 |
2 | % | 取余 | 自左向右 | a%b | 2 |
3 | + | 加 | 自左向右 | a+b | 5 |
3 | - | 减 | 自左向右 | a-b | -1 |
4 | = | 赋值 | 自右向左 | a=b | 3 |
1 | #include<stdio.h> |
赋值也是一个运算符,这个和其他的语言不同
赋值也是运算,也有结果
a=6的结果是a被赋予的值,也就是6
a=b=6->a=(b=6)
Switch里面的Case
有一个很重要的点,Case只是在一开始的时候,起到一个判断的作用,然后就会一直默认的执行下去,所以break是Switch的一个非常好用的小伙伴
举一个例子:
1 | #define _CRT_SECURE_NO_WARNINGS |
如果你输入1的画
就是输出
1 | 我是case1 |
所以就要加一个Break,然后代码如下:
1 | #define _CRT_SECURE_NO_WARNINGS |
结果如下:
1 | 1 |
一句话总结就是,Switch是没有自己跳出的,Switch,只能进行第一次的跳转,然后就是默认语句执行。如果没有加Break的话,就会这样
还有Goto语句,就是跳出代码的,这个一般不适用,所以不继续说
数组
是一种容器,特点是:
1 其中所有的元素都具有相同的数据类型
2 一旦创建,不能改变大小
3 数组中的元素在内存中是连续一次排列的
数组的下标是从0开始编写
C语言的函数最好不要有太多可以返回值的地方