结构体类型数据作为函数参数有什么用吗?我认为没必要啊,这道题怎么办?

 

结构体类型作为参数,才能告诉函数圆的中心点和半径啊。代码如下:如有帮助,请采纳一下,谢谢。

#include <stdio.h>
#include <math.h>
struct POINT
{
	float x;
	float y;
};
struct CIRCLE
{
	float r;
	struct POINT center;
};

int HavingOrigin(struct CIRCLE c)
{
	float s;
	s = sqrt(c.center.x *c.center.x + c.center.y * c.center.y);
	
	if (s <= c.r)
	{
		return 1;
	}
	return 0;

}

int main()
{
	int res ;
	struct CIRCLE cir;
	printf("请输入X,Y,R:");
	scanf("%f %f %f",&cir.center.x,&cir.center.y,&cir.r);
	res = HavingOrigin(cir);
	if(res == 1)
		printf("Having Origin.\n");
	else
		printf("Not Having Origin.");
	//getchar();
	//getchar();
	return 0;
}

还有就是你图片最下面的Avg=3.000是干啥的

结构体可以让代码简单明了一些,作为入参可以以一个结构体变量,同时传入三个参数,并且表明这三个参数是有关联性的,都是一个圆的相关参数。其实你同时传入xyr,三个参数也可以啦