#include<stdio.h>#include<math.h>intmain(){int h;double x, y;scanf("%lf,%lf",&x,&y);if((pow(x -2,2)+pow(y -2,2)<=1)||(pow(x +2,2)+pow(y -2,2)<=1)||(pow(x +2,2)+pow(y +2,2)<=1)||(pow(x -2,2)+pow(y +2,2)<=1)){
h =10;printf("height is %d\n", h);}else{
h =0;printf("height is %d\n", h);}return0;}
习题04(04)用嵌套的 if 语句编程
题目描述
用嵌套的 if 语句写程序,求 y 的值,a(a 值为正)和 x,通过键盘输入。
当 x 为+a 或者-a 时,y 为 0;
当-a<x<a 时,y 为 sqrt(a*a-x*x);
当 x>a 或者 x<-a, y 为 x。
输入描述
输入 a(正数)和 x 的值。
输出描述
输出 a、x 和 y 的值。
输入样例
a=5.5,x=12.5
输出样例
a=5.50,x=12.50,y=12.50
#include<stdio.h>#include<math.h>intmain(){double a, x, y;scanf("a=%lf,x=%lf",&a,&x);if(x == a || x ==-a){
y =0;}elseif((x >-a)&&(x < a)){
y =sqrt(a * a - x * x);}elseif(x > a || x <-a){
y = x;}printf("a=%.2lf,x=%.2lf,y=%.2lf\n", a, x, y);return0;}
#include<stdio.h>intmain(){double a, b;int c =0;scanf("%lf",&a);if((a <=0)||(a >=10000)){printf("data error!\n");}else{if(a <3000){
c =1;}elseif(a <6000){
c =2;}elseif(a <10000){
c =3;}}switch(c){case1:
b =18+ a *0.012;printf("the cost is %.2lf RMB\n", b);break;case2:
b =36+ a *0.006;printf("the cost is %.2lf RMB\n", b);break;case3:
b =54+ a *0.003;printf("the cost is %.2lf RMB\n", b);break;}}