C语言,给定一个矩形和一个点,判断这个点与矩形的位置关系(顶点 边 矩形内外),用函数形式并返回

C语言,给定一个矩形和一个点,判断这个点与矩形的位置关系(顶点 边 矩形内外),用函数形式并返回,第1张

#include <stdio.h>

int check(float a,float b,float 段物c,float d,float x,float y)

{

if((x<a)||(x>a+c)||(y<b)||(y>a+c+d))

return 1

else if((x>a)&&(x<a+c)&&(y>b)&&(y<a+c+d))

return 困橡2

else return 0

}

void main()

{

float a,b,c,d,x,y

int p=0

printf("请输入矩形的左下角点坐标和矩形的长、宽:  ")

scanf("%f,%f,%f,%f",&a,&b,&c,&d)

printf("请输入点的坐标:  ")

scanf("%f,%f",&x,&y)

p=check(a,b,c,d,x,y)

switch(p)

{

case 1: printf("点在矩形外边。")break

case 2: printf("点在矩形内部汪燃旁。")break

default: printf("点在矩形的边上。")break

}

}

运行示例:

每行起始和结束字符均是你的第3个宏散参数

矩形第1行和最后一行中间型绝亩是第3个参数,其他行根据第4个参数决定是空格或者第3个参数

程序可以这样写:

...

for ( m=0m<am++ )

{

printf("%c",c)//第1列

if ( m==0 || m==a-1 ) //第1行和最后一行

for ( n=1n<b-1n++ ) printf("%c",c)

else //中间的行

for ( n=1n<b-1n++ ) if ( d==0 ) printf(" ")else printf("%c",c)//空心或否

printf("%c\n",c)//最后1列

}

或者可以写:

for ( m=0m<am++ )

{

printf("%c",c)//第1列

if ( m==0 || m==a-1 || d!=0) for ( n=1n<b-1n++ ) printf("%c",c)

else for ( n=1n<b-1n++ ) printf(" ")

printf("%c\n"卜森,c)//最后1列

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12286457.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存