1、問題的話還是條件判斷語句應該用“()”括起來
2、多種條件的話應該用
if (...)
{...}
else if(...)
{...}
......
else
{...}
否則會出現後面的else找不到匹配的if。
3、sqrt函數好像沒有int型的重載吧,我就用double了。
4、妳這個程序的對圓的位置的劃分有問題,相交、重合、相離的關系要理清。
應該是外離、內含、內切、外切、相交吧,重合屬於內含,不過我分開寫。
5、最後我要說,這是c,不是C++,呵呵。
#include<stdio.h>
#include<math.h>
void main()
{
double a,b,c,d,R1,R2,R;
printf("Please input 兩圓坐標及兩圓半徑\n");
scanf("%d,%d,%d,%d,%d,%d",a,b,c,d,R1,R2);
R=sqrt((a-c)*(a-c)+(b-d)*(b-d))
if (R=R1+R2)
printf("兩圓外切\n".);
else if(R=abs(R1-R2))
printf("兩圓內切\n".);
else if(R=0)
printf("兩圓重合\n".);
else if(R<R1+R2&&R>abs(R1-R2))
printf("兩圓相交\n".);
else if(R>R1+R2)
printf("兩圓外離\n".);
else
printf("兩圓內含\n"); //本例中重合與壹般內含分開
}