c语言第三节课

来源:互联网 发布:仙女网络语言什么意思 编辑:程序博客网 时间:2024/05/23 18:57
1、运算符:
(1)、“?:“:C语言中唯一的一个三目运算符,它是对第一个表达式作真/假检测,然后根据结果返回另外两个表达式中的一个。 
(2)、“,“:我只会取到我最后一个值。整个表达式的结果,是最后一个值。
2、常量:
(1)、
不能改变它的值。
12.34e3指的是12.34*10^3

(2)、字符串常量:

A、普通字符:'a';"abc"

B、转义字符:

(a)、'\0':是 c/c++ 语言中的字符串结束符,在ASCII字符集中对应空字符NULL,数值为0。其作用是识别字符串,简化字符串处理过程。在使用过程中要为其分配内存空间,但不计入字符串长度。

(b)、'\n':回车.

(c)、'\t':跳格(移至下一列)

(d)、'\\':反斜杠

(e)、'\xa':十六进制的数

(f)、宏,例:#define PI 3.14

(3)、常变量:
Int main ()
{
Int a;//a、局部变量(函数内定义的变量) 必须初始化;b、随机值
const int a;//const a、修饰的变量,常变量;b、不能修改它的值c、定义的同时 进行初始化
return 0
}
3、查含义

%i和%d都是表示有符号十进制整数

%i可以自动将输入的八进制(或者十六进制)转换为十进制,而%d则不会进行转换。

%o 无符号8进制整数 

%u 无符号10进制整数 
%x 无符号的16进制数字,并以小写abcdef表示
%X 无符号的16进制数字,并以大写ABCDEF表示
%F/f 浮点数 
%E/e 用科学表示格式的浮点数 
%g 使用%f和%e表示中的总的位数表示最短的来表示浮点数 G 同g格式,但表示为指数 
%c 单个字符 
%s 字符串
4、作业:

(1)、为什么switch内不能用float和double?

答:浮点数使用对数形式保存的,所以要比较浮点数相等是不可能的。switch语句内只能使用int或者char。

(2)、switch与if的区别,什么时候用if?什么时候用switch?

        switch 是多分支选择语句,而 if 语句只有两个分支可供选择。虽然可以用嵌套的 if 语句来实现多分支选择,但那样的程序冗长难读。这是 switch 语句存在的理由。 
       区别:两者只有在要求【规范编码】时才看出来。从语法上,你完全可以把switch用多个if来替换,但是这样付出的代价就是程序可读性差,在规范编码中不提倡。

(3)、if与switch谁的效率高?

            if else 一般表示两个分支或是嵌套表示少量的分支但如果分支很多的话,还是 switch case 的效率高一点

(4)、const与define的区别?

            C 语言可以用 const 来定义常量,也可以用 #define 来定义常量。但是前者比后 者有更多的优点: 

          (1) const 常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安 全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会 产生意料不到的错误(边际效应) 。 

          (2) 有些集成化的调试工具可以对 const 常量进行调试,但是不能对宏常量进行调试。

5、switch语句的用法:

(1)、每个 case 语句的结尾绝对不要忘了加 break,否则将导致多个分支重叠(除非 有意使多个分支重叠)。
(2)、必须使用 default 分支。即使程序真的不需要 default 处理,也应该保留 语句:
default:
break;
这样做并非画蛇添足,可以避免让人误以为你忘了 default 处理。

原创粉丝点击