현재 위치 - 인적 자원 플랫폼망 - 미니프로그램 자료 - 데이터 처리 클래스를 위한 애플릿 필요
데이터 처리 클래스를 위한 애플릿 필요
/*Mine**

# include & ltiostream.h & gt

# include & ltstdio.h & gt

# include & ltstring.h & gt

# include & ltfstream.h & gt

# include & ltstdlib.h & gt

int cs //define global variable cs

class student

{

Private: //define private member

int num

character name[10];

char addr[10];

char age[10];

Public:

void Insert();

void Show();

void Find();

void Del();

void Sort();

void Save();

void Read();

void save as();

fstream iof

};

Student add[100];

Void student::Insert() // 입력할 객체 추가하기 객체를 삽입합니다.

{

char ready = ' y

cout & lt& lt "이전에 입력한 정보를 읽으시겠습니까? [예/아니요]" & lt; & ltendl

CIN & gt; & gt ready;

if(ready=='Y' | ready=='y ')

{ Read(); }

cout & lt& lt학생 정보(학생번호, 이름, 출신지 및 생년월일)를 입력하세요." < & & ltendl

for(int I = 0; I& lt100;i++)

{

cout & lt& lt "학생번호 입력:";

CIN & gt; & gt add [i]. num

cout & lt& lt "이름 입력:";

CIN & gt; & gt 추가 [i]. 이름;

cout & lt& lt "출신지 입력:";

CIN & gt; & gt 추가 [i]. addr

cout & lt& lt "생년월일 입력:";

CIN & gt; & gt 추가 [i]. 나이;

cs+= 1;

cout & lt& lt "현재,"

cout & lt& lt "계속하시겠습니까? [예/아니오]" & lt; & ltendl

CIN & gt; & gt ready;

if(ready=='N' || ready=='n ')

{

cout & lt& lt "입력하신 정보는:"

show();

브레이킹입니다;

}

}

}

Void student::Show() // 표시할 객체를 표시합니다.

{

for(int j = 0; j & ltcs; j++)

{

cout & lt& lt "학생 번호"< & lt add[j]. num & lt& lt "이름"

}

}

< /p>

Void student::Find() // 쿼리 객체를 찾습니다.

{

cout & lt& lt찾고자 하는 학생 아이디를 입력하세요:"< & lt; endl

int y;

CIN & gt; & gty;

for(int a = 0; a & ltcs; a++)

{

bool bo = true

if (add [a]. Number == y)

{

cout & lt& lt "학생 번호" < & lt add [a]. num & lt& lt "이름"

}

}

}

Void student::Del( ) //Del 객체를 삭제합니다.

{

cout & lt& lt "삭제할 학생 번호를 입력하세요:"

int y2

CIN & gt; & gty2;

for(int c = 0; c & ltcs; c++)

{

If (plus[c]. Number == y2)

{

add[c]. num = add[c+1]. num

strcpy(add[c]. Name, add[c+1]. Name);

strcpy(add [c].addr, add [c+1]. addr);

strcpy(add [c]. Age, add [c+1]. Age);

}

}

cout & lt& lt "학생 정보가 삭제되었습니다"

for(int w = 0; w & ltcs-1; w++)

{

cout & lt& lt "학생 번호가 삭제되었습니다. "< & lt add[w]. num & lt& lt "name"

}

}

//const int I2 = 3;

//Student zkk

Void student::Sort() //sort 객체를 정렬합니다.

{

cout & lt& lt 정렬 후, 우리는

int t; //교환을 위한 중간 변수 t

char ch 1[10]; //교환을 위한 중간 변수 ch1

char CH2[10]; //교환을 위한 중간 변수 ch2

char CH3[10]; //교환에 사용되는 중간 변수 ch3

for(int d = 0; d & ltcs; d++)

{

for(int e = d+1; e & ltcs; e++)

{

If (add [d]. num & gt add [e]. Number)

{

t = add[d]. num

add[d]. num = add[e]. num

add[e]. num

add[e]. num = t;

strcpy(ch1, add[d]. Name);

strcpy(add [d]. Name, add[e]. Name);

strcpy(add [e]. Name, ch 1);

strcpy(ch2, add[d]). addr);

strcpy(add[d]. addr, add[e]. addr);

strcpy(add[e]. addr, ch2);

strcpy(ch3, add[d]. ). Age);

strcpy(add [d]. Age, add[e]. Age);

strcpy(add [e]. Age, CH3);

}

}

for(int I 1 = 0; I 1 & lt; cs; i1++)

{

cout & lt& lt "학교번호"< & lt add[i1]. num & lt& lt "이름"

}

}

학생::저장() //Save 객체를 무효화하여 저장합니다.

{

char re = ' y

cout & lt& lt이 작업을 선택하면 abc.txt 파일에 입력한 정보가 동일한 디렉터리에 저장됩니다 & lt& ltendl

cout & lt& lt "정말 저장하시겠습니까? [yes/no]" & lt; & ltendl

CIN & gt; & gtre;

if(re=='Y' || re=='y ')

{

iof.open("abc.txt", IOs::out | IOs::app);

if(! iof)

{

cerr & lt& lt "파일 열기 오류"

exit(0);

}

iof.write((char *)add, sizeof(student));

iof . close();

cout & lt& lt "메시지 저장됨"

char re2 = ' y

cout & lt& lt "다른 이름으로 저장? [yes/no]" & lt; & ltendl

CIN & gt; & gtre2

if(re2=='y' || re2=='Y ')

{

save as();

}

}

p>

다른

{

cout & lt& lt "메시지가 저장되지 않았습니다"

}

}

void Student::Read()

{

/* FILE * FP;

if((fp=fopen("abc.txt", " Rb ") == NULL)

{< /p>

Printf("파일을 열 수 없습니다! \ n ");

Exit(0);

}

for(int RR = 0; rr & ltcs; rr++)

{

Fred(& ampadd[rr], sizeof(class student), 1, FP);

Printf("학교번호:%-. 10s 이름:%4d 출생지:%4d 생년월일:%-15s \ n", [RR] 추가. 숫자, [RR] 추가. 이름, [RR] 추가. 주소, [RR] 추가. age).

}

fclose(FP);*/

ifstream inf

//char infname[20];

cout & lt& lt "Reading data from abc.txt:"

//cin.getline( infname, sizeof(infname));

inf.open("abc.txt", IOs::in | IOs::binary | IOs::no create | IOs::app);

If(!inf)

{

cerr & lt & lt "파일이 존재하지 않습니다"

exit(0);

}

for(int r = 0; r & ltcs; r++)

{

INF . read((char *)& amp; add, sizeof(class student));

cout & lt& lt "학생번호"< & lt add[r]. num & lt& lt "이름"

}

}

void student::Saveas()

{

fstream iof

char oname[20];

char ch

iof.open("abc.txt", IOs::in);

cout & lt& lt "부탁합니다. 저장 경로와 파일명을 입력하세요:"

cin.getline(oname, sizeof(oname));

iof.open(oname, IOs::out | IOs::no replace);

If(!iof)

{

cerr & lt& lt "파일이 이미 존재합니다"

exit(0);

}

while(iof . GET(CH))IOF . PUT(CH);

IOF . close();

}

p>

//프로그램 메인 진입점

void main()

{

for(;;)

{

cout & lt& lt"-"& lt;& ltendl

cout & lt& lt"-"& lt; & ltendl

cout & lt& lt "학생 관리"

cout & lt& lt& lt "-"& lt; & ltendl

cout & lt& lt"☆ [1]입력 [2]찾기 [3]삭제 [4]정렬 [5]저장 [6]종료 ☆;" & lt; & ltendl

cout & lt& lt "-"& lt; & ltendl

학생 h;

int choose

cout & lt& lt "선택해 주세요:"

CIN & gt; & gt choose;

토글(선택)

{< /p>

케이스 1:

h.insert();

break;

케이스 2:

h.find();

break;

케이스 3:

h.del();

break;

케이스 4:

h. .sort();

break;

사례 5:

h.save();

break;

사례 6:

cout & lt& lt "와주셔서 감사합니다!" & lt& ltendl

exit(0);

break;

Default:cout & lt& lt "작업 오류!" & lt& ltendl

}

}

/*클래스메이트 */

# 포함 & ltstdio.h & gt

# 포함 & ltiostream.h & gt

# 포함 & ltfstream.h & gt

# include & ltstdlib.h & gt

# include & ltconio.h & gt

# 크기 10의 정의

// -

/ 함수형

/* void dakai(int n, int j, char ch);

void save(int n, char ch);

void display(int n, char ch);//정보 표시

void modify();

void dakai(int n, int j, char ch);// FIND FILE

void shuru(int n, char ch); // 입력 정보

void paixu(int n, char ch);

void genzhe(int n, char ch); // 프로그램 실행 선택 */

// -

구조체 학생 _ 유형// 구조를 정의합니다.

{

character name[10];

int num

int age

char addr[15];

}stud [size];

// -

Void save(int n, char ch) //Save the 입력을 저장합니다.

{

FILE * fp

int I;

if((fp=fopen("f:\\stu_list.txt", " w b+ ") == NULL)

{

printf("파일을 열 수 없습니다 \ n");

exit( 0);

}

for(I = 0; I& ltn; i++)

if(fwrite(& amp; student[i], sizeof(student_type), 1, fp)! = 1)

printf("파일 쓰기 오류 \ n");

fclose(FP);

}

p>

/ -

Void display(int n, char ch)//Display the message.

{

FILE * fp

int I;

if((fp=fopen("f:\\\stu_list.txt", " rb")) == NULL)

{

printf("파일을 열 수 없습니다 \ n");

exit( 0);

}

for(I = 0; I& ltn; i++)

{

Fred(& ampstud[i], sizeof(struct student_type), 1, FP);

Printf("Name:%-10s School number:%4d 나이:%4d 주소:%-15s \ n ", Stud [i]. 이름, 종마 [i]. 숫자, 스터드 [i]. 나이, 스터드 [i]. Address.

}

fclose(FP);

}

// -

Void xiugai(int n, char ch)//Modify student information.

{

int z;

FILE * pf

pf=fopen("f:\\stu_list.txt", " r b+ ");

if(pf==NULL)

{

printf("\n pf 열기 오류, \n 프로그램을 종료합니다.") ;

반환;

}

기타

{

//학생 정보 입력

cout & lt& lt "변경하려는 학생 번호를 입력하세요:"

CIN & gt; & gtz;

fseek(pf, z*sizeof( struct student_type), 2);

scanf("%s%d%d%d%s", stud[z]. 이름 & 앰프 스터드[z]. Number & amp stud[z]. Age, stud[z]. addr);

fseek(pf, sizeof(struct student_type), 0);

fwrite(& amp; stud, sizeof(struct student_type), 1, pf);

}

fclose(pf);

//save(n, ch);

//display(n, ch);

}

// -

/*struct stud

{

int num

struct student;

}* head;

void printnode(stud

{

while(p->; next! = null)

{

// p가 가리키는 데이터를 출력합니다.

cout & lt& ltp->; num & lt& lt" ";

p = p-& gt; next; //다음으로 가리킴

}

cout & lt& ltp->; num & lt& ltendl

}

// -

void dakai2()

{

node * p = new node;

head = p;//set head pointer

p->; num = 90

for(int k = 1; k & lt10;k++)

{

///generate the next node 1.

>

p->; next = p+k;

p = p-& gt; next;

p->; num = k * 100;

}

p->; next = NULL

print node(head);

}*/

무효 다카이(int n, int j, char ch)//파일을 찾습니다.

{

//int I = 2;

//char ch1, filename[20];

FILE * fp

//int I = 0;

///display(n, ch);

///cout & lt; & lt 찾으려는 파일의 이름을 찾을 파일 이름, "#"로 끝나는

//scanf("%s", filename);

cout & lt& lt"-"& lt; & ltendl

if (( fp=fopen("f:\\stu_list.txt", " rb"))==NULL)

{

printf("이 파일을 열 수 없습니다 \ n");

quit(0);

}

for(int I = 0; I& lt4;i+=1)

{

fseek(fp, i*sizeof(struct student_type), 2);

Fred(& ampstud[i], sizeof(struct student_type), 1, FP);

if(stud[i].num=. = j)

//{

Printf("Name:%-10s School Number:%4d Age:%4d Address:%-15s \ n ", Stud [i]. 이름, 종마 [i]. 숫자, 스터드 [i]. 나이, 스터드 [i]. Address.

}

//i++;

//}

// }

/* fread(& amp; stud[i-1], sizeof(struct student_type), I, FP);

cout & lt& lt "name"

< p>printf("%-10s", stud[i-1]. Name);

cout & lt& lt "학교번호";

printf("%4d", stud[i-1]. num);

cout & lt& lt "나이";< /p>

printf("%4d", stud[i-1]. age);

cout & lt& lt "address";

printf("%-15s\n", stud[i-1]. address);

p>

/*

while((ch=. getchar())! = '#')

{

fputc(ch, FP);

putchar(ch);

}*/

fclose(FP);

}

// -

Void shuru(int n, char ch)// 메시지를 입력합니다.

{

int I;

cout & lt& lt "지금 학생 수를 입력하세요:";

CIN & gt; & gtn;

cout & lt& lt "입력하세요"

for(I = 0 ; I & ltn; i++)

{

cout & lt& lt "첫 번째 입력하세요"

scanf("%s%d%d%d%s", stu[i]. Name & ampstud[i]. 번호 & ampstud[i]. Age, stud[i]. addr);

}

save(n, ch);

show(n, ch);

}

// -

void paixu(int n, char ch)

{

fstream outfile, infile.

infile.open("f:\\stu_list.txt", IOs::in);

If (!infile)

{

cerr & lt& lt "파일 열기 실패!" & lt& ltendl

exit(0);

}

student _ type textline[80];

//int I = 0;

// while(!infile.eof())

// {

//i++ ;

// infile.getline(textline, sizeof(textline));

// if

// cout & lt; & lt me & lt& lt& lt":" & lt& lttextline & lt& ltendl

}

< p>infile . close();

}

// -

/* void paixu2()

{

student _ type ww

for(int I = 0; I & ltn; i++)

{

for(int j = I+. 1; j & ltn; j++)

{

if(stu[i].num & gtstu[j]. Number)

{

ww.num = stud[i]. num

stud[i]. num = stud[j]. num

stud[j]. num = ww . num;

ww.

*/

// -

Void xuanzhe(int n, char ch)//프로그램을 실행하도록 선택합니다.

{

int i, j;

If(ch=='s')//input

{

Shu as (n, ch);

cout & lt& lt"-"& lt; & ltendl

cout & lt& lt "명령을 입력하세요"

cout & lt다른 키 S(메시지 입력), F(메시지 검색), D(삭제), P(정렬), A(메시지 저장)를 눌러 종료

CIN & gt; & gtch;

Xuanzhe(n, ch);

}

Else

기타 if(ch=='f')// Find

{

cout & lt& lt "찾고 있는 번호를 입력하세요:"

CIN & gt; & gtj;

dakai(n, j, ch);

cout & lt& lt"-. " & lt; & ltendl

cout & lt& lt "명령을 입력하세요"

cout & lt& 다른 키 S(메시지 입력), F(메시지 검색), D(삭제), P(정렬), A(메시지 저장)를 누르면 종료

CIN & gt; & gtch;

Genzhe(n, ch);

}

Else if(ch=='a')//save

{

save(n, ch);

cout & lt& lt"-"& lt; & ltendl

cout & lt& lt "명령을 입력하세요"

cout & lt& lt다른 키 S(메시지 입력), F(메시지 검색), D(삭제), P(정렬), A(메시지 저장)를 눌러 종료

CIN & gt; & gtch;

genzhe(n, ch);

}

else if(ch=='p ')

{

Pai Su(n, ch);

cout & lt& lt"-"& lt; & ltendl

cout & lt& lt "명령을 입력해주세요"

cout & lt& lt다른 키 S(정보 입력), F(정보 검색), D(삭제), P(정렬), A(정보 저장)를 눌러 종료

CIN & gt; & gtch;

후엔 치에(n, ch);

}

Else if(ch=='x')//modify

{

Modify cover(n, ch);

cout & lt& lt"-"& lt; & ltendl

cout & lt& lt다른 키 S(정보 입력), F(정보 검색), D(삭제), P(정렬), A(정보 저장)를 눌러 종료

합니다. CIN & gt; & gtch;

genzhe(n, ch);

}

else if(ch=='d ')

{

display(n, ch);//정보 표시

cout & lt& lt"- " & lt; & ltendl

cout & lt& lt다른 키 S(메시지 입력), F(메시지 검색), D(삭제), P(정렬), A(메시지 저장)를 눌러 종료

CIN & gt; & gtch;

Genzhe (n, ch);

}

기타

{

cout & lt& lt "명령 오류!" & lt& ltendl

}

}

p>>

// -

Void main()//main function

{

int n;

char ch

cout & lt& lt"- " & lt; & ltendl

cout & lt& lt "명령을 입력하세요"

cout & lt& lt다른 키를 눌러 종료 S(메시지 입력), F(메시지 검색), D(삭제), P(정렬), A(메시지 저장)

CIN & gt; & gtch;

Gencher (n, ch);

}