C初级_分支结构

1. if语句

1.1 if语句的三种写法

  • 1.1.1 if语句的基本写法

    if(条件)
    {语句}
    else{语句}

  • 1.1.2 if语句的嵌套写法

    1-if(条件)
    {
    2-if(条件)
    {
    3-if(条件)
    {语句}
    3-else{语句}
    }
    2-else {语句}
    }
    1-else{语句}

  • 1.1.3 if语句的else if 写法

    if(条件){语句}
    else if(条件){语句}
    else if(条件){语句}
    ···
    ···
    ···
    else if(条件){语句}

1.2 if语句注意事项

  • else 不加条件

  • if的分支情况可以在判断条件上下功夫减少判断的次数

  • if和else 后面要注意大括号的区别

  • if和else后面不加 ;

1.3 if语句与三目运算符的区别与联系

  • 三目也有分支的作用

  • 三目是个运算符,可以在表达式中用

  • if可以没有else,但是三目不行

  • if适合多条件判断,但是三目在简单判断上更简洁

2.switch语句

2.1 switch语句基本格式

switch(变量\表达式)
{
	case 值1:语句1;break;
	case 值2:语句2;break;
	case 值3:语句3;break;
 	 		···
		···
		···
	case 值n:语句n;break;
	default:break;
}

2.2 switch语句说明

  • 1.case后接一个值,且只能是整型、字符类型的常量或表达式
  • 2.break在switch用来跳出本次执行,没有break则会继续执行switch
  • 3.default可以放在任意位置,且只有一个

3.代码实例

#include<stdio.h>
#include<iostream>
int main()
{ 
        int n,year;
        //用来进行奇偶数判断
        //if的基本写法
 	printf("请输入一个正整数用来判断是否是偶数\n");
 	scanf("%d", &n);
	if (n % 2 == 0)
 	{
 	 printf("%d是偶数\n", n);
	 }
	 else
  	printf("%d不是偶数\n",n);
	
	//以下代码用来判断是否是闰年
	//if的嵌套写法
	printf("\nplease enter a year\n");
  	scanf("%d", &year);
  	if (year % 4 == 0)
	 {
		  if (year % 100 == 0)
		  	if (year % 400 == 0)
		  	 {
   			 	printf("\n%d is a leap year\n", year);
  		 	 }
  		 	 else
  			 {
    				printf("\n%d is not a leap year\n", year);
   			}
   		 else
 		 {
   			printf("\n%d is a leap year\n", year);
  		 }
  	else
	{
  	printf("\n%d is not a leap year\n", year);
 	}

	//此处用来说明if后不加{}的情况
	int y=10;
	if(y>=20)
		y=30;
	y+=10;
	printf("\n该句上4行的执行结果是%d\n",y);
	
	//此处用来说明if()后加;的影响
	if(y>=20);
		y=30;
	y+=10;
	printf("\n该句上4行的执行结果是%d\n",y);
	
	//此处说明switch语句的用法
	//代码是输入一个数字,输出对应的星期
	int day;
	printf("\n请输入1-7任意一个数字,该输入表示星期\n");
	scanf("%d", &day);
	switch(day)
	{
		case 1:printf("1表示星期一\n"); break;
 		case 2:printf("2表示星期二\n"); break;
 		case 3:printf("3表示星期三\n"); break;
 		case 4:printf("4表示星期四\n"); break;
 		case 5:printf("5表示星期五\n"); break;
		 case 6:printf("6表示星期六\n"); break;
 		case 7:printf("7表示星期日\n"); break;
 		default:printf("输入有误\n"); break;
	}
	system("pause");
	return 0;
	}	
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值