기금넷 공식사이트 - 주식 시세 - 이 C 언어 질문에 어떤 문제가 있나요?
이 C 언어 질문에 어떤 문제가 있나요?
#include "stdio.h"
#include "string.h"
void main()
{
void order(char *a,char *b) ;
char a[10][80];
char c;
int i,j;
printf("10개의 문자열을 입력하십시오:\n");
for(i=0;i<10;i++)
gets(a[i]); //매번 문자열을 입력하세요
for(i=0;i<9;i++)
for(j=i+ 1;j< 10;j++)
order(a[i],a[j]); //첫 번째 문자열부터 시작하여 다음 문자열과 하나씩 비교합니다.
printf( "정렬된 문자열은 다음과 같습니다:\n");
for(i=0;i<10;i++)
printf("%s\n" ,a[i] );
}
void order(char *a,char *b)
{
int i ,j,A, B,m,n;
int nLenEqual = 1;
char c;
A=strlen(a);
B =strlen(b);
if(A>B)
{
m=A;
n=B;
}
else
{
m=B;
n=A; p> }
//m은 긴 문자열의 길이이고, n은 짧은 문자열의 길이입니다.
for(j=0;j { if(*(a+j)>*(b+j)) //문자별로 비교 { for(i=0;i { c=*(a+i); *(a+i )= *(b+i); *(b+i)=c; } nLenEqual = 0; 중단 ; } // break; //교환 후 루프를 종료합니다. } for(i=n ;i { if(nLenEqual == 0) { if(A>B) p> { b[i]=a[i]; a[i]='\0'; } p> else { a[i]=b[i]; b[i]='\0' } } else { if(A>B) { b[i]=a[i]; a[i]='\0'; } } } a[m]=b[m]='\0'; }