长方形是平面几何的概念,无法求体积,只有面积。只有立体几何的长方体才可以求体积。
对于长方形,要求面积,只需要将两边相乘即可。
对于长方体,要求体积,只需要将三边相乘即可。
所以抽象到C语言的时候,这两种计算,均是如果几个数值,然后将所有数值相乘,最终输出结果的过程。其中求面积需要输入两个数,而求体积需要输入三个数。
以求体积为例:
#include <stdio.h>int main()
{
int a,b,c//三个边长宽高的值。
int v//体积。
scanf("%d%d%d",&a,&b,&c)//输入三个值。
v=a*b*c//计算。
printf("%d\n",v)//输出结果。
return 0
}
#include <stdio.h>#include <conio.h>
int main (void) {
float h, w, bmi
printf ("身高(m):")
scanf ("%f", &h)
printf ("体重(kg):")
scanf ("%f", &w)
bmi = w/(h*h)
printf ("BMI:%f\n", bmi)
getch () /*屏幕暂留*/
return 0
}
运行结果
您真的急用哦。要不要我给你啊。我刚刚写完的啊。呵呵 还有抽象类型的题目呢#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
int GONGYUESHU(int m,int n)//*求最大公约数*//
{
int x,y,z
if(m<n)
{z=mm=nn=z}
x=my=n
while(y!=0)
{
z=x%y
x=y
y=z
}
return(x)
}
Exit()//*退出*//
{
getchar()
getchar()
}
int fen_Add(int q,int w,int v,int h)//*分数加法*//
{
int o,i,l,k,j
o=w*h
i=q*h+w*v
l=GONGYUESHU(o,i)
k=o/l
j=i/l
printf("分数之和为%d/%d\n",j,k)
}
float Add(float a,float b)///*有理数加法*/
{
float sum
int q,w,v,h,j,x
char m
loop1:printf("******************************* 加 法 运 算 ************************************\n")
printf(" 1、整数、小数加法 2、分数加法 3、退出 \n")
printf("请选择1、2或3:")
scanf("%d",&x)
if(x!=1&&x!=2&&x!=3)printf("非法输入,请重新输入!")
switch(x)
{
case 1:
{
printf("请输入第一个数据:")
scanf("%f",&a)
printf("请输入第二个数据:")
scanf("%f",&b)
sum=a+b
printf("a+b=%f",sum)
getchar()
getchar()
break
}
case 2:
{
printf("输入第一个数的分子: ")
scanf("%d",&q)
printf("输入第一个数的分母: ")
scanf("%d",&w)
printf("输入第二个数的分子: ")
scanf("%d",&v)
printf("输入第二个数的分母: ")
scanf("%d",&h)
fen_Add(q,w,v,h)
break
}
case 3:
{
Exit()
break
}
default :
{
printf("输入有误!\n")
goto loop1
break
}
}
if(x!=3)goto loop1
}
int fen_Sub(int q,int w,int v,int h)///*分数减法*/
{
int o,i,l,k,j
o=w*h
i=q*h-w*v
l=GONGYUESHU(o,i)
k=o/l
j=i/l
printf("分数之差为%d/%d\n",j,k)
}
float Sub(float a,float b)//*有理数减法*//
{
float result
int q,w,v,h,j,x
char m
loop1:printf("******************************* 减 法 运 算 ************************************\n")
printf(" 1、整数、小数减法 2、分数减法 3、退出 \n")
printf("请选择1、2或3:")
scanf("%d",&x)
if(x!=1&&x!=2&&x!=3)printf("非法输入,请重新输入!")
switch(x)
{
case 1:
{
printf("请输入第一个数据:")
scanf("%f",&a)
printf("请输入第二个数据:")
scanf("%f",&b)
result=a-b
printf("a-b=%f",result)
getchar()
getchar()
break
}
case 2:
{
printf("输入第一个数的分子: ")
scanf("%d",&q)
printf("输入第一个数的分母: ")
scanf("%d",&w)
printf("输入第二个数的分子: ")
scanf("%d",&v)
printf("输入第二个数的分母: ")
scanf("%d",&h)
fen_Sub(q,w,v,h)
break
}
case 3:
{
Exit()
break
}
default :
{
printf("输入有误!\n")
goto loop1
break
}
}
if(x!=3)goto loop1
}
int fen_Mul(int q,int w,int v,int h)//*分数乘法*//
{
int o,i,l,k,j
o=w*h
i=q*v
l=GONGYUESHU(o,i)
k=o/l
j=i/l
printf("分数之积为%d/%d\n",j,k)
}
float Mul(float a,float b)//*有理数乘法*//
{
float result
int q,w,v,h,j,x
char m
loop1:printf("******************************* 乘 法 运 算 ************************************\n")
printf(" 1、整数/小数乘法 2、分数乘法 3、退出 \n")
printf("请选择1、2或3:")
scanf("%d",&x)
if(x!=1&&x!=2&&x!=3)printf("非法输入,请重新输入!")
switch(x)
{
case 1:
{
printf("请输入第一个数据:")
scanf("%f",&a)
printf("请输入第二个数据:")
scanf("%f",&b)
result=a*b
printf("a*b=%f",result)
getchar()
getchar()
break
}
case 2:
{
printf("输入第一个数的分子: ")
scanf("%d",&q)
printf("输入第一个数的分母: ")
scanf("%d",&w)
printf("输入第二个数的分子: ")
scanf("%d",&v)
printf("输入第二个数的分母: ")
scanf("%d",&h)
fen_Mul(q,w,v,h)
break
}
case 3:
{
Exit()
break
}
default :
{
printf("输入有误!\n")
goto loop1
break
}
}
if(x!=3)goto loop1
}
int fen_Div(int q,int w,int v,int h)//*分数除法*//
{
int o,i,l,k,j
o=w*v
i=q*h
l=GONGYUESHU(o,i)
k=o/l
j=i/l
printf("分数之积为%d/%d\n",j,k)
}
float Div(float a,float b)///*有理数除法*/
{
float result
int q,w,v,h,j,x
char m
loop1:printf("******************************* 除 法 运 算 ************************************\n")
printf(" 1、整数/小数除法 2、分数除法 3、退出 \n")
printf("请选择1、2或3:")
scanf("%d",&x)
if(x!=1&&x!=2&&x!=3)printf("非法输入,请重新输入!")
switch(x)
{
case 1:
{
printf("请输入第一个数据:")
scanf("%f",&a)
printf("请输入第二个数据:")
scanf("%f",&b)
result=a/b
printf("a/b=%f",result)
getchar()
getchar()
break
}
case 2:
{
printf("输入第一个数的分子: ")
scanf("%d",&q)
printf("输入第一个数的分母: ")
scanf("%d",&w)
printf("输入第二个数的分子: ")
scanf("%d",&v)
printf("输入第二个数的分母: ")
scanf("%d",&h)
fen_Div(q,w,v,h)
break
}
case 3:
{
Exit()
break
}
default :
{
printf("输入有误!\n")
goto loop1
break
}
}
if(x!=3)goto loop1
}
float feng(float z)//*求分子分母运算*//
{
int f,k,j,x
float elem=1000000
loop1:printf("***************************** 求 分 子 分 母 运 算 *****************************\n")
printf(" 1、输入数据2、退出 \n")
printf("请选择1或2:")
scanf("%d",&x)
if(x!=1&&x!=2)printf("非法输入,请重新输入!")
if(x==1)
{
printf("请输入一个有理数:")
scanf("%f",&z)
z=z*elem
f=GONGYUESHU(z,elem)
j=elem/f
k=(int)z/f
printf("分子是%d,分母是%d\n",k,j)
goto loop1
}
if(x==2)Exit()
}
main()//*主程序*//
{
int x
float a,b,z
printf("\n**************************** 有 理 数 四 则 运 算 ******************************\n")
printf("1、加法运算 2、减法运算\n")
printf("3、乘法运算 4、除法运算\n")
printf("5、求分子分母运算6、退出\n")
loop3:printf("请选择运算类型:")
scanf("%d",&x)
printf("\n")
switch(x)
{
case 1:
{
Add(a,b)
break
}
case 2:
{
Sub(a,b)
break
}
case 3:
{
Mul(a,b)
break
}
case 4:
{
Div(a,b)
break
}
case 5:
{
feng(z)
break
}
case 6:
{
Exit()
break
}
default :
{
printf("输入有误!请重新选择:\n")
goto loop3
break
}
}
}