C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[5566] Re:-배열의 제어와 strcmp함수에 대한 질문이요.-
박지훈.임프 [cbuilder] 2952 읽음    2001-02-20 03:20
전승호 님이 쓰신 글 :
:
: 요번에 제가 궁금한건 배열에 관한 것입니다.
: 문제의 정석에서는 분명 배열을 2차원 배열로 선언 해놓았
: 으나 for문등으로 제어를 할때는 이상하게 처음 배열첨자
: 만으로 제어를 하더군요.
: 즉 a[10][5]같이 선언 해놓구선
: for (i=1; i<=5; ++i) { a[i]=.....}
: 뭐 이런식으로 제어를 하더군요. 가능한건지요?
: 그리고 strcmp함수에는 배열만 가능한지요?
: 한번은 정석대로 길이가 선언된 배열을 넣었고 한번은 또
:  그냥단순 배열만 넣었습니다.
: 그랬더니 후자는 실행이 안되고 에러 메세지가 무지
: 길더군요.
: 두가지 질문좀 꼭 답해주세요.
: 그럼
:
:
:
: #include <iostream.h>
: #include <string.h>
: #include <process.h>
: void main()
: {
:     const int M=10;   //  <-- 배열의 개수를 선언
:     const int N=30;   //  <-- 배열의 길이를 선언
:     char a[N][M],w[M];  //  <---에서 그냥 a[N],W
:     int i,n,j,s;        //로만 선언 했을경우
:     //입력
:     cout << "n= ";    cin >> n;
:     for (i=0; i<n; ++i)
:     {
:     cout << "a[" << i << "]= ";
:     cin >> a[i];
:     }
:    
:     //소트
:     for (s=n-2; s>=0; --s)
:     {
:     for (j=0; j<=s; ++j)
:     {
:     if (strcmp(a[j],a[j+1])>0)
:     {
:     strcpy(w,a[j]);
:     strcpy(a[j],a[j+1]);
:     strcpy(a[j+1],w);
:     }
: //    if (a[j]>a[j+1])  //<--위의 strcpy를 실행
: //    { //시키면서 맨 위에서 요소인
: //    w=a[j];    //a배열과 w를 길이 배열이 아
: //    a[j]=a[j+1]; //닌 그냥 개수 배열로만 선언
: //    a[j+1]=w; //하면 에러가 나더군요.
: //    }
:     }
:     }
:
:     //출력
:     cout << "\n 정렬한 결과 \n";
:     for (i=0; i<n; ++i)
:     cout << "a[" << i << "]= " << a[i] << '\n';
: }


임펠리테리입니다.

C/C++에서 배열은 포인터라는 것과, 문자열은 char *라는 것을 아직 이해하지 못하신 것 같습니다. 이 두가지를 이해하셔야 보여주신 코드를 이해할 수 있을 거구요. 여기서 설명하기에는 너무 문법적인 기초개념이기 때문에 설명은 곤란하고, 제대로 된 C/C++문법서라면 어디에도 나오는 내용이므로 찾아서 보시기 바랍니다.

그럼 이만...

+ -

관련 글 리스트
5534 -배열의 제어와 strcmp함수에 대한 질문이요.- 전승호 3575 2001/02/17
5566     Re:-배열의 제어와 strcmp함수에 대한 질문이요.- 박지훈.임프 2952 2001/02/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.