关于分支与循环的一些细节

简介: 关于分支与循环的一些细节

前言:

`关于C语言分支于循环是比较简单,却有一些小细节,下面我们通过几道题目来进行探索

细节一:if与else匹配的细节

我们都知道知道if与else进行匹配,但是里面有个小点,希望各位注意:(请看代码)

题目:请看题目说出输出的结果:

#include<stdio.h>
int main()
{
  int a = 0;
  int b = 2;
  if (a == 1)
    printf("要选我吗?\n");
      if (b == 2)
       printf("真的要打印我呀\n");
  else
    printf("打印我打印我!!!\n");
  return 0;
}

细节二:多个关系运算符连续使用

问题:请看代码说出输出结果:

#include<stdio.h>
int main()
{
  int a = 0;
  int b = 100;
  int c = 3;
  if (a < b < c)
    printf("选我!!!\n");
  else
    printf("可能是我哦\n");
  return 0;
}

细节三:逻辑运算符中的短路现象

题目:请看代码计算出输出结果:

#include<stdio.h>
int main()
{
  int i = 0;
  int a = 0;
  int b = 0;
  int c = 0;
  int d = 0;
  i = a++ && ++b && d++;
  printf("a = %d b = %d c = %d d = %d\n", a, b, c, d);
  printf("i = %d\n", i);
  return 0;
}

答案:

答案1:真的要打印我呀

答案2:选我!!!

答案3:a = 1 b = 0 c = 0 d = 0 i = 0

总结

  • 问题一总结:else与最近的if匹配;
  • 问题二总结:逻辑运算操作符的逻辑是真返回1,假返回0;
    逻辑运算符在本题目中的运算逻辑是,a<b,是真,返回1,1<c,所以打印“选我!!!”;
  • 问题三总结:与运算符一个为假也就是0,那么后面不再进行计算;
    在本题中a为后置++,先使用后加加,先使用0,i接收到0后判断认为是假,对后面的与操作数字不进行计算,直接掠过。

欢迎指正,建议,评论,谢谢!

相关文章
使用vos3000时sip O 口网关注册成对接网关作为 ivr 接入,主叫号码如何设置
在VOS3000系统中,将SIP终端作为IVR接入点涉及配置SIP网关指向IVR应用,注册SIP设备并设定含用户名和域名的SIP账户。主叫号码设置可在注册时通过 Caller-ID 头部或拨号计划完成。拨号规则用于控制主叫号码传递,例如根据来源自动调整。配置后需测试主叫号码及IVR接入。不同版本可能有差异,欢迎交流学习。
|
机器学习/深度学习 JSON 物联网
ChatGLM-6B 部署与 P-Tuning 微调实战
自从 ChatGPT 爆火以来,树先生一直琢磨想打造一个垂直领域的 LLM 专属模型,但学习文本大模型的技术原理,从头打造一个 LLM 模型难度极大。。。
3185 1
|
测试技术 PHP 开发工具
深入解析 Laravel 中的 Composer Lock 文件
【8月更文挑战第31天】
426 0
|
编解码 开发工具 git
解决Ubuntu16.04视频编码出现Unknown encoder 'libx264'问题
解决Ubuntu16.04视频编码出现Unknown encoder 'libx264'问题
789 0
|
存储 人工智能 算法
极智AI | 一文看懂winograd卷积加速算法
本文详细解释了 winograd 算法加速卷积的实现原理。
1577 1
|
缓存 负载均衡 JavaScript
Nodejs 第二十六章(反向代理)
Nodejs 第二十六章(反向代理)
341 0
|
机器学习/深度学习 自然语言处理 算法
【深度学习】常用算法生成对抗网络、自编码网络、多层感知机、反向传播等讲解(图文解释 超详细)
【深度学习】常用算法生成对抗网络、自编码网络、多层感知机、反向传播等讲解(图文解释 超详细)
498 0
|
Linux Docker 容器
Docker提示IPv4 forwarding is disabled. Networking will not work错误
Docker提示IPv4 forwarding is disabled. Networking will not work错误
259 0
|
监控 KVM 虚拟化
通过libVirt抓取kvm虚拟机监控指标数据
通常在我们的云环境中,为了保证云平台中虚拟机的正常运行,基本都需要这样一个功能,就是收集虚拟机的监控数据,比如cpu的使用率、内存的使用率、磁盘io、网络io等基本信息。可以利用这些信息及时调整云平台环境中出现的一些问题,从而实现保证VM的正常运行。
5935 0
|
安全 物联网安全 测试技术
物联网安全测试流程笔记
物联网安全测试流程笔记
297 1