C语言实例讲解嵌套语句的用法

 更新时间:2022年05月24日 09:32:50   作者:liao-xin  
所谓嵌套(Nest),就是一条语句里面还有另一条语句,例如 for 里面还有 for,while 里 面还有 while,或者 for 里面有 while,while 里面有 if-else,这都是允许的

一 、if 嵌套

格式:

if ( 条件 )
{
    if( 嵌入一个条件 )
{
    else    {就近原则,对应上面的if}
}

else{ 对应最开始那个if }
}

代码:

#include <stdio.h>
int main (void)
{
	int score;  // 定义一个分数变量
	printf("请输入您的分数:");
	scanf("%d",&score);  // 键盘输入数值
	if (score >700)     // if条件判断 >700读清北 <700读蓝翔
	{
		printf("我要上清北!!\n");
		if (score > 730)  // if里面在嵌入一个条件 >730 可以读挖掘机和清北
		{
			printf("我要学挖掘机!!!\n");
		}
		else if (score >720) //继续嵌入条件 720- 730 这个区间
		{
			printf("我要学厨师!!!!\n");
		}
		else                //对应上面 else  if  700-720 这个区间 
		{
			printf("我要学计算机~~~~\n");
		}
	}
	else     //<700读蓝翔
	{
		printf("我要上蓝翔!!!!!\n");
	}
	return 0;
}

解释:

1、if嵌套格式如上,其中注意else 是和同级别的尚未使用的if使用(就近原则);

2、if嵌套可以相当于一个区间之间的判断,当条件符合这个区间就执行这个区间内容。

3、else if (),相当于else 执行上面那个if ,if对应下一个条件。

结果:

二、比较ab两个数值大小

①第一种方法if语句判断

代码:

#include <stdio.h>
int main (void)
{
	int a,b;
	printf("请输入您需要的a和b的数值:");
	scanf("%d%d",&a,&b);
	if (a>b)
	{
		printf("最大值为:%d\n",a);
	}
	else
	{
		printf("最大值为:%d\n",b);
	}
	return 0;
}

解释:

1、开始定义 a b两个变量;

2、键盘输入a b 的值;

3、引入一个条件判断if(a>b);

4、如果a>b则条件为真最大值为a,否则最大值是b;

结果:

②第二种方法三目运算

在之前的运算等级那篇文章里面有一个运算优先级表格,里面有关于运算的优先级表达式。

代码:

#include <stdio.h>
int main (void)
{
	int a,b;
	printf("请输入您需要的a和b的数值:");
	scanf("%d%d",&a,&b);
	/*
	if (a>b)
	{
		printf("最大值为:%d\n",a);
	}
	else
	{
		printf("最大值为:%d\n",b);
	}
	*/
	/*  */  //这个是块注释,可以方便注释整块代码
	printf("最大值为:%d\n",a>b?a:b);
	return 0;
}

解释:

1、/* */这个是注释块,不用的那一段代码可以直接注释,非常方便。

2、三目运算 表达式?值1:值2,这个比较两个数字的大小非常的实用。

结果:

三、总结

1、if 语句可以判断区间性问题,执行效率比较低。

2、switch 语句执行效率比较块,但是不可以进行区间判断。

3、三目运算 , 结构清晰 , 不适于嵌套。

到此这篇关于C语言实例讲解嵌套语句的用法的文章就介绍到这了,更多相关C语言嵌套语句内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • C++中的异或运算符^的使用方法

    C++中的异或运算符^的使用方法

    本篇文章对C++中的异或运算符^的使用方法进行的详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C++使用TinyXML2实现解析和生成XML数据

    C++使用TinyXML2实现解析和生成XML数据

    TinyXML2是一个轻量级的、开源的C++库,专门用于解析和生成XML文档,本文主要为大家介绍了如何使用TinyXML2实现解析和生成XML数据,需要的可以参考下
    2024-04-04
  • C++静态库与动态库文件的生成和使用教程

    C++静态库与动态库文件的生成和使用教程

    库文件是计算机上的一类文件,可以简单的把库文件看成一种代码仓库,它提供给使用者一些可以直接拿来用的变量、函数和类,下面这篇文章主要给大家介绍了关于C++静态库与动态库文件的生成和使用的相关资料,需要的朋友可以参考下
    2023-03-03
  • C语言 数组指针详解及示例代码

    C语言 数组指针详解及示例代码

    本文主要介绍C语言 数组指针,这里整理了相关资料并附示例待会及实现结果,帮助大家学习C语言中指针的知识,有需要学习此部分内容的朋友可以参考下
    2016-08-08
  • C++中string转换为char*类型返回后乱码问题解决

    C++中string转换为char*类型返回后乱码问题解决

    这篇文章主要介绍了C++中string转换为char*类型返回后乱码问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 主流操作系统平台的宏定义

    主流操作系统平台的宏定义

    这篇文章主要介绍了主流操作系统平台的宏定义,最近正在学习C++程序从Windows 平台向Unix 平台移植,参考了 qt 的宏定义文件,需要的朋友可以参考下
    2014-02-02
  • 分享一下8年C++面向对象设计的经验体会

    分享一下8年C++面向对象设计的经验体会

    关于C++程序设计的书藉非常多,本章不讲C++的语法,只讲一些小小的编程道理。如果我能早几年明白这些小道理,就可以大大改善数十万行程序的质量了
    2017-07-07
  • C++中constexpr与函数参数转发的操作方法

    C++中constexpr与函数参数转发的操作方法

    constexpr是c++11引入的关键字,c++11的constexpr的函数中只是支持单句代码,c++14限制放宽,可以在里边写循环及逻辑判断等语句,本文探讨关于constexpr的函数中参数的现象,以及如果参数是constexpr如何做转发,感兴趣的朋友一起看看吧
    2024-02-02
  • C++指向函数的指针用法详解

    C++指向函数的指针用法详解

    这篇文章主要介绍了C++指向函数的指针用法,对函数指针的声明、优先级、指针类型等概念做了较为详尽的分析,需要的朋友可以参考下
    2014-09-09
  • Linux C/C++ timeout命令实现运行具有时间限制功能

    Linux C/C++ timeout命令实现运行具有时间限制功能

    inux timeout命令的一个属性是时间限制。可以为任何命令设置时间限制。如果时间到期,命令将停止执行,这篇文章主要介绍了Linux C/C++ timeout命令实现(运行具有时间限制),需要的朋友可以参考下
    2023-02-02

最新评论