电商专业学习嵌入式软件开发第十八天

  • 预科第七天

今天讲的内容真的不多,真正花时间讲的只有条件流程和循环流程,虽然是同一个老师讲课,但是感觉还没有第一次学习时学到得多,明显感觉到理解起来有困难,最大问题一直是不能把知识点串联起来,没有一点编程思维。

23:三大流程控制
1>顺序流程控制
2>条件流程控制

语法:
①if(条件)
{}

#include 
int main()
{
    // 1.判断输入的一个数是否是偶数,想两种方法,代码实现
     //运算优先级:关系运算符>位
    int num;
    scanf("%d",&num);
    if((num&1)==0)
    {
        printf("偶数\n");
        return ;
     }
    printf("奇数\n");
}

规则:如果条件成立就运行if{}里面的内容,否则就运行{}下面的代码

②if(条件)
{}
else
{}

#include 
int main()
{
  // 大写字母转换为小写字母
    char ch;
    scanf("%c",&ch);
    if(ch >= 65 && ch <= 90)
    {
        printf("大写字母\n");
        printf("小写字母=%c\n",ch + 32);
    }
    else
    {
        printf("不是大写字母\n");
    }
    return 0;
}

③if(条件)
{}
else if(条件)
{}
else if(条件)
{}
……
else
{}

#include 
int main()
{
    // 90~100:A  80~89:B  70~79:C  60~69:D  0~59:E
    int score;
    scanf("%d",&score);
    if(score>=90&&score<=100)
    {
        printf("A\n");
    }
    else if (score>=80)
    {
        printf("B\n");
    }
    else if (score>=70)
    {
        printf("C\n");
    }
    else if (score>=60)
    {
        printf("D\n");
    }
    else if (score>0)
    {
        printf("E\n");
    }
  return 0;
}

④if的注意点:
可以没有else,如果要有else就必须放在最后面
⑤switch-case
switch()
{
case 常量1:
代码;
break;
case 常量2:
代码;
break;
……
default:
break;
}

#include
int main()
{
  // 判断输入的一个字母是否是元音字母 a e i o u
    //看有没有循环,看外面有没有switch
    char ch=getchar();
    switch (ch)//表达式
    {
        case 'a':
            printf("=====a\n");
            printf("这是a\n");
            break;
        case 'e':
            printf("这是e\n");
            break;
        case 'i':
            printf("这是i\n");
            break;
        case 'o':
            printf("这是o\n");
            break;
        case 'u':
            printf("这是u\n");
            break;
        default:
            printf("其他\n");
            break;   
    }
  return 0;
}

switch语句注意点:
1)case后面的常量不能相同
2)case后面只能放常量
3)default可有可无,也可以是任意位置,一般放在最后
4)每个case后面必须加上break,如果不加,当条件匹配一个常量时,会继续运行下去,直到碰到break(break跳出看有没有循环和switch)
5)在case语句中不能定义变量
6)在switch语句中,左大括号{下面不要做太多的动作,如下1》和2》代码将永远不会被执行,原因:switch语句拿到变量的值直接找case匹配

 1》int i;
 2》printf("gdsfgfdg");
 case 'a':
    printf("这是a\n");
    break;

7)执行的代码不能放在case和case之间,如下1》不会被执行

 case 'a':
    printf("这是a\n");
    break;
    1》printf("fsdfds");
 case 'e':
    printf("这是a\n");
    break;
3>循环流程控制

①while循环
while(条件)
{}

#include 
int main()
{ 
  //计算1~100的和
    int sum=0;
    int i=1;
    while (i<=100)
    {
        sum=sum+i;
        i++;    
    }
    printf("i=%d,sum=%d\n",i,sum);
    return 0;
}
#include 
int main()
{
  //打印九九乘法表
    int row,colum;
    row=1;
    while (row<=9)
    {
        colum=1;
        while (colum<=row)
        {
            printf("%dX%d=%-2d ",colum,row,colum*row);
            colum++;
        }
        printf("\n");
        row++;
    }
    return 0;
}

规则:当条件成立就执行{}里面的代码,执行完里面的代码之后再回过头来判断上述条件是否成立,如果成立就再去执行{}里面的代码,一旦条件不成立就执行{}下面的代码。

②do……while循环
do
{
}while(条件);

#include 
int main()
{
  //1~100的和
    int i=1,sum=0;
    do
    {
        sum=sum+i;
        i++;
    }while(i<=100);
    printf("i=%d\nsum=%d\n",i,sum);
  return 0;
}

规则:先执行{}里面的代码,执行完成之后,再去判断条件是否成立,如果条件成立,继续执行{}里面的代码,直到条件不成立,执行while下面的代码
注意点:do……while语句后面有分号

你可能感兴趣的:(电商专业学习嵌入式软件开发第十八天)