第6回課題の解答例

課題1

#include <stdio.h>

int main()
{
  char x[1000], y[1000];
  int i;
  printf("x? ");
  scanf("%s", x);
  printf("y? ");
  scanf("%s", y);
  i=0;
  while (x[i]==y[i] && x[i]!='\0')
  {
    i++;
  }
  if (x[i]<y[i])
  {
    printf("x<y\n");
  }
  else if (x[i]>y[i])
  {
    printf("x>y\n");
  }
  else
  {
    printf("x=y\n");
  }
  
  return 0;
}

課題2

#include <stdio.h>

#define N 5

int main()
{
  float a[N];
  int i,j,k;
  float t;

  for (i=0; i<N; i++)
  {
    scanf("%f", &a[i]);
  }

  for (i=N-1; i>=1; i--)
  {
    printf("%d: ", i);
    for (k=0; k<N; k++)
    {
      printf("%f ", a[k]);
    }
    printf("\n");

    for (j=1; j<=i; j++)
    {
      if (a[j-1]<a[j])
      {
        t=a[j-1]; a[j-1]=a[j]; a[j]=t;
      }
    }
  }

  for (i=0; i<N; i++)
  {
    printf("%f ", a[i]);
  }
  printf("\n");
  
  return 0;
}

Updated: