1.if 与 else (else if)之间采用就近原则{从小白开始c语言常见错误归纳(持续更新中)【欢迎大家私信补充哦】}

(大家可以按标题来查找常见错误哦)

1.if 与 else (else if)之间采用就近原则,即else是和它离的最近的if匹配的。(采用比特鹏哥的例子)

AS WE KONW 

当如if ,else ,else if,for ,while 等等下面只控制下面一个语句的时候 

大家在书写为了快捷有时候就省略了{}

例如

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 2;
    if(a == 1)
        if(b == 2)
            printf("hehe\n");
    else
        printf("haha\n");
    return 0; 
}
//打印hehe?

大家第一眼看过去打印过去程序结果是不是打印 hehe

这里就体现了格式和{}的作用

注意哦:if 与 esle (else if)之间采用就近原则,即 else 是和它离的最近的 if 匹配的

那么正确的格式

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 2;
    if(a == 1)
   {
        if(b == 2)
       {
            printf("hehe\n");
       }
   }
    else
   {
         printf("haha\n");
   }       
    return 0; }

或者也可以采用格式对齐的方式

如下

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 2;
    if(a == 1)
        if(b == 2)
            printf("hehe\n");
        else// if 与 else 对齐,也可以达到方便识别代码的作用
            printf("haha\n");    
    return 0; 
}

这样子的话就可以避免快速阅读时候的误读

大家可能觉得这其实没啥但真的非常重要

不然就会出现像卑微小编这样子的错误

如酱紫

#include<stdio.h>
int main()
{  
    int year ,month;
    scanf("%d%d",&year,&month);
    if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
            if (month == 2)
                printf("29");
    else if (month == 2)
        printf("28");
    return 0;//该代码为计算2月有多少天的代码
}

正确代码

#include<stdio.h>
int main()
{  
    int year ,month;
    scanf("%d%d",&year,&month);
    if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
            {
                if (month == 2)
                    printf("29");
            }
    else if (month == 2)
        printf("28");
    return 0;//该代码为计算2月有多少天的代码
}

希望大家能养成一个好的编程习惯

会减少很多麻烦哦

(有错误的话欢迎大家指出哦)

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CTGU-Yoghurt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值