CSE207 객체지향 강좌 및 C++ 관련, 누구나 묻고 답하는 게시판 입니다. CSE207 수강생이 아니여도 편안하게 질문하세요. 첨부화일은 이미지 화일 혹은 zip 화일로 업로드 하기를 권합니다. 제목lecture07 large data processing ppt 24쪽 코드 질문 있습니다2019-03-27 13:14작성자shcgetStu 함수에서 ifstream stuFile>>stuID로 입력을 받게 됩니다. 그런데 ch7STUFL.DAT을 보면 stuid가 4글자인데 writestu 함수에서 출력되는 stuid을 확인해보면 2글자입니다. 왜그런지 알고 싶습니다. 코드 첨부하겠습니다#include <fstream>#include <iostream>#include<iomanip>#include<cstdlib>using namespace std;bool getstu(ifstream& stufile, int& stuid, int& exam1, int& exam2, int& final);void writestu(ofstream& gradesfile, int stuid, int avrg, char grade);void calcgrade(int exam1, int exam2, int final, int& avrg, char& grade);int main(){ ifstream stufile; cout << "begin student graden"; stufile.open("ch7STUFL.DAT"); if (!stufile) { cerr << "error"; exit(100); } ofstream gradesfile; gradesfile.open("ch7stugr.DAT"); if (!gradesfile) { cerr << "errorn"; exit(102); } int stuid, exam1, exam2, final, avrg; char grade; while (getstu(stufile, stuid, exam1, exam2, final)) { calcgrade(exam1, exam2, final, avrg, grade); writestu(gradesfile, stuid, avrg, grade); } stufile.close(); gradesfile.close(); cout << "end student graden"; return 0;}bool getstu(ifstream& stufile, int & stuid, int& exam1, int& exam2, int& final) { stufile >> stuid >> exam1 >> exam2 >> final; if (!stufile) return false; return 1;}void calcgrade(int exam1, int exam2, int final, int&avrg, char& grade) { avrg = (exam1 + exam2 + final) / 3; if (avrg >= 90) grade = 'a'; else if (avrg >= 80) grade = 'b'; else if (avrg >= 70) grade = 'c'; else if (avrg >= 60) grade = 'd'; else grade = 'f';}void writestu(ofstream& gradefile, int stuid, int avrg, char grade) { gradefile << setw(4) << stuid; gradefile.fill(' '); gradefile << setw(3) << avrg; gradefile << ' ' << grade << endl;} 목록수정삭제답변글쓰기 댓글 [1] 댓글작성자(*)비밀번호(*)내용(*) 댓글 등록 더보기이전그냥 이 게시판을 써보시는 것도 ^^drsungwon 2019-03-31다음함수 선언 시 int와 void의 차이를 알고 싶습니다.ANy2019-03-26 Powered by MangBoard | 워드프레스 쇼핑몰 망보드