看了别人写的才知道是求相同斜率的题。只要把斜率相同的做标记即可。
#include <stdio.h>
int main () {
int n,s,i,j,k;
double x[101];
double y[101];
scanf("%d",&n);
while(n!=0){
scanf("%d",&s);
int sig=0;
for(int i=0;i<s;i++){
scanf("%lf%lf",x+i,y+i); //一直出错的地方 错:&x+i,&j+i 关于c的小知识,并不牢靠,看来还是练习的少
}
for( i=0;i<s&&!sig;i++){
for(j=i+1;j<s&&!sig;j++){
for( k=j+1;k<s&&!sig;k++){
if((y[k]-y[j])/(x[k]-x[j])==(y[j]-y[i])/(x[j]-x[i]))
sig=1;
}
}
}
if(sig==1)printf("Yes\n");
else printf("No\n");
n--;
}
return 0;
}
scanf 输入数组
1.scanf("%d%d",&x[i],&y[i]);
2.scanf("%d%d",x+i,y+i);
有这两种方法!!记住!!