c语言编程求圆的面积和周长

 我来答
百度网友f27200e
2019-10-13 · TA获得超过2.6万个赞
知道小有建树答主
回答量:390
采纳率:100%
帮助的人:6.2万
展开全部

C#程序:

#define n 3.1415926#include<stdio.h>void main(){    double s,l,r;    scanf("%lf",&r);    s=n*r*r;    l=2*n*r;    printf("s=%lf\n l=%lf\n",s,l);  //float 对应%f  double对应 %lf}

拓展资料

求图像的周长

描述:

给一个用 . 和X表示的图形,图形在上、下、左、右、左上、左下、右上、右下8个方向都被看作是连通的,并且图像中间不会出现空洞,求这个图形的边长。

输入:

首先给出m、n、x、y四个正整数,下面给出m×n的图形,x、y表示点击的位置,全0表示结束。

输出:

点击的图形的周长。

输入样例

2 2 2 2 XX XX 6 4 2 3 .XXX .XXX .XXX ...X ..X. X... 0 0 0 0

输出样例:

#include<stdio.h> 

void length(); 

void search(int x,int y); 

int m,n,x,y,q=0,k=0; char 

a[100][100]; int  

b[100][100];//该数组用来存取与给定点有关的位置的坐标 

int  l[8]={1,-1,0,0,1,1,-1,-1},h

[8]={0,0,-1,1,1,-1,1,-1};//两数组分别表示八个方向的横纵坐标位移,用于递归时,对八个方向的讨论 

int main() { int i,j; char d[100][100]; while(1) { k=0; scanf

("%d%d%d%d",&m,&n,&x,&y); if

(m==0&&n==0)return0; 

scanf("\n"); for(i=1;i<=m;i++) { for(j=1;j<=n+1;j++) 

{ scanf("%c",&d[i][j]); b[i][j]=0;//每次输入时都要对数组初始化,避免上一组数据的影响 

if(d[i][j]!='\n')a[i][j]=d[i][j]; } } if(a[x][y]=='.')//若点击的点不是X,则周长为零 { printf("0\n"); } else {  b[x][y]=1;  //该点处为X,对应数组元素赋值为一 search(x,y); 

length();    

}    

} void search (int x,int y) 

{     int i,row,col;     

for(i=0;i<8;i++)     

{     

row=l[i]+x;     

col=h[i]+y;     

if(row>m||col>n||row<1||col<1)

continue;//若数组越界,跳过     

else if(b[row][col]==1)continue;//若之前已给该位置赋值为一,则跳过,避免递归陷入死循环 

else if(a[row][col]=='X') { b[row][col]=1;////为该点处数组元素赋值为1    

search(row,col);    

}     

}

} void length()//要计算图形周长面积,只需数一下每一个X周围有几个.即可或者当X处于边界时,周长+1 { int c=0; for(int i=1;i<=m;i++) 

for(int j=1;j<=n;j++) { if(b[i][j]==1) 

{    

if(i-1<1||a[i-1][j]=='.')c++;    if(i+1>m||a[i+1][j]=='.')c++;   

if(j+1>n||a[i][j+1]=='.')c++;    

if(j-1<1||a[i][j-1]=='.')c++; }  } } printf("%d\n",c); }

象广英仉雁
2019-10-19 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:34%
帮助的人:1097万
展开全部
#include
"stdio.h"
const
double
PI=3.1415926;
double
area(double
r)
{

return
PI*r*r;
}
double
circum(double
r)
{

return
2*PI*r;
}
void
main()
{

double
r;

printf("请输入圆的半径:\n");

scanf("%lf",&r);
笭尝蒂妒郦德垫泉叮沪
printf("圆的面积为:%lf\n",area(r));

printf("圆的周长为:%lf\n",circum(r));

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式