首页 > 其他分享 >简单介绍一下 if else else if 函数(c基础)

简单介绍一下 if else else if 函数(c基础)

时间:2024-10-30 22:51:54浏览次数:6  
标签:语句 main 函数 int printf else 简单 include

适合对象 c语言初学者  总结语言用色,个人强调用红色,注意为易错点,若有问题请告诉我谢谢。(建议通过目录观看)

if 函数

if函数是条件函数。

格式 

 if 接() 接   一种语句   

执行方法

先判断()的真假,若为真,就执行。为假就不执行。

if 只管距它最近的一个语句或复合语句。

 即 if(a>b)printf("a>b")

if(a>b)

{

printf("a>b");

a = a +1 ;

}

()内是一个可判断真假的表达式

常见表达式:if(2)(3>2)(a=1) (a==3)【T】

{

特别注意

(a=1)

 (a==3)

if 语句 ()内容易把 ==  写成  =

但编译器不会报错,会出现bug只需把常量放在前面。即(3==a

}

记住

(

在C语言中

0为假,其余为真。

) 【1为真,36也为真】

例如

#include<stdio.h>
int main()

{
if(0)    printf("this is true!");
return 0 ;
}

此时输出为无,

如果    if(1),将打印this is true!

但如果 if (36)呢?想一下

将打印this is true!       因为

(

在C语言中

0为假,其余为真。

)                        【请用英文打代码】

一种语句

分为 

                       1:单个语句   +    (一定要有;)
                        2:{  复合语句 +      }  

复合语句即为多个单个语句,单个语句间用 隔开。

例如

1: 

 if(a>b)printf("a>b"); 


2: 

 if(a>b)

{

printf("a>b");

a = a +1 ;

}

开始 a = 2 ; b = 3;

最后  不会打印 2>3 ,此时a=2; 

那如果不加 {} 呢?

if(a>b)

printf("a>b");

a = a +1 ;

开始 a = 2 ; b = 3;

最后  不会打印2>3,此时  a = 3; 

为什么a的值改变了;

if 只管距它最近的一个语句或复合语句。

加了{}时 

{

printf("a>b");

a = a +1 ;

}             

  构成了复合语句。if会管辖整个复合语句。

a = 2 ;b = 3;a > b为假,则不执行复合语句。即    不会打印 2>3 ,此时a=2; 

但未加{}时

if(a>b)

printf("a>b");

a = a +1 ;

if 只管距它最近的一个语句或复合语句

if 只管                printf("a>b");        

a = 2 ;b = 3;a > b为假,则不执行printf("a>b")

然后程序继续读写代码        a = a +1 ;                a的值就加1了。

即  最后  不会打印2>3,此时a=3; 

若有错误,请告知我谢谢!

下面给几个代码判断  结果

if 类例题

复合语句类

1:

#include<stdio.h>
int main()
{

    int a = 3;
    int b = 2;

    if (a > b)
        printf("a>b");
        a++;

        printf("%d",a);

    return 0;
}

2:

include<stdio.h>
int main()
{

    int a = 3;
    int b = 2;

    if (a > b)
      {  printf("a>b");
        a++;
      }    
        printf("%d",a);

    return 0;
}

结果

1:a > b4

2:  a > b4

3:

include<stdio.h>
int main()
{

    int a = 2;
    int b = 3;

    if (a > b)
        printf("a>b");
        a++;

        printf("%d",a);

    return 0;
}

4:

include<stdio.h>
int main()
{

    int a = 2;
    int b = 3;

    if (a > b)
     {   printf("a>b");
        a++;
     }
        printf("%d",a);

    return 0;
}
结果

3:  3

4:2

真假判断类

1:

include<stdio.h>
int main()
{

    
    if (0)
        printf(" this is true ");
       
    return 0;
}

2:

include<stdio.h>
int main()
{

    
    if (1)
        printf(" this is true ");
       
    return 0;
}

3:

include<stdio.h>
int main()
{

    
    if (36)
        printf(" this is true ");
       
    return 0;
}
结果

1:                                (无结果)

2: this is true 

3: this is true 

易错类

1:

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a=0)
        printf(" a == 0 ");
       
    return 0;
}

2:

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a==0)
        printf(" a == 0 ");
       
    return 0;
}

3:

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a=1)
        printf(" a == 1 ");
       
    return 0;
}

4:

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a==1)
        printf(" a == 1 ");
       
    return 0;
}

5

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a==36)
        printf(" a == 36 ");
       
    return 0;
}

6:

include<stdio.h>
int main()
{

    int a = 0 ;
    if (a=36)
        printf(" a == 36");
       
    return 0;
}
结果

1:                                (无结果)

2:a == 0

3:  a  == 1

4:                                (无结果)

5:                                (无结果)

6: a == 36

若有问题请告诉我谢谢。

if else 语句

格式

if 接() 接   一种语句 

else  接   一种语句 

{

特别注意

else    前只能有  if   所管辖的一种语句

if()后如果接几个单一语句必须用    {}   包起来。否则会报错。

}

执行方法

先判断()的真假,若为真,就执行if管辖的语句。为假就执行else管辖的语句。 if         else  语句 必执行且仅执行        if或else语句中的一个

if 或 else 只管距它最近的一个语句或复合语句

例如

#include<stdio.h>
int main()
{

    int a = 3 ;
    int b = 2 ;
    
    if(a>b)
    printf("a>b") ;
    else  
    printf("a<b");

    return 0 ;
}

运行结果为   a>b

分析        

已知        a = 3 ;b = 2 ;

因为         3 > 2

即             a>b

if(a>b)中    ()为真                  执行         if管辖的单个语句   printf(“a>b”) 

                                                不执行        else语句         

输出为          a>b

即        if         else  语句 必执行且仅执行        if或else语句中的一个

if 或 else 语句 后接复合语句 与 if 函数中 讲解一样。

if else if else 语句

格式

if 接() 接   一种语句 

else   if 接() 接   一种语句 

else  接   一种语句

{

特别注意

else    前只能有  if   所管辖的一种语句

if()后如果接几个单一语句必须用    {}   包起来。否则会报错。

}

执行方法

先判断 if  中()的真假,

若为真,        就执行if管辖的语句。

为假    ,        就判断else  if 中()的真假

若为真,        就执行else  if管辖的语句

为假    ,        就执行else管辖的语句

{

若还有 else if 就继续判断else  if 中()的真假  直到只有else语句

}

   

 if   else if     else  语句 必执行且仅执行        if else if 或 else  语句中的一个

if 或 else 只管距它最近的一个语句或复合语句

标签:语句,main,函数,int,printf,else,简单,include
From: https://blog.csdn.net/lb3636363636/article/details/143245691

相关文章

  • fstream中ifstream和ofstream的简单用法
    从文件中读数据用ifstream,比如:#include<iostream>#include<fstream>intmain(){std::stringfile_name="path/filename.txt";std::ifstreami_f_stream(file_name);//申请资源创建i_f_stream句柄if(!i_f_stream){......
  • 从ICG到SG函数
    SG函数是用于解决博弈论中公平组合游戏(ICG)问题的一种方法ICG这是啥?定义大概就几条:双方参与,轮流决策,决策最优无法决策时游戏结束,无法决策者输,不论如何决策游戏都能在有限步完成同一状态不可多次抵达,游戏无平局,任意决策者在决策点的行为与决策者无关仅与决策点有关这就是I......
  • 【SQL】Hive/Spark SQL笔记之时间函数、环比/同比/时间比较计算
    获取当天:'${zdt.format("yyyy-MM-dd")}'//获取上月月末select'${zdt.lastMonth().format("yyyy-MM-dd")}'T-1上月末select'${zdt.addDay(-1).lastMonth().format("yyyyMMdd")}'1个小时前select'${zdt.addHour(-1)......
  • 【C++】踏上C++学习之旅(四):细说“内联函数“的那些事
    文章目录前言1."内联函数"被创造出来的意义2.内联函数的概念2.1内联函数在代码中的体现2.2普通函数和内联函数的汇编代码3.内联函数的特性(重点)4.总结前言本章来聊一聊C++的创作者"本贾尼"大佬,为什么要创作出内联函数,以及内联函数的定义和内联函数的实现机制等......
  • springboot简单的项目
    项目结构用到的pom.xml配置(1)springdata-jpa操作数据库:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency>(2)springmvc<dependency><g......
  • 介绍一下for break continue 函数(c基础)
    for函数是循环函数格式for(   expression1      ;    expression2    ;     expression3   )+  一种语句expression1初始化变量的值                                         ......
  • qsort函数的学习与使用
    零.导言    在之前的文章中,我介绍了冒泡排序,即按ASCII码值把元素从小到大排序(文章链接我放在了第五部分,有兴趣的小伙伴可以求看看)。而今天我将继续介绍qsort函数,这个函数可以起到和冒泡排序一样的作用,并且有着更加广泛的应用场景。一.qsort函数的定义    qso......
  • Mysql梳理11——聚合函数
    Mysql梳理11——聚合函数Mysql梳理11——聚合函数11.1引言11.2聚合函数介绍11.2.1什么是聚合函数11.2.2聚合函数类型11.2.3聚合函数语法11.3具体聚合函数11.3.1AVG和SUM函数11.3.2MIN和MAX函数11.3.3COUNT函数11.4GROUPBY11.4.1基本使用11.4.2使用多个列......
  • 设计模式 - 简单工厂模式
    目录一、基本概念二、组成部分三、举例说明3.1 定义产品接口 3.2 定义具体产品类3.3 定义工厂类3.4 客户端代码四、优缺点4.1优点4.2缺点五、总结5.1适用场景5.2不适用场景5.3替代模式简单工厂模式(SimpleFactoryPattern)虽然不是GoF设计模式的一......
  • [C++] 成员函数指针和函数指针
    #include<iostream>usingnamespacestd;classA{public:A(inta):_a(a){}int_a;void*get_ptr(){returnthis;};voidp(intc){cout<<"_a:"<<_a<<endl;};};intint_func(inta,floatb){......