一、学习目标

  1. 了解逻辑判断的概念
  2. 了解if语句的使用方法
  3. 了解switch语句的使用方法
  4. 了解逻辑运算符的使用方法

目录

C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言。
第一篇:(一)脱离学习误区
第二篇:(二)C语言没那么难简单开发带你了解流程
第三篇:(三)轻轻松松理解第一个C语言程序
第四篇:(四)语言的基本数据类型及变量
第五篇:(五)C语言的变量、常量及运算
第七篇:(七)C语言的循环分分钟上手
第八篇:(八)了解基本数组还不是那么简单
第九篇:(九)C语言二维数组与循环嵌套
第十篇:(十)C语言的指针原来是这样
第十一篇:(十一)C语言自定义函数真的很简单
第十二篇:(十二)原来结构体是这么回事
第十三篇:(十三)socket服务端编写

C语言新手的100个报错解法

推荐

我正在参与1024活动,欢迎大家点赞、收藏、评论我的干货文章《一篇文带你从0到1了解建站及完成CMS系统编写》
欢迎大家关注公众号,公众号每满1024及1024倍数则会抽奖赠送机械键盘一份+IT书籍2份哟~

二、了解if语句的使用方法

if语句在C语言中用于流程控制,也就是在程序运行时,根据满足的条件来选择运行不同的代码块。流程控制就像你计划明早天气如果晴朗就去跑步,假设天气变差,下雨了就不去了。这就是不同的条件进行不同的选择。

2.1 if语句的使用
if语句在C语言中用于判断条件是否成立从而运行一部分代码,我们使用一个简单的例子介绍if语句的使用方法:

#include<stdio.h>
void main(){int a=1;if(a==1){printf("变量a的值等于1");}
}

以上代码创建了一个变量a赋值为1。之后使用了if语句判断a是否等于1,判断正确则执行语句printf("变量a的值等于1");,条件判断不成立则不执行 printf("变量a的值等于1");

从以上示例可以看出if语句判断一个条件,这个条件编写于if之后的圆括号内;以上示例的条件为a==1;在C语言中判断两个值是否相等使用两个等于号 ==,在条件的圆括号后使用一对花括号{},在花括号内编写条件判断正确后需要执行的代码。

运行结果如下:

我们修改一下a的值改为2,查看是否会执行 printf("变量a的值等于1");。修改后的代码如下:

#include<stdio.h>
void main(){int a=2;if(a==1){printf("变量a的值等于1");}
}

运行结果如下:

从结果得知并没有运行代码 printf("变量a的值等于1");
那如何使if的条件判断不成立时有一个提示?这时可以使用else语句,else语句在条件不成立时将会执行else语句内的代码,else语句的内容也是在花括号内编写,不过这个花括号是在else这个关键字(关键字指C语言中已有特殊功能的标志,如int、if、float等)后。代码如下:

#include<stdio.h>
void main(){int a=2;if(a==1){printf("变量a的值等于1");} else{printf("变量a的值不等于1");}
}

以上代码在if语句的花括号后“无缝连接”了一个else关键字。在else关键字后有一对花括号,在该花括号内编写a不等于1时所需要的提示语句即可。

运行结果如下:

如果我想a的值等于1时输出“哈哈哈”,a等于2时输出“嘿嘿嘿”,a等于3时输出“呀呀呀”,a等于其它值时输出“我都没猜对”;以上需求可以使用if…elseif语句实现。代码如下:

#include<stdio.h>
void main(){int a=2;if(a==1){printf("哈哈哈");} else if(a==2){printf("嘿嘿嘿");} else if(a==3){printf("呀呀呀");}else{printf("我都没猜对");}
}

以上代码在if之后的else关键字后添加了if(注意if前面有个空格),随后一个圆括号,圆括号内编写其它条件,满足则会执行当前else if 语句的花括号内的代码,当所有条件都不对的时候,执行else语句,也是在最末位的语句。

运行结果如下:

以上代码还可以改一下,让我们在都没猜对的值的情况下输出值,代码如下:

#include<stdio.h>
void main(){int a=22;if(a==1){printf("哈哈哈");} else if(a==2){printf("嘿嘿嘿");} else if(a==3){printf("呀呀呀");}else{printf("我都没猜对,其实a的值%d",a);}
}

结果如下:

2.2 if语句判断多个条件
以上学习的if只能判断一个条件,若我需要判断多个条件该怎么办?这时可以使用逻辑运算符。例如当a等于1或2时表示天气下雨和刮风,我则不去跑步,当a等于3或者4时则表示需要上学和补课,当a等于其它值是则可以去跑步。

首先我们使用简单的if语句了解一下逻辑运算符。代码如下:

#include<stdio.h>
void main(){int a=1;if(a==1||a==2){printf("天气正在下雨或刮风");}
}

以上代码着重关注if语句的条件 a==1||a==2,其中使用的“||”为逻辑运算符“或”运算。或运算表示两个表达式(表达式指是由数字、算符、数字分组符号等可以求得一个值的组合)的值有一个正确,那么或运算符(||)左右两边整体的值则为正确。当前或运算符左边为a1,右边为a2,只要满足其中一个则会执行 printf("天气正在下雨或刮风");

运行结果如下:

修改一下代码完成以上所说的需求“a等于1或2时表示天气下雨和刮风,我则不去跑步,当a等于3或者4时则表示需要上学和补课,当a等于其它值是则可以去跑步。”,代码如下:

#include<stdio.h>
void main(){int a=4;if(a==1||a==2){printf("天气正在下雨或刮风");} else if(a==3||a==4){printf("我要去上学或者补课");}else{printf("我要去跑步");}}

结果如下:

2.3 逻辑运算符与&&
以上我们介绍了逻辑运算符或(||),使用或运算符只需要左右两边有一个表达式正确则左右两边整体的值为正确。在C语言中正确我们可以使用一个标识表示。这个标识为TRUE。

这一小节我们将学习需要表达式两边都正确整体的值才为正确的运算符“与”,与运算使用运算符&&。我们修改上一小节的程序,修改后代码如下:

#include<stdio.h>
void main(){int a=4;if(a==1&&a<5){printf("天气正在下雨或刮风");} else if(a==3||a==4){printf("我要去上学或者补课");}else{printf("我要去跑步");}
}

以上代码if后的条件为a==1&&a<5,中间的运算符更改为了&&,&&表示左右两边表达式均正确,当前运算才为正确。很明显a等于,不满足第一个条件,满足 a==3||a==4条件,则会执行代码printf("我要去上学或者补课");。运行结果如下:

我们修改a的值为1,则会执行代码printf("天气正在下雨或刮风");。(虽然a等于1的时候肯定小于5,这里只是作为演示)代码如下:

#include<stdio.h>
void main(){int a=1;if(a==1&&a<5){printf("天气正在下雨或刮风");} else if(a==3||a==4){printf("我要去上学或者补课");}else{printf("我要去跑步");}}

结果如下:

二、了解switch语句的使用方法

switch语句与if作用相同,均是用与做流程控制,也和if语句一样需要使用条件进行控制。
学习了if语句后switch的学习相对比较简单,先列出一个格式说明:

switch(变量){case 值://代码内容 break;//break是跳出作用,不像if只执行一处,如果不加break会执行下一句 case 值://代码内容 break;//break是跳出作用,不像if只执行一处,如果不加break会执行下一句 case 值://代码内容 break;//break是跳出作用,不像if只执行一处,如果不加break会执行下一句 default://代码内容    }

switch是关键字,后接一个圆括号,圆括号内传入一个变量;在switch圆括号后使用一对花括号,花括号内为switch语句的内容。使用case关键字后接一个值,假设switch传入的变量值为1,则跳转到case 1:后执行冒号后的代码,在代码的最后一行使用break关键字跳出。(break的作用为跳出)如不加break则会执行按顺序往下的case内容。

先看一示例代码:

#include<stdio.h>void main() {int a=1;switch(a){case 1:printf("选择的是夫妻肺片");break;case 2:printf("选择的是肠粉");break;case 3:printf("选择的是口水虾");break;case 4:printf("选择的是濑尿虾");break;case 5:printf("选择的是炸蝗虫");break;default:printf("没有这个菜单"); }
}

以上代码中a的值等于1,switch传入一个a作为条件,a为1则跳转到case 1处执行冒号后的代码printf("选择的是夫妻肺片");
运行结果如下:

我们尝试在case 1与case 2语句块中删除最后一条语句 break; 看看是否会继续执行下一个case 2:的内容。代码如下:

#include<stdio.h>void main() {int a=1;switch(a){case 1:printf("选择的是夫妻肺片");case 2:printf("选择的是肠粉");case 3:printf("选择的是口水虾");break;case 4:printf("选择的是濑尿虾");break;case 5:printf("选择的是炸蝗虫");break;default:printf("没有这个菜单"); }
}

结果如下:

从结果得知程序并没有跳出。由于并没有换行,我们使用\n符号可以进行换行,使运行结果更加清晰。修改代码如下:

#include<stdio.h>void main() {int a=1;switch(a){case 1:printf("选择的是夫妻肺片\n");case 2:printf("选择的是肠粉\n");case 3:printf("选择的是口水虾\n");break;case 4:printf("选择的是濑尿虾\n");break;case 5:printf("选择的是炸蝗虫\n");break;default:printf("没有这个菜单\n"); }
}

以上程序在printf中添加了\n,\n的作用是换行,输出显示时并不会输出\n。
运行结果如下:

IT原创动漫、学习资料、原创教程请关注公众号。

五、总结

通过以上描述与讲解,我们了解了以下几点内容:

  1. 了解了if语句if…else语句以及if…elseif…语句的使用方法
  2. 了解switch语句的使用方法
  3. 了解switch语句中break的作用
  4. 了解了逻辑运算符或“||”用于判断条件成立1边则为正确
  5. 了解了逻辑运算符或“&&”用于判断条件均成立则为正确

《零基础看得懂的C语言入门教程 》——(六)轻轻松松了解C语言的逻辑运算相关推荐

  1. c++ 结构体赋值_《零基础看得懂的C语言入门教程》—(十二)结构体是这么回事

    一.学习目标 了解C语言的结构体的使用方法 了解C语言结构体的结构的赋值 了解多种C语言结构体变量的赋值方法和取值方法 目录 <零基础看得懂的C语言入门教程>--(二)简单带你了解流程 & ...

  2. 《零基础看得懂的C++入门教程 》——(9)结构体原来如此

    一.学习目标 了解C++语言的结构体的使用方法 了解C++语言结构体的结构的赋值 了解多种C++语言结构体变量的赋值方法和取值方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的 ...

  3. 《零基础看得懂的C++入门教程 》——(8)搞定二维数组与循环嵌套

    一.学习目标 了解二维数组的使用方法 了解循环嵌套的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想了解编译原理和学习方法点这 ...

  4. 《零基础看得懂的C++入门教程 》——(7)小数组玩起来

    一.学习目标 了解数组的使用方法 了解一维数组的使用方法 了解一维数组与循环的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想 ...

  5. 《零基础看得懂的C++入门教程 》——(6)自己动手写个函数

    一.学习目标 了解C语言的自定义函数的使用方法 了解C语言自定义函数的传参 了解C语言自定义函数的返回值 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软 ...

  6. 《零基础看得懂的C++入门教程 》——(5) 容我套个娃 循环

    一.学习目标 了解循环的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想了解编译原理和学习方法点这篇,学习方法和一些原理C++ ...

  7. 《零基础看得懂的C++入门教程 》——(4)条件判断原来如此

    一.学习目标 了解什么是条件判断 了解多个条件判断 了解输入 了解什么是逻辑与.逻辑或 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想 ...

  8. 《零基础看得懂的C++入门教程 》——(3)表达式花样挺多鸭

    一.学习目标 了解变量之间的计算 了解什么是表达式 了解什么是自增.自减 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想了解编译原理和 ...

  9. 《零基础看得懂的C++入门教程 》——(2)什么是数据类型、变量?一看便会

    一.学习目标 了解基本常用的数据类型 了解什么是变量 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<软件介绍> 想了解编译原理和学习方法点这篇,学习 ...

  10. 《零基础看得懂的C++入门教程 》——(1)第一个C++程序就让你知其所以然

    一.学习目标 了解第一个C++程序 了解第一个C++程序结构 了解什么是注释 了解什么是命名空间 了解C语言的输出(如何在程序运行时显示内容) 了解语句结束后需要使用什么符号表示结束 了解程序入口 目 ...

最新文章

  1. 浅谈Javascript事件模拟
  2. 迷你MVVM框架 avalonjs 学习教程14、事件绑定
  3. IT兄弟连 JavaWeb教程 MVC设计模式
  4. java元婴期(30)----java进阶(springmvc(4)---参数绑定(下)springmvc校验异常处理)
  5. 关于计算机的使用方法中心,关于新校区行政楼和活动中心楼网络使用的说明
  6. javascript 面向对象(转)
  7. SAP UI5应用点了search按钮后的实现调试
  8. mysql双机互备linux成功的_配置MySQL双机热备 - Linux服务器MySQL双机热备份试验_数据库技术_Linux公社-Linux系统门户网站...
  9. appium+python+iOS 环境搭建与使用中常见问题的解决方案链接
  10. Apache Kafka
  11. HTML5网站大观:分享8个精美的 HTML5 网站案例
  12. 无刷电机反电动势过零检测
  13. ddmmyy日期格式是多少_DDMMYY什么意思?
  14. [BZOJ3944]Sum
  15. php中的条件语句,PHP中的条件语句和示例
  16. vscode python第三方库自动补全_vscode python 第三方库的智能提示
  17. 当不知轴承型号时如何寻找轴承故障频率_电机轴承的故障诊断与失效分析
  18. Spring AOP切面的执行顺序
  19. JAVA计算机毕业设计藏宝阁游戏交易系统Mybatis+系统+数据库+调试部署
  20. BZOJ1721 Ski Lift 缆车支柱

热门文章

  1. 深度解读.NET 5授权中间件的执行策略
  2. .Net在线编辑工具.NET Fiddle
  3. 【翻译】.NET 5 Preview5发布
  4. 《ASP.NET Core 微服务实战》送书结果公告
  5. 使用Redis创建分布式锁
  6. 参数传递机制之JWT
  7. .NetCore下使用Polly结合IHttpClientFactory实现聚合服务
  8. 程序员修神之路--提高网站的吞吐量
  9. [译]ABP vNext介绍
  10. 微软高管解读财报:努力创新云基础架构