현재 위치 - 회사기업대전 - 엔터프라이즈 전체 - C 언어 학생 정보 관리 시스템 코드

C 언어 학생 정보 관리 시스템 코드

코드는 다음과 같습니다.

# include & ltstdio.h & gt

# include & ltmalloc.h & gt

# include & ltstdlib.h & gt

# include & ltstring.h & gt

# include & ltconio.h & gt

Typedef 구조 검사//후보자 정보 구조

{? Char exampno [20]; //수증번호

문자 이름 [10]; //이름

Charsex [4]; //성별

나이가 어리다 //나이

Char examtype [10]; //응시과목

} ElemType

Typedef 구조 노드//연결된 목록 노드를 정의합니다.

{

요소 유형 데이터 //데이터 필드

구조 노드 * next// 포인터 필드

} 노드, * 목록, * 위치;

Listmake _ empty (목록 l); //선행 노드가 있는 빈 테이블을 작성합니다.

Int 는 _ empty (목록 l); //연결된 목록이 비어 있는지 테스트합니다.

Int 는 _last (위치 p, 목록 l) 입니다. //현재 위치가 바닥글인지 테스트합니다.

Positionmake _ node (위치 p, int n); //노드를 만들고 후보자 정보를 입력하십시오.

Void put_information (위치 p); //후보자에 대한 정보를 출력하시겠습니까?

Void put_name_information (목록 l); //이름이 xx 인 후보자 정보를 출력합니다.

Int put_pos_information (위치 p); //이 주소에 후보자 정보를 출력합니다.

Void link_to_tail (목록 l, 위치 p); //바닥글에 노드 연결

Intci culation _ make (); //루핑하여 수험생 정보를 만듭니다.

Intjudge _ put _ all (); //모든 후보자에 대한 정보 출력 여부

Voidput _ all (목록 l); //모든 후보자에 대한 정보를 출력합니다.

위치 찾기 (목록 l); //xx 라는 첫 번째 요소를 찾아 위치를 반환합니다.

위치 find_previous (목록 l); //첫 번째 이름이 xx 인 요소를 찾아 바로 앞 위치를 반환합니다.

//intjudge _ delete _ val (); //후보자 데이터 삭제 여부를 묻습니다.

Intdelete _ val (목록 l); //지정된 후보자에 대한 정보를 삭제하고 출력합니다.

Void 메뉴 (목록 l); //메뉴 기능

목록 l;

//위치 p;

(Internationalorganizations 와 동일) 국제기구

메인 (void)?

{

List L = NULL// 헤드 노드 포인터 정의

위치 p = null; //양식 작업 포인터 정의

L = make _ empty (l); //빈 테이블 만들기

Printf ("\ t \ t \ t \ t \ t \ \ \ \ n 후보자 등록 관리 절차 \ n \ t \ t-.

메뉴 (왼쪽);

0 을 반환합니다

}

//선행 노드가 있는 빈 테이블을 작성합니다.

카탈로그

Make_empty (목록 l)

{

L = (list) malloc (sizeof (node));

If(NULL == L)

{

Printf ("메모리 할당 실패");

종료 (1);

}

L-> Next = NULL

//printf ("빈 테이블이 성공적으로 만들어졌습니다. \ n ");

L 을 반환합니다

}

//노드를 만들고 후보자 정보를 입력하십시오.

위치

Make_node (위치 p, 정수 n)

{

(n) //n 이 1 이면 노드를 만들고 입력하고 n 이 0 이면 노드를 수정합니다.

{

P = (위치) malloc (sizeof (노드));

P->; Next = NULL

}

Printf ("수험생의 수험증 번호 입력:");

가져오기 (p-> Data.examno);

Printf ("후보자 이름 입력:");

가져오기 (p-> Data.name);

하다

{

Printf ("수험생 성별을 입력해주세요." 남자 "나" 여자 ":);

가져오기 (p-> Data.sex);

}

그리고 (0! = strcmp (p-> Data.sex, "남자")&; & amp0! = strcmp (p-> Data.sex, "여자"); //성별이 틀렸는지 판단하다.

Printf ("구직자의 나이를 입력하십시오:");

Scanf("%hd ",& ampp->; Data.age);

Getchar (); -응? //이 문장을 삭제하면 다음 응용 프로그램 범주를 구현할 수 없습니다.

/* 아래의 do while 은 응용 프로그램 범주가 잘못 입력되었는지 여부를 결정하는 데 사용됩니다 */

하다

{

Printf ("등록 범주를 입력하십시오." 수학 "또는" 영어 "또는" 데이터 구조 ":);

가져오기 (p-> Data.examtype);

}

그리고 (0! = strcmp ("영어", p-> Data.examtype) & & amp0! = strcmp ("수학", p-> Data.examtype) & & amp0! = strcmp ("데이터 구조", p-> Data.examtype));

다음 경우 (n)

{

Printf ("등록 성공 \ n");

}

기타

{

Printf ("수정 성공 \ n");

}

P 를 반환합니다

}

//사전 삽입 방법;

비어 있습니다

Link_to_tail (목록 l, 위치 p)

{

P->; Next = L-& gt;; 다음으로,

L-> Next = p;;

}

//xx 라는 첫 번째 요소를 찾아 위치를 반환합니다.

위치

찾기 (목록 l)

{

위치 p = L-& gt;; 다음으로,

문자 이름 [10];

Printf ("찾으려는 후보자의 이름을 입력하십시오:");

가져오기 (이름);

그리고 (p! = NULL & amp& amp0! = strcmp (p-> Data.name, name))

{

P = p-& gt;; 다음으로,

}

P 를 반환합니다

}

//연결된 목록이 비어 있는지 테스트합니다.

(Internationalorganizations 와 동일) 국제기구

Is_empty (목록 l)

{

L-> 를 반환합니다 Next = = NULL

}

//현재 위치가 바닥글인지 테스트합니다.

(Internationalorganizations 와 동일) 국제기구

Is_last (위치 p, 목록 l)

{

P-> 를 반환합니다 Next = = NULL

}

//이름이 xx 인 후보자 정보를 출력합니다.

비어 있습니다

이름 정보 업로드 (목록 l)

{

위치 p = 찾기 (l);

만약 (p! = 비어 있음)

{

Printf ("찾으시는 후보 정보: \ n");

Printf ("입학 번호:% s \ t 이름:% s \ t 성별:% s \ t 성별:% HD \ 주제: %s\n\n", p-> Data.examno, p-> Data.name, p-> Data.sex, p-> Data.age, p-> Data.examtype);

}

기타

{

Printf ("찾고있는 학생이 없습니다. \ n ");

}

}

//루핑하여 수험생 정보를 만듭니다.

(Internationalorganizations 와 동일) 국제기구

Ciculation_make ()

{

Int n = 2;;

하다

{

Printf ("후보자 정보 생성을 계속하시겠습니까? "1" 을 입력해주세요. 없음 "0":);

Scanf("%d ",& ampn);

Getchar ();

}

그리고 (n! = 0 & amp& ampn! = 1);

N 을 반환합니다

}

//수험생 정보를 출력하시겠습니까?

비어 있습니다

Put_information (위치 p)

{

Int n = 2;;

하다

{

Printf ("후보자에 대한 정보를 출력하시겠습니까? "1" 을 입력해주세요. 없음 "0":);

Scanf("%d ",& ampn);

Getchar ();

}

그리고 (n! = 0 & amp& ampn! = 1);

다음 경우 (n)

{

Printf ("입학 번호:% s \ t 이름:% s \ t 성별:% s \ t 주제:% HD \ 주제: %s\n", p-> Data.examno, p-> Data.name, p-> Data.sex, p-> Data.age, p-> Data.examtype);

}

}

//모든 후보자에 대한 정보 출력 여부

(Internationalorganizations 와 동일) 국제기구

Judge_put_all ()

{

Int n = 2;;

하다

{

Printf ("모든 후보자에 대한 정보를 출력하시겠습니까? "1" 을 입력해주세요. 없음 "0":);

Scanf("%d ",& ampn);

Getchar ();

}

그리고 (n! = 0 & amp& ampn! = 1);

N 을 반환합니다

}

//모든 후보자에 대한 정보를 출력합니다.

비어 있습니다

Put_all (목록 l)

{

만약 (l-> Next == NULL)

{

Printf ("지금 신청할 후보자가 없습니다! \ n ");

}

기타

{

위치 p = L-& gt;; 다음으로,

그리고 (p! = 비어 있음)

{

Printf ("입학 번호:% s \ t 이름:% s \ t 성별:% s \ t 주제:% HD \ 주제: %s\n", p-> Data.examno, p-> Data.name, p-> Data.sex, p-> Data.age, p-> Data.examtype);

P = p-& gt;; 다음으로,

}

}

//getchar ();

}

//후보자 데이터 삭제 여부를 묻습니다.

(Internationalorganizations 와 동일) 국제기구

판사 삭제 값 ()

{

Int n = 2;;

하다

{

Printf ("후보자의 데이터를 삭제하시겠습니까? 예, "0" 대신 "1" 을 입력하십시오.);

Scanf("%d ",& ampn);

Getchar ();

}

그리고 (n! = 0 & amp& ampn! = 1);

N 을 반환합니다

}

//첫 번째 이름이 xx 인 요소를 찾아 바로 앞 위치를 반환합니다.

위치

Find_previous (목록 l)

{

위치 q = L;;

위치 p = L-& gt;; 다음으로,

문자 이름 [10];

Printf ("찾으려는 후보자의 이름을 입력하십시오:");

가져오기 (이름);

그리고 (p! = NULL & amp& amp0! = strcmp (p-> Data.name, name))

{

Q = p;;

P = p-& gt;; 다음으로,

}

만약 (p! = 비어 있음)

{

Q 를 반환합니다

}

기타

P 를 반환합니다

}

//지정된 후보자에 대한 정보를 삭제하고 출력합니다.

(Internationalorganizations 와 동일) 국제기구

값 삭제 (목록 l)

{

Int n = 2;;

위치 q = null;

위치 p = find _ previous (l); //후보자의 정보 주소를 반환합니다.

If( NULL == p)

{

Printf ("삭제할 후보자가 없습니다. \ n");

0 을 반환합니다

}

기타

{

Q = p->; 다음으로,

P->; Next = q-& gt;; 다음으로,

Printf ("삭제에 성공했습니다. \ n 삭제된 후보자 정보는 다음과 같습니다. \ n”);;

Printf ("입학 번호:% s \ t 이름:% s \ t 성별:% s \ t 주제:% HD \ 주제: %s\n", q-> Data.examno, q-> Data.name, q-> Data.sex, q-> Data.age, q-> Data.examtype);

무료 (q);

1;

}

}

//해당 주소에 대한 검사 정보를 출력합니다.

(Internationalorganizations 와 동일) 국제기구

배치 위치 정보 (위치 p)

{

만약 (p! = 비어 있음)

{

Printf ("입학 번호:% s \ t 이름:% s \ t 성별:% s \ t 성별:% HD \ 주제: %s\n\n", p-> Data.examno, p-> Data.name, p-> Data.sex, p-> Data.age, p-> Data.examtype);

1;

}

기타

{

Printf ("당신이 찾고 있는 학생이 없습니다." " );

0 을 반환합니다

}

}

//메뉴 기능

비어 있습니다

메뉴 (목록 l)

{

Printf("\t\t\t? A. 수험생 입학 \ n ");

Printf("\t\t\t? B. 수험생 정보 조회 \ n ");

Printf("\t\t\t? C. 후보자 정보 수정 \ n ");

Printf("\t\t\t? D. 후보자 정보 삭제 \ n”);;

Printf("\t\t\t? E. 모든 후보자에 대한 정보 \ n ");

Printf("\t\t\t? F. 프로그램 작성자 정보 \ n ");

Printf("\t\t\t? G? 프로그램을 종료합니다. \ n ");

Char n =' h

그리고 (n! = 'g')

{

뭐해? //입력이 올바른지 확인합니다.

{

Printf ("문자 번호로 기능 선택:");

N = getchar ();

Getchar ();

Putchar ('\ n');

(n<A' | | n & gtg') 인 경우

{

Printf ("잘못된 문자 번호. \ n ");

}

}

While(n & lt;; A' | | n>G');

스위치 (n)

{

사례 "a":

{

Printf ("등록된 수험생에 대한 정보를 입력하십시오. \ n");

위치 p = make_node( p,1); //새 노드 만들기

Link_to_tail( L, p); //테이블에 새 노드 연결

Put _ information (p); -응? //후보자에 대한 정보를 출력하시겠습니까?

Putchar ('\ n');

}

깨뜨리다

사례' b':

{

Put _ name _ information (l);

Putchar ('\ n');

}

깨뜨리다

사례' c':

{

Int n = 0;;

위치 p = null;

Printf ("수정 중입니다. \ n ");

P = 찾기 (l);

N = put _ pos _ information (p);

다음 경우 (n)

{

Make_node( p, 0);

Put _ information (p); -응? //후보자에 대한 정보를 출력하시겠습니까?

}

Putchar ('\ n');

}

깨뜨리다

사례' d':

{

Printf ("삭제하는 중입니다. \ n ");

Delete _ val (l);

Putchar ('\ n');

}

깨뜨리다

사례' e':

{

Put _ all (l);

Putchar ('\ n');

}

깨뜨리다

사례' f':

{

Printf ("? 수정 날짜 버전 번호? 수정한 사람? 내용 수정 \ n ");

Printf ("-\ n");

Printf ("? 20 18.6. 19 v2.0? 첸 baichuan 주 메뉴 추가 \ n”);;

Printf ("? 20 18.6.23 v3.0? 천백천? 파일 생성 기능 추가 \ n \ n ");

Printf ("버전 번호는 v2.0 \ n");

Putchar ('\ n');

}

깨뜨리다

기본값:

깨뜨리다

}

}

Printf ("사용해 주셔서 감사합니다. 즐거운 생활 되세요." " );

Getch ();

}

확장 데이터:

C 언어는 기본 개발에 널리 사용되는 범용 컴퓨터 프로그래밍 언어입니다. C 언어의 설계 목표는 낮은 수준의 메모리를 간단한 방식으로 컴파일하고 처리할 수 있는 프로그래밍 언어를 제공하고, 적은 수의 기계 코드를 생성하며, 운영 환경 지원 없이 실행할 수 있는 프로그래밍 언어를 제공하는 것입니다.

C 언어는 많은 기본 처리 기능을 제공하지만 플랫폼 간 기능은 그대로 유지됩니다. 표준 사양으로 작성된 C 언어 프로그램은 여러 컴퓨터 플랫폼에서 컴파일할 수 있으며 일부 임베디드 프로세서 (단일 칩 또는 MCU) 와 수퍼컴퓨터를 포함할 수도 있습니다.

1980 년대, 다른 개발자가 사용하는 C 언어 문법의 차이를 피하기 위해, 미국 국가표준국은 완전한 C 언어 미국 국가표준문법 (ANSI C) 을 제정하여 C 언어의 원시 표준으로 삼았다. [1]? 현재 20 1 1 1 년 2 월 8 일 국제표준화기구 (ISO) 와 국제전기위원회 (IEC) 가 발표한 표준 c/kloc-0

C 언어는 C++ 및 Java 와 같은 객체 지향 프로그래밍 언어와 달리 프로세스 지향 컴퓨터 프로그래밍 언어입니다.

컴파일러는 주로 Clang, GCC, WIN-TC, SUBLIME, MSVC, 터보 c 등입니다.

참고 자료:

바이두 백과 -C 언어

copyright 2024회사기업대전