#1
by ああいい » 8年前
#include <stdio.h>
#include <math.h>
#define DIST(x,y) (sqrt(x*x+y*y))
// DIST(x,y)のマクロ定義をここに追加
void swap(int d,int d[j]);
// 関数swapのプロトタイプ宣言をここに追加
main(){
int i, j;
int d[5][2] = {{1,8}, {2,6}, {5,3}, {4,2}, {8,9}};
fprintf(stderr, "Before sorting:\n");
for (i = 0; i < 5; i++)
printf("(%d,%d) dist=%f\n", d[0], d[1], DIST(d[0], d[1]));
for (i = 0; i < 4; i++)
for (j = i + 1; j < 5; j++){
if (DIST(d[0], d[1]) > DIST(d[j][0], d[j][1]))
swap(d, d[j]);
}
printf("\n");
fprintf(stderr, "After sorting:\n");
for (i = 0; i < 5; i++)
printf("(%d,%d) dist=%f\n", d[0], d[1], DIST(d[i][0], d[i][1]));
}
// 関数swapの定義をここへ追加
void swap(int d[i],int d[i]){
int temp,i,j;
temp=i;
i=j;
j=temp;
}
#include <stdio.h>
#include <math.h>
#define DIST(x,y) (sqrt(x*x+y*y))
// DIST(x,y)のマクロ定義をここに追加
void swap(int d[i],int d[j]);
// 関数swapのプロトタイプ宣言をここに追加
main(){
int i, j;
int d[5][2] = {{1,8}, {2,6}, {5,3}, {4,2}, {8,9}};
fprintf(stderr, "Before sorting:\n");
for (i = 0; i < 5; i++)
printf("(%d,%d) dist=%f\n", d[i][0], d[i][1], DIST(d[i][0], d[i][1]));
for (i = 0; i < 4; i++)
for (j = i + 1; j < 5; j++){
if (DIST(d[i][0], d[i][1]) > DIST(d[j][0], d[j][1]))
swap(d[i], d[j]);
}
printf("\n");
fprintf(stderr, "After sorting:\n");
for (i = 0; i < 5; i++)
printf("(%d,%d) dist=%f\n", d[i][0], d[i][1], DIST(d[i][0], d[i][1]));
}
// 関数swapの定義をここへ追加
void swap(int d[i],int d[i]){
int temp,i,j;
temp=i;
i=j;
j=temp;
}