一:数学函数
使用数学函数时,应该在该源文件中使用以下命令行:
#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;
}