본문 바로가기

분류 전체보기93

포인터 실습 1 #include int main() { int num = 10; int *p; // * :주소를 값으로 하는 자료 , 정수형 포인터 선언 p = # // 포인터의 num 변수의 주소값을 가리킴 printf("%d\n", &num); // 포인터가 가르키는 변수의 주소 출력 printf("%d\n", p); // 포인터가 가르키는 변수의 주소 출력 printf("%d\n", *p); // 포인터가 가르키는 변수의 값 출력 printf("%d\n", &p); // 포인터가 가르키는 변수의 주소 출력 } ~프로그램에서 메모리를 접근하고 주소를 다루기 위해 사용 ~주소 연산자 & -v가 변수라면, &v는 이 변수의 값이 저장된 메모리 위치 또는 주소임 ~포인터 변수 -값으로 주소를 갖는 변수 -선언 방법.. 2019. 5. 17.
리스트 //20904 김채원 단순연결리스트 #include #include typedef int element; typedef struct ListNode{ element data; struct ListNode *link; }ListNode; void error(char *message){ //오류처리함수 fprintf(stderr, "%s\n", message); exit(1); } void insert_node(ListNode **phead, ListNode *p/*null 받음*/, ListNode *new_node){ //node 삽입 함수 //**:이중 포인터 (주소의 값을 값으로 하는 연결리스트) if(*phead == NULL){ //연결된게 하나도 없다 new_node -> link = NULL;.. 2019. 5. 17.
숫자 맞히기 게임 #include //랜덤 함수를 사용하기 위해 필요한 stlib.h 라이브러리 #include //시간 함수를 사용하기 위해 필요한 time.h 라이브러리 #include int main() { srand(time(NULL)); //시간 함수를 이용하여 난수가 생성되도록 설정 int num1,num2,num3; num1=rand()%10; //rand() 함수의 결과는 0~32767 범위에서 값 생성 do{num2=rand()%10;}while(num2==num1); do{num3=rand()%10;}while(num3==num2||num3==num1); //printf("%d %d %d", num1, num2, num3); int cnt=0; int strike, ball; do { if(cnt>=7).. 2019. 5. 17.
#include #include #define MAX_SIZE 10 //큐를 구조체로 선언 typedef int element; typedef struct { element queue[MAX_SIZE]; int front, rear; } QueueType; //포화상태, 공백상테 error 처리 void error(char *message) { // *은 문자열 fprintf(stderr,"%s\n", message); exit(1); } //초기화 함수 void init(QueueType *q) { q->front = q->rear =0; } //삽입 함수 void enqueue(QueueType *q, element item) { if ((q->rear+1)%MAX_SIZE == q->front) e.. 2019. 5. 14.
중첩반복을 이용한 숫자 삼각형 출력 //중첩반복을 이용한 숫자 삼각형 출력 #include int n; int main() { printf("숫자를 입력하세요:"); scanf("%d", &n); for(int i=1; i 2019. 4. 26.