8.03.2017

0803 공부

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include
<string.h>

typedef struct Account {
        char name[12], id[20], password[20];
        int accountNumber, surplus;
}account;
void Create(account* a) {
        printf("이름을 입력하시오.\n");
        scanf("%s", (*a).name);
        printf("아이디를 입력하시오.\n");
        scanf("%s", a->id);
        printf("비밀번호를 입력하시오.\n");
        scanf("%s", a->password);
        printf("계좌번호를 입력하시오.\n");
        scanf("%d", &a->accountNumber);
        printf("잔금을 입력하시오.\n");
        scanf("%d", &a->surplus);
}

void main() {
        int b = 0;
        //배열 아니면 scanf에서 주소연산자가 필요
        // ' ' : 문자

        account a;

        while(b!=3){
                printf("메뉴 // 1. 회원가입 2.로그인 3.종료");
                scanf("%d", &b);
                if (b == 1)
                        Create(&a);
                else if (b == 2) {
                        char id2[20], password2[20];
                        printf("아이디 입력");
                        scanf("%s", id2);
                        printf("비밀번호 입력");
                        scanf("%s", password2);

                         // -> : * .
                        if (!strcmp(id2, a.id) && !strcmp(password2, a.password)) { //(id2 == a->id) &&         (password2 == a->password)
                                printf("이름은 %s", a.name);
                                printf("계좌번호는 %d", a.accountNumber);
                                printf("잔금은 %d", a.surplus);
                        }
                }
                else if (b == 3) {
                                printf("프로그램 종료");
                }
        }

        /*
        함수의 차이점
        C언어 : 인자값이 2개면, 매개변수는 2개여야만 한다.
                  함수의 매개변수에 초기값 대입은 불가능하다.
        C++ : 인자값이 2개일 때, 매개변수가 여러 개 여도 상관없다.
                  단, 매개 변수에 초기값이 되어야만 한다.
                  인자값 보다는 매개변수가 많아야 한다.


        만약, 보내주는 값이 있을 경우 그 값으로 대체한다.
        */

}

댓글 없음:

댓글 쓰기