C语言IF语句的使用详解(下)包含Swich语句

 2023-03-03 21:00:28  阅读 0

一、IF的使用案例

编写程序,输入一个x的值,按以下函数计算并输出y的值。

y的值分别为:        -1    (x<0) y=     0    (x=0)           1    (x>0)  

//FileName: chap3_15.c
#include <stdio.h>
int main( )
{
  int x,y;
  scanf("%d",&x);
  if(x<0)
    y=-1;
  else
    if(x==0)
      y=0;
    else
      y=1;
  printf("y=%d\n",y);
  return 0;
}

问题如下:

 为提倡节约用水,按照每月每户每人3吨水进行定量,标准以内的用水量水费为每吨1.51元,超额的部分2倍付费。需要我们编写程序来解决每户每个月要交的水费问题。

代码:

#include <stdio.h>
#define DOSAGE 3
#define CRITERION 1.51
main()
{
  int person,ration;
  float previous,behind,water,charge;
  printf("请输入人口数、上月水表读数、本月水表读数:");
  scanf("%d %f %f",&person,&previous,&behind);
  ration=person*DOSAGE;
  water=behind-previous;
  if(water<=ration)                  /* 条件判断,分支选择 */
    charge=water*CRITERION;
  else
    charge=ration*CRITERION+(water-ration)*2*CRITERION;
  printf("\n用户水费是:%.2f\n",charge);
}

if与else的配对原则?

写出程序运行结果。

#include <stdio.h>
int main()
{	int a=100,x=10,y=20,ok1=5,ok2=0;
	if(x<y)
   	   if(y!=10)
      	if(!ok1)
         	   a=1;
            else
              if(ok2)     
              a=10;
              a=-1;
	printf(“%d\n”,a);
}

二、Swich语句

C语言提供了一种switch语句专门处理多分支的情形,使程序变得简洁易懂。 switch语句的一般形式如下:

switch(表达式)
   {
       case 常量表达式1: 语句块1
       case 常量表达式2: 语句块2
               …  
       case 常量表达式n: 语句块n
       default: 语句块n + 1 
   }

功能:首先计算switch后面括号内的“表达式”,然后依次与各个case后面 的“常量表达式”的值进行比较,当“表达式”的值与某一个case后面的“常量表 达式”的值相等时,就选择这个标号作为入口,执行该case子句后面的语句块, 并继续执行其后的所有case子句直到程序结束。如果“表达式”的值与所有case 后面的“常量表达式”的值都不相等,则执行default后面的语句。 

标签:

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码