C 언어 프로그래밍 예제 주제 2: 학생 성과 관리 시스템 설계 학생 성과 정보에는 학생 번호, 이름, 3개 과목 결과(수학, 영어)가 포함됩니다.
#include lt;stdio.hgt;
#include lt;stdlib.hgt;
#include lt;conio.hgt;
int INDEX[32];
//구조 변수
struct STUDENT{
int id;
int age; /p>
int 중국어, 수학, 영어
문자 이름[21]
}학생[32]
char *menu_item){
printf("gt; gt; gt; 학생 관리 시스템 lt; lt; lt; \n\n- s -\n\n", menu_item)
}
void return_confirm(void){
printf("\n돌아가려면 아무 키나 누르세요...\n");
getch() ;
}
void Student_new(void){
int n;
page_title("기본 학생 정보를 입력하세요");
for(n=0;nlt;32;n)
if(students[n].id==0) break;
printf("학 번호: ");
scanf("d", amp; 학생[n].id);
printf("이름: ");
scanf("s",amp;students[n].name);
printf("나이:");
scanf("d",amp;students[n] .age);
return_confirm();
}
int search_id(void){
int n, i; p>
p>
printf("학생 번호를 입력하세요: ")
scanf("d", amp; i)
for(n =0; nlt; n )
{
if(학생[n].id==iamp;amp; 학생[n].id!=0) p>
{
printf("학생 번호: d\n", 학생[n].id);
printf("이름: s\n", 학생 [n].name );
printf("나이: d\n", 학생[n].age)
return n;
}
printf("\n입력 오류 또는 학생 번호가 존재하지 않습니다.\n")
return -1; >}
void Student_del(void){
int n;
page_title("기본 학생 정보 취소");
if ((n=search_id ())!=-1)
학생[n].id=0;
printf("\n!학생이 로그아웃했습니다.\n");
return_confirm();
}
void Student_edit(void){
int n
page_title("기본 학생 정보 편집")
if ( (n=search_id())!=-1)
{
printf("\n새 정보를 다시 입력하세요:\n학생 ID: ");
scanf("d",amp; 학생[n].id);
printf("이름:");
scanf("s",amp;students [n].name);
printf("나이:");
scanf("d", & 학생[n].age);
}
return_confirm();
}
void Score_input(void){
int s, n, t < / p>
page_title("결과를 입력하세요");
printf("\n과목을 선택하려면 숫자키를 사용하세요\n1-중국어 2-수학 3-영어\n");
scanf("d",amp; s);
for(n=0;nlt;32;n)
{
if (students[n].id!=0)
{
printf("학생 번호: d 이름: s 학년:", Students[n].id, Students[n ].name);
scanf("d",amp;t);
스위치
{
케이스 1: 학생[n].chinese=t;break;
사례 2: 학생[n].math=t;break;
사례 3: 학생[n].english =t; 중단;
}
}
}
return_confirm()
} p>
void Score_edit(void){
int n;
page_title("점수 수정");
if((n=search_id( ))!=-1)
{
printf("중국어: d 수학: d 영어: d\n", Students[n].chinese, Students[n]. math, Students[n].english);
printf("\n점수를 다시 입력하세요:\n중국어:");
scanf("d",amp; 학생 [n].chinese);
printf("수학:");
scanf("s", & Students[n].math);
printf("영어: ");
scanf("d",amp; 학생[n
].english);
}
return_confirm()
}
void sort_it(char nn){
int n, m, p, x, t[32];
for(n=0; nlt; 32; n )
{
스위치(nn)
{
케이스 '1': t[n]=students[n].id
케이스 '2' : t[n]=students[n].chinese;
케이스 '3' : t[n]=students[n].math; 4': t[n]=students[n].english; break;
사례 '5': t[n]=students[n].chinese 학생[n].math 학생[n] .english;
}
}
for(n=0;nlt;32;n)
{ p> p>
x=0;
p=-1;
for(m=0; mlt; 32; m )
{ p>
if(t[m]gt; x)
{
x=t[m];
p=m;
p>}
}
t[p]=-1
INDEX[n]=p; >
}
}
void browser(void){
int n, x
char k; p>
sort_it('1');
while(1)
{
page_title("찾아보기");
printf( "정렬 방법을 선택하려면 숫자 키를 누르거나 돌아가려면 0을 누르세요.\n");
printf("학생 ID-1\t이름\tAge\t중국어-2\t수학-3 \t영어- 4\t총점-5\n");
for(n=0;nlt;32;n)
{
if( INDEX[n]!=-1)
{
x=INDEX[n];
printf("d\ts\t", 학생[ x] .id, 학생[x].name);
printf("d\td\t", 학생[x].age, 학생[x].chinese);
printf("d\td\t", 학생[x].math, 학생[x].english);
printf("d\n", 학생[x].chinese 학생[ x] .math Students[x].english);
}
}
k=getch();
if( klt; '6'amp;amp;kgt;'0') sort_i
t(k);
else if(k=='0') 중단
계속
}
}
void main(void){
menu: page_title("작업 메뉴")
printf("작업을 선택하려면 숫자 키를 사용하십시오.\ n\n ");
printf("1 학생 기본정보를 입력하세요\n2 학생 기본정보를 수정하세요\n");
printf("3 학생 기본정보를 로그아웃하세요 정보\n\n4 점수 입력 \n5 결과 수정\n\n");
printf("6 찾아보기...\n \n0 종료\n");
switch(getch())
{
케이스 '1' : Student_new() break;
케이스 '2' : Student_edit(); ;
사례 '3': 학생_del(); 중단;
사례 '4': 점수_입력() 중단;
사례 '5': 점수_편집 (); 중단;
케이스 '6': 브라우저(); 중단;
케이스 '0': 종료(0);
} p>
메뉴로 이동
}
일치하는지 확인하세요. C 버전을 원하시나요?