嵌入式学习-C语言基础 day4

有符号数和无符号数

有符号数signed+数据类型,其中整型:分为整型、长整型、短整型 分别以signed int、signed long、signed short表示。浮点数只有有符号数。字符型 signed+char

无符号数:整型有无符号数,用来表示一些编码编号之类的东西如身份证号,房间号.无符号数unsigned+数据类型,长短整型表示同上。字符型 unsigned+char

注意:对于整型和字符型来说,有符号数和无符号数表示范围不同。因为要拿一位做符号位,所以有符号数的范围是-128~127,无符号数的范围是0~255.

运算符

跟数学中意义不同的运算符= 赋值运算符;+= a=a+b;-= ;*= ;/=;%= 同+=。

==等于 !=不等于 >大于 <小于 >=大于等于 <=小于等于 判断运算符 

逗号运算符:,逗号运算符的主要功能是用来分割

++与--

++ a++;等同于 ++a; 等同于 a=a+1; 等同于 a+=1;

-- 同理

作业 1 a++和a-- 有什么区别

注意:强调程序风格。

程序结构

在c语言里面,一共有三个三种程序结构:顺序结构、选择结构(分支结构)、循环结构

顺序结构:按照实物本身特性,必须一个接一个来完成。

选择结构:到某一个节点后,会根据一次判断结果来决定之后走哪一个分支

循环结构:循环结构有一个循环体,循环体是一段代码。对于循环结构来说,关键在于根据判断的结构,来决定循环体执行多少次。

总结:对于顺序结构来说,不需判断,因为下一句指令就是你要执行的。对与循环与选择结构来说,都需要进行判断。然后根据判断结果来决定怎么办。

一段程序中简单的调试方法:在不同分支或者需要处自定打印一些数据然后根据打印内容,来分析程序的实际走向和运行情况,以此来做调试分析

if (a>b)
{
    max = a;
    printf("true\n");    //


}

作业// 计算1+2+3......+10

for 循环的执行步骤:

1、for循环中()中三部分可不可以省略?

标准的for循环,应该把循环控制变量的初始化,增量都放在()当中,并且在循环体中绝对不应该更改循环控制变量(可以引用它的值,但不应该改变它)。

选择结构详解:

c语言中选择结构一共有两种:

第一种:if else

第二种:switch case

switch()
{
    case 常数1:
        代码段1;
        break;
    case 常数2:
        代码段2;
        break;
....
    default:
        代码段n;
        break;
}

注意:

1、case中必须是常数,而且必须是整型(不能是float double,可以是int和char)

2、一般来说,每个case中代码段后都必须有一个break;如果没有,结果可能会让你大吃一惊

3、case之后一般都会有default。语法上允许没有default,但建议写代码时一定要写。

switch case和 if else 对比:

1、if else合适对比条件比较复杂,但是分支比较少的情况;switch case 合适那种对比条件不复杂,但是分支数很多的情况下。

2、所有的选择结构,其实都可以用if else来实现。但是只有部分才可以用switch case 实现。

一般的做法是: 在适合使用switch case的情况下会优先使用switch case,如果不合适使用switch case,则不得不使用if else。

while循环

i= 1;
sum =0;                    //循环初始化
while(i<100)               //循环终止条件
{
    printf("i=%d.\n",i);   //循环体
    sum+= i;               //循环控制变量,也是循环体的一部分
    i+=2;

}

while循环的执行步骤:

0.首先是循环初始化。这一部分其实不属于while循环本身。

1.先判断终止条件是否满足。如果是真,则进入第二步:否则直接退出。

2.执行循环体,然后转入第一步

do while 循环

i=1;
sum =0;
do
{
    printf("i=%d.\n",i);
    sum+= i;
    i+= 2;
}while (i<100);

do while循环的执行步骤:

0、首先是循环初始话。这一部分其实不属于do while 循环本身。

1、执行循环体(循环控制变量的增量是循环体的一部分)

2、判断终止条件。若成立则转入1;若不成立则退出

总结:不管那种循环结构,都不能缺少一些因素:

循环控制条件初始化,终止条件,循环控制变量,循环体。

不同的循环方式(for和while和do while)都有这些,只是格式不同,表现形式不同,可读性不同,看起来和设计起来难度不同

上一篇:小程序学习day4


下一篇:单例模式的使用