zoukankan      html  css  js  c++  java
  • C语言学习笔记(5)—— 语句(1)

      c程序常见结构大概有选择结构,循环结构,顺序结构。c程序由一个一个的函数构成,而构成函数的则是语句,语句包含赋值语句,循环语句,条件语句,分支语句。赋值语句对与我们来说是很熟悉的。条件语句,分支语句与循环语句则会在后面一一介绍到。

      顺序结构对于我们来说是很熟悉的,它可以是这个样子。

    int main(){
      double a = 0,b = 0;
      scanf("%lf%lf",&a,&b);
      printf("a + b = %lf",a+b);
      printf("a - b = %lf",a-b);
      printf("a * b = %lf",a*b);       
      return 0;               
    }    

      在这段程序里,我们定义了两个双精度浮点型变量,然后调用scanf()函数从键盘读取了a,b的值。又调用了printf()函数打印出a+b,a-b,a*b,为什么没有计算a/b呢?因为我们不能判断b的值是否为零,从而计算出a/b的值或者报错。这段代码就是典型的顺序结构。它的框图可以是这样(经过抽象)。

      条件结构,在上面的代码里,我们的程序似乎很"傻",因为它不能对a和b进行判断,导致我们不能直接计算出a和b的商,我们该怎么做,才能让程序变的,聪明点呢??实际上,我们只需要对b的值进行判断,当b为0时,输出错误信息。当b不为零时,我们就可以求出a和b的商。用算法框图可以这样表示。

      我们可以,改进上面的程序

    #include <stdio.h>
    
    int main(){
      double a = 0,b = 0;
      scanf("%lf%lf",&a,&b);
      printf("a + b = %lf",a+b);
      printf("a - b = %lf",a-b);
      printf("a * b = %lf",a*b);   
      if (0 == b) {
        printf("Error,b=0");    
      } else {
        printf("a / b = %lf",a/b);
      }      
      return 0;               
    }   

      我们可以看见,多出来的是这一段。

             

        这段代码就是典型的if-else语句,当b为0时,程序输出错误信息。当b不为0时,程序计算出a与b的商。if-else语句一般是这样的形式。 

    if (表达式) {
       ....
       .... 
       ....
    } else {
       ....
       ....
       .... 
    } 

        当括号内表达式的布尔值为true时,执行if下方代码块的语句,当括号内表达式的布尔值为false时,执行else下方代码块的语句。

     现在,我们用if-else语句来求一个分段函数的值。

      

    #include <stdio.h>
    
    int main(){
        double x;
        scanf("%lf",&x);
    
        if ( 0 == x) {
            printf("f(%.0lf) = 1",x);
        } else if (0 > x) {
            printf("f(%lf) = 0",x);
        } else {
            printf("f(%lf) = %lf",x,x*x);
        }
        return 0;
    }

      我们使用了if-else if语句来帮助我们进行了多重选择,所以,当可选情况比较多的时候,我们可以考虑使用if-else if语句。这篇文章介绍了顺序结构和选择结构,在后面的文章里,会介绍到循环结构和分支结构。在了解了这些强大的语句之后,就可以使用C语言来完成一些算法题或者写出一些好玩儿的程序。

     

      

  • 相关阅读:
    获取发布的头条的url,避免点击打开新的页面
    下载图片 保存至本地 返回路径
    线程运行的3个状态
    程序并发执行所需付出的时空开销
    web metrics dashboard 数据分析工具 看板 从可视化发现问题 避免sql重复写 调高效率
    Binary safe
    simple dynamic string
    a
    a
    从业务角度 减少代码执行的时间 和 因长时间执行的而带来的代码复杂性 日志恢复数据
  • 原文地址:https://www.cnblogs.com/zhuxingtian/p/9898983.html
Copyright © 2011-2022 走看看