일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 초대장
- 니돈내먹
- 유니옥션
- code .
- visual studio code
- Path Alias
- react native #gradle
- Emmet
- currentTimeMillis
- 프리티어
- code 설치
- eslint-import-resolver-typescript
- 티스토리 초대장/ 티스토리초대
- visual studio code cli
- gitlab 연동
- GitLab Mirroring
- 실행시간 측정
- 프레시업 #풀무원 #하루한병 #건강만들기 #풀무원 녹즙
- code 세팅
- 네이버 클라우드 플랫폼
- 음료같은녹즙
- 티스토리초대
- 티스토리 초대장
- React Native
- settings sync
- GitHub Mirroring
- GitLab미러링
- webstorm
- '티스토리 초대장/ 티스토리초대'
- GitHub 미러링
- Today
- Total
방치하기
라스트 노드 본문
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct listNode *node_p;
struct listNode {
char name[5];
node_p link;
};
void printList(node_p L)
{
node_p p;
printf("\n(");
p = L;
while (p != NULL) {
printf("%s", p->name);
p = p->link;
if (p != NULL) printf(", ");
}
printf(")\n");
}
node_p addLastNode(node_p L, char *x)
{
node_p newNode, p;
newNode = (node_p)malloc(sizeof(struct listNode));
strcpy(newNode->name, x);
newNode->link = NULL;
if ( L == NULL )
{
L = newNode;
return L;
}
p = L;
while ( p->link != NULL)
{
p = p->link;
}
p->link = newNode;
return L;
}
node_p reverse(node_p L)
{
node_p p, q, r;
p = L;
q = NULL;
while ( p != NULL )
{
r = q;
q = p;
p = p->link;
q->link = r;
}
L = q;
return L;
}
void main()
{
node_p L = NULL;
char temp[5];
printf("마지막에 노드로 삽입할 노드 (종료시는 xxx) : ");
scanf("%s", temp);
while (strcmp(temp, "xxx")) {
L = addLastNode(L, temp);
printf("마지막에 노드로 삽입할 노드 (종료시는 xxx) : ");
scanf("%s", temp);
}
L = reverse(L);
printList(L);
}
'프로그래밍 > C & C++' 카테고리의 다른 글
c++ 소멸자 , 슈퍼클래스 생성자 설정 . (0) | 2009.08.21 |
---|---|
C++ 클래스 생성 , 오버라이딩 , 함수선언과 내용 나누기 (0) | 2009.08.20 |
c++ 클래스 . 함수선언과 내용 나누기 (0) | 2009.08.20 |