C语言-if语句_c语言if语句表达式

C语言-if语句_c语言if语句表达式1、一般形式if(表达式)表达式1else表达式2:表达式成立(为真)则执行表达式1,否则执行表达式2.适用范围:真假,对错,开关,对立面的条件注意:如果if语句中只包括一条语句,可以省略

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

    1、一般形式 if(表达式)表达式1 else 表达式2   :表达式成立(为真)则执行表达式1,否则执行表达式2.

    适用范围:真假,对错,开关,对立面的条件

   注意:如果if语句中只包括一条语句,可以省略{}但最好不要省略,如果有多条语句,一定要加{}

   如果else不包含任何语句,则可以省略掉else

    2、分支 if(表达式1){语句1}else if(表达式){语句2} else if(表达式3){语句3}。。。。。else(语句4)

    表达式1成立立即执行语句1,否则判断表达式2,表达式2成立则立即执行语句2,否则判断表达式3,表达式3成立则立即执行语句3,表达式1,表达式2,表达式3都不成立,则执行语句4

    分支if语句中条件是互斥的,不能有重复或互相包含的情况。如果有,必须重新理清程序思路。

    if的条件是一段连续的范围,要把所有的情况都涵盖完

    适用范围:条件互斥,没有相重合的条件,且条件都是一段连续的范围的时候用

    3、嵌套形式:

        if (表达式) {

            if(表达式1)

            {

                语句1   //表达式和表达式1同时成立

            }else{

            语句2    //表达式成立且表达式1不成立

            }

        }else{

            if (表达式2) {

                语句3   //表达式不成立且表达式2成立

            }else{

            语句4    //表达式不成立且表达式2不成立

            }

        }

    使用范围:适合逐层递进,从大到小细分条件,可用嵌套

    

    三目运算符 表达式?语句1:语句2 等价于if(表达式)语句1 else 语句2;

    1、使用if分支选择性输出两个数中最大的数字:

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

2、使用if语句判断一个从键盘输入的数字是奇数还是偶数

int a=0;//定义变量时最好对变量进行初始化。
    printf("请输入一个数字:");
    scanf("%d",&a);
    if(a%2==0)//对a除以2的余数进行判断,如果余数为0,则说明a为偶数,否则a为奇数。
    {
        printf("%d是一个偶数\n",a);
    }
    else
    {
        printf("%d是一个奇数\n",a);
    }

3、数学中分段函数的C语言模型:如果x为0,则y的值为1000,如果x不为0,y的值为x分之1,

  float y=0;  //定义变量
    int x=0;
    
    printf("请输入x:");   //输入
    scanf("%d",&x);
    
    if(x!=0)      //判断
    {
        y=(float)1/x;  //对运算结果要强制转换为float型。
    }
    else
    {
        y=1000;
    }

4、输入三个数,找出最大的并输出:

int a=0;
    int b=0;
    int c=0;
    int temp=0;
    
    printf("请输入三个数:\n");
    scanf("%d%d%d",&a,&b,&c);
    
    if(a>b)
    {
        temp=a;
    }
    else
    {
        temp=b;
    }
    if (temp>c) {
        printf("max=%d\n",temp);
    }
    else
    {
        printf("max=%d\n",c);
    }

5、三个数求最大值的第二种算法:先假设第一个数最大,然后和第二个数比较,得到最大的,最后与第三个数比较:

int a=0;
    int b=0;
    int c=0;
    int max=0;
    
    printf("请输入三个数:\n");
    scanf("%d%d%d",&a,&b,&c);
    
    max=a;//选择法找出三个数的最大值
    if (max<b) {
        max=b;
    }
    if (max<c) {
        max=c;
    }
    
    printf("最大数是%d",max);

6、判断一个两位数个位是奇数且十位是偶数:首先判断这个数时两位数,再对后续条件进行判断

  int a=0;
    
    printf("输入一个数:");
    scanf("%d",&a);
    
    if (a>9&&a<100&&a%2==1&&a/10%2==0) {
        printf("a是两位数,且个位是奇数,十位是偶数\n");
    }
    else
        printf("a不符合条件\n");

7、判断一个输入的数字是否是整数:

   float a;
    
    scanf("%f",&a);
    printf("输入的数字是%f",a);
    
    if (a-(int)a==0)
    {
        printf("a是整数");
    }
    else
    {
        printf("a不是整数");
    }

8、使用冒泡排序对四个数进行排序(不使用for循环)假设第一个数是最小的,然后与后续的数字逐一比较并移动到最后一个数字的位置,然后再使用第一个数字和最后一个数字之前的数字进行比较,得到第二小的数,并放在倒数第二的位置,重复循环直到得出最大的放在第一个的位置。

   int a=0;
    int b=0;
    int c=0;
    int d=0;
    int tmp=0;
    
    printf("请输入四个数字:");
    scanf("%d%d%d%d",&a,&b,&c,&d);
    
    if (a<b) {
        tmp=b;
        b=a;
        a=tmp;
    }
    if (b<c) {
        tmp=c;
        c=b;
        b=tmp;
    }
    if (c<d) {
        tmp=d;
        d=c;
        c=tmp;
    }
    
    if (a<b) {
        tmp=b;
        b=a;
        a=tmp;
    }
    if (b<c) {
        tmp=c;
        c=b;
        b=tmp;
    }
    if (a<b) {
        tmp=b;
        b=a;
        a=tmp;
    }
 
    printf("从大到小是%d,%d,%d,%d\n",a,b,c,d);

9、根据商品价格打折条件对应付款进行计算:如果三种商品的价格中有一个超过50或者三个商品价格之和超高100,则对总价格打折扣85%。

   float aprice,bprice,cprice;
    float sumprice;
    
    printf("请输入三种商品价格:");
    scanf("%f%f%f",&aprice,&bprice,&cprice);
    
    if (aprice>50||bprice>50||cprice>50||aprice+bprice+cprice>100) {
        sumprice=(aprice+bprice+cprice)*(1-0.15);
    }
    else sumprice=aprice+bprice+cprice;
    
    printf("应付钱数为%.1f\n",sumprice);

10、使用分支if语句确定三个数中最大的数:

int a,b,c,m;
    scanf("%d%d%d",&a,&b,&c);
    
    if (a>=b&&a>=c) {
        m=a;
    }
    else if (b>=a&&b>=c){
        m=b;
    }
    else m=c;
 
    printf("最大值为%d\n",m);

11、使用嵌套if语句找出三个数中最大的数

int a,b,c,m;
    
    scanf("%d%d%d",&a,&b,&c);
    
    if (a>b) {
        if (c>a)
            m=c;
        else
            m=a;
    }else{
        if(c>b)
            m=c;
        else
            m=b;
    }
    
    printf("最大的是:%d\n",m);

12、使用三目运算符求三个数中最大的数,方法一:

   int a,b,c,m;
    
    scanf("%d%d%d",&a,&b,&c);
    
    m=(((a>b)?a:b)>c?((a>b)?a:b):c);
    
    printf("最大值是%d\n",m);

13、使用三目运算符求三个数中最大的数,方法二:

  int a,b,c,m;
    scanf("%d%d%d", &a, &b, &c);
    m = a;
    m = m > b ? m : b;
    m = m > c ? m : c;
   printf("最大值是%d\n",m);

14、使用三目运算符求三个数中最大的数,方法三:

  int a,b,c,m;
    scanf("%d%d%d", &a, &b, &c);
    m = (a>=b && a>=c) ? a : (b>=a && b>=c ? b : c);
   printf("最大值是%d\n",m);

15、使用三目运算符求三个数中最大的数,方法四

  int a,b,c,m;
    scanf("%d%d%d", &a, &b, &c);
    m = a>=b ? (a>=c ? a : c) : (b>=c ? b : c);
   printf("最大值是%d\n",m);

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167032.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2014找工作总结-机会往往留给有准备的人

    转发请注明出处:http://blog.csdn.net/xiajun07061225/article/details/12844801其实我的求职过程在十一之前就已经结束了,总体讲比较顺利。参加面试的几家公司基本都拿到了offer,分别是阿里巴巴、美团网、创新工场涂鸦移动以及华为。当时也参加了其他公司的面试,比如人人,一面过后收到了二面通知,拒了。创新工场豌豆荚一面结束后等消息。十…

    2022年4月9日
    47
  • 学习笔记 | 独立成分分析(ICA, FastICA)及应用

    学习笔记 | 独立成分分析(ICA, FastICA)及应用这篇博客介绍了ICA算法和它的一些简单应用,主要内容有背景介绍、算法原理、代码分享和ICA在鸡尾酒问题上的应用,另外,文章还对ICA的改进算法FastICA作了介绍并附上了代码及实验分析。

    2022年5月13日
    43
  • ADRC学习笔记(二)

    ADRC学习笔记(二)1.最速跟踪微分器TD它的离散表达式为:参数中:V(t)是目标值h、h0为积分步长,一般来说h可以等于h0,但是为了减少超调和减少震荡,才把他们分开,一般h0比h大,比如大20倍。当h0较大时,能够明显减少震荡,所以也叫滤波因子。减小h可以抑制噪声放大作用。r为速度因子,值越大,逼近速度越快,但是最好根据实际被控对象的可承受能力而定。表达式中:其中fhan函数第一种表达式为:fhan函…

    2022年5月12日
    36
  • 最新最全Golang面试题(精通篇)

    最新最全Golang面试题(精通篇)Golang面试问题汇总通常我们去面试肯定会有些不错的Golang的面试题目的,所以总结下,让其他Golang开发者也可以查看到,同时也用来检测自己的能力和提醒自己的不足之处,欢迎大家补充和提交新的面试题目.1.Golang中除了加Mutex锁以外还有哪些方式安全读写共享变量Golang中Goroutine可以通过Channel进行安全读写共享变量,还可以通过原子性操作进行.2.无缓冲Chan的发送和接收是否同步ch:=make(chanint)无缓冲的channel由于没有缓

    2022年6月25日
    22
  • 关于C++ 头文件

    关于C++ 头文件

    2021年9月27日
    51
  • dos的批量copy命令

    dos的批量copy命令1、主要是有需求,采取百度的,发现挺好的,还是帮作者推广一下。来自https://www.cnblogs.com/xiykj/archive/2004/01/13/13299548.html“Dos命令复制所有目录下同类型文件”2、需求:想拷贝文件夹内部的同类型文件(比如*.jpg),但是这个jpg文件在不同的文件夹下面,因此copy起来还是不方便,因此需要寻求命令代码解决3、命令是:for/r%iin(.jpg)*docopy“%i”/yd:\img其中,加粗的是变成自己需

    2022年7月18日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号