C语言复习2:常用函数和switch语句

一:数学函数

使用数学函数时,应该在该源文件中使用以下命令行:

   #include<math.h>    或    #include"math.h"

常用函数如下:

二:switch语句:
     switch语句是多分支选择语句

其一般形式如下:

 switch(表达式)
   { 
        case 常量表达式1:  <语句体1;>  <break;>
        case 常量表达式2:  <语句体2;>  <break;>
                 ……
       case 常量表达式n:  <语句体n;>  <break;>
       <default:      语句体n+1;>
}

(1)switch语句中括号中表达式其值的类型应为整数类型(包括字符型);

(2)各个case标号出现的次序不影响结果。例如:可以先出现default标号,再出现case标号。

(case和default都是起标志一个位置的作用,所以称其为标号

(3)在执行完一个case子句时,应当用break语句使流程跳出switch语句,即终止switch语句的运行。

例题1:

  从键盘上输入两个正整数,并输入一个四则运算符号:+ - * / ,进行相应运算并输出它们的结果。
例:
(1)输入:2,3,+  输出:2+3=5
(2)输入:3,2,-   输出:3-2=1
(3)输入:3,4,*   输出:3*4=12
(4)输入:6,2,/    输出:6/2=3

代码如下:

#include<stdio.h>
#include<math.h>
int main()
{
    unsigned int a,b,c;
    char w;
    scanf("%u,%u,%c",&a,&b,&w);
    switch(w)
    {
    	case '+':c=a+b;break;
    	case '-':c=a-b;break;
    	case '*':c=a*b;break;
    	case '/':c=a/b;break;
	}
	printf("%u%c%u=%u",a,w,b,c);
    return 0;
}

例2:

运输公司对用户计算运输费用。路程(s公里)越远,每吨.千米的运费越低。标准如下:
(1)s<250   没有折扣
(2)250≤s<500  2%折扣
(3)500≤s<1000  5%折扣
(4)1000≤s<2000  8%折扣
(5)2000≤s<3000  10%折扣
(6)3000≤s    15%折扣
从键盘上输入单价(每吨千米运费)、重量和距离,用if(或者switch)语句实现。
总运费=每吨千米运费*货物重*路程*(1-折扣)
总运费保留2位小数,最小宽度为10。
例:
(1)输入:100,20,300  输出:freight= 588000.00
(2)输入:100,10,1000 输出:freight= 920000.00

代码如下:

#include<stdio.h>
int main()
{
    
    double s,f,d,m,z;//m=重量,z=折扣,d=单价 
    int e;
    scanf("%lf,%lf,%lf",&d,&m,&s);
    e=s/250;
    if(e>12) e=12;
	switch(e)
    {
    	case 0:z=0;break;
    	case 1:z=0.02;break;
    	case 2:
    	case 3:z=0.05;break;
    	case 4:
    	case 5:
    	case 6:
    	case 7:z=0.08;break;
    	case 8:
    	case 9:
    	case 10:
    	case 11:z=0.10;break;
    	case 12:z=0.15;break;
	}
	f=d*m*s*(1-z);
	printf("freight=%10.2lf",f);
    return 0;
}

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值