栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言分支结构和循环结构(1)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言分支结构和循环结构(1)

C语言分支结构和循环结构(1)

文章目录
  • C语言分支结构和循环结构(1)
  • 前言
  • 一、C语言结构组成
    • 1.分支语句(选择结构)
      • 1.1 if语句
      • 练习题
      • 1.2 switch语句
      • 实例
    • 2.循环语句
      • 2.1while循环
      • 练习题
      • 2.2 for循环
    • 3. do while循环
      • 练习题
  • 总结


前言
一、C语言结构组成

C语言的结构化的程序设计语言!由顺序结构、选择结构、循环结构组成。
什么是语句?
一个分号隔开的就是一个语句;

1.分支语句(选择结构)

分支语句(选择结构):if switch

1.1 if语句

语法结构:

if(表达式)
语句:

if(表达式)
语句1;
else
语句2;

if()
语句1;
else if()
语句2;
else()
语句3;//如果后面有多条语句就得用{}括起来;

C语言中非0为真,0为假;
else和离得最近的if匹配;千万注意if和else的匹配问题
在敲代码的过程中要注意自己的代码风格;

int main()
{
    int num=3;
    if(num=5)
    printf("hehenhehen");//判断相等的符号错写成赋值符,永远为真且不容易发现错误
    if(5==num)
    printf("hehen");//这种写法则可以保证代码的正确性,出现错误不能编译成功;
}

注意:在两数比较时,将常量放在左边更好一些;

练习题

1.判断一个数是否是奇数

#include
int main()
{
    int num=15;
    if(num%2==1)
    printf("奇数");
}

2.输出1~100之间的奇数

#include
int main()
{
    //c++
    //c99支持这样写 
 for(int n=1;n<=100;n++)
 {
     if(1==n%2)
     printf("%d是奇数n",n); 
 }    
 return 0;
}
1.2 switch语句

语法结构:

switch(整型表达式)
{
    语句项;//case语句项
    case:整型常量表达式;
           语句;
}
实例

利用switch写出星期一到星期天

#include 
int main()
{
    int day=0;
    scanf("%dn",&day);
    switch(day)
    {
     case 1:
        printf("星期1n");
        break;
     case2:
     ....
     ....
     case 7:
      printf("星期7n");
      break;
      default:    //代表其余选项;
          printf("输入错误");
          break;
    }
    return 0;
}

day和case的值决定入口;break是出口,代表跳出,一起才可以完整表达分支;
switch(整型表达式);
case(必须是整型常量表达式);
字符也可以,因为字符底层存储是利用ASCII码值;
为了方便后面代码的扩展,最后一个case语句后面也最好加上break;
default没有前后要求,只要符合需求,放在前后均可以;

2.循环语句

for
while
do while
一共包含3中,for循环用的最多。

while循环的格式:

2.1while循环
while(表达式)
    循环语句;

如果while()括号内的表达式非0,循环语句就会被执行,循环语句不一定是语句,也有可能是代码块;

练习题

在电脑屏幕上打印1~10;

#include 
int main()
{
    int i=1;
    while(i<=10)
    {
        printf("%dn",i);
        i++;    
    }
    return 0;
}

在while循环中,break用于永久的终止循环;continue表示跳过本次循环continue后面的代码,直接去判断部分,看是否进行下一次循环;
while循环一共包含三个部分,代码行数增加三个部分距离可能会变远

int  main()
{
    int  i=1;//初始化
    while(i<=10)
    {
            printf("%d",i);  //判断部分
            i++;    //调整部分;
    }
    return  0;
}
2.2 for循环

for循环结构:

for(表达式1;表达式2;表达式3);
{
    循环体;
}

for后面的括号内表达式1是初始化,表达式2是判断,表达式3是调整;三个部分放在一起,此处优于while循环。
for循环特点:初始化只执行一次。
break和continue在for循环中的作用:
break终止循环,跳出循环;continue跳出此次循环后面的代码开始下一次循环。
for循环的continue是跳到调整部分继续执行,而while循环很有可能直接跳过调整部分;
for语句的循环控制变量一些建议:
1.不可在for循环体内修改循环变量,防止for循环失去控制;
2.建议for语句循环控制变量的取值采用“前闭后开区间”写法

int  i=0;
//前闭后开的写法
for(i=0;i<10;i++)
{
    
}

for循环从语法上来说三个部分都可以省略,判断部分的省略会导致判断部分恒为真,导致死循环。
一般不建议省略任何一个部分,可能会导致程序出错,例如:

int  main()
{
    int  i=0;
    int  j=0;
     for(i=0;i<3;i++)
     {
     for(j=0;j<3;j++)
     {
         printf("hehen");     
     }                  
     }
     return  0;
}

以上程序最终可以打印9个hehe;然而省略了初始化部分时:

int  main()
{
    int  i=0;
    int  j=0;
     for(;i<3;i++)
     {
     for(;j<3;j++)
     {
         printf("hehen");     
     }                  
     }
     return  0;
}

最终结果只能打印3个hehe;因为c内层for循环中的j由0一直j++到3,循环执行完成三次之后跳出内层循环到达for循环i++一次再次进入内层循环时,j还是等于3,所以直接跳出内层循环,如此反复导致只能最终打印3个hehe。

3. do while循环

do语句的语法:

int  main()
{
    int  i=0;
    do
    {
        printf("%d",i);
        i++;    
    }while(i<=10);
    return  0;
}
练习题

在电脑屏幕上利用do while循环打印1~10;

int  main()
{
    int  i=0;
    do
    {
        printf("%d",i);
        i++;    
    }while(i<=10);
    return  0;
}

do while循环的特点:循环体至少要执行一次;

总结

  这章笔记主要包含了C语言的选择语句(if 、switch)循环语句(for、while、do while)等知识点以及每个语句对应的练习题,希望可以帮助到大家。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021722.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号