이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 13036|회답: 0

[C] 두 자리 문자 배열의 입력은 출력이 이루어질 때 정렬됩니다

[링크 복사]
게시됨 2015. 12. 14. 오후 3:27:26 | | |

#include "stdafx.h"
#include "stdio.h"
공out_student(char (*p)[20], int n); char (*p)[20]Data 포인터 (행 포인터)
공sort_student(char (*p)[20], int n);
int main()
{char 학생들[3][20];
지능 I;
for(i=0; i<3; i++)
scanf("%s",*(students+i)); 참가
out_student(학생 3명);
sort_student(학생 3명);
out_student(학생 3명);
0을 반환;
}
void out_student(char (*p)[20], int n) //(*p) 라인 주소
{int i;
for(i=0; i<n; i++)
printf("%s",*(p+i));
printf("\n");
}
//选择排序
공허 sort_student(char (*p)[20],int n)
{int i,j;
for(i=0; i<n-1; i++)
{int pos=i;
for(j=i+1; J<n; j++)
    {if(strcmp(*(p+j), *(p+pos)<0)) //strcmp(*(p+j),*(p+pos)<0) *(p+j)는 행 주소가 될 수 없으며, 반드시 1차 배열의 첫 번째 주소인 열 주소여야 합니다
{pos=j; }

    }
}
    if(pos!=i)
    {char str[20]={'\0'};
    strcpy(str,*(p+pos));  *(p+pos) pos 라인의 첫 번째 열, 즉 스왑 문자열의 주소
    strcpy(*(p+pos),*(p+i));
    strcpy(*(p+i),str);
   
    }
}
//总结:
/*二维数组表示(行地址,列地址)
포인터는 배열을 통과합니다
2D 문자 배열(행 주소, 열 주소) */






이전의:C#은 IP 주소를 생성할 IP 세그먼트를 지정합니다
다음:크로스 스레드 연산이 유효하지 않음: 제어 'txtresult'가 threa...
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com