아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
통쾌한여우103
통쾌한여우10320.10.11

c언어 c++언어 입니다 입력부분 코딩해봤는데 잘안돼요... 틀린부분을 어떻게 고쳐야되는지 알려주세요

#define CRTSECURENOWARNINGS
#include <iostream>
#define MAXINPUTCOUNT 2

struct student {
char name[20];
int kor;
int eng;
int math;
int total;
int pen;
int grade;
double average;
};
void swap(student* parmfrist, student* parmsecond)
{
student temp;


temp = *parm_frist;
*parmfrist = *parmsecond;
*parm_second = temp;
}

int main() {


struct student s[MAXINPUTCOUNT];
int i, j;


for (i = 0; i < MAXINPUTCOUNT; i++) {
printf("이름을 입력하세요 : ");

scanf("%s", s[i].name);


printf("1) 국어점수를 입력하세요 : ");

scanf("%d", &s[i].kor);


printf("2) 영어점수를 입력하세요 : ");
scanf("%d", &s[i].eng);


printf("3) 수학점수를 입력하세요 : ");
scanf("%d", &s[i].math);



s[i].total = (s[i].kor + s[i].eng + s[i].math);

s[i].average = s[i].total / 3.0;


printf("\n");
}

if (s[i].average >= 90) s[i].grade = 'A';
else if (s[i].average >= 80) s[i].grade = 'B';
else if (s[i].average >= 70) s[i].grade = 'C';
else if (s[i].average >= 60) s[i].grade = 'D';
else s[i].grade = 'F';


if (s[i].average >= 70) s[i].pen = '합격'; // 이부분
else (s[i].average < 70) s[i].pen = '불합격'; // 이부분이 틀렸다고 나오는데 어떻게해야하나요 혹시 여기 말고 다른부분도 틀린거 있으면 알려주시고 고쳐주세요 ㅠ.ㅠ



return 0;
}

추가 질문은 결과화면이

[홍길동]님의 성적은 국어점수 [100], 수학점수[100], 영어점수[100]이고,

총점[300], 평균[100.00], 학점[A]으로

졸업 시험에 [합격] 하였습니다.

이렇게 나오게 하고싶습니다 알려주시면 감사하겠습니다...



55글자 더 채워주세요.
답변의 개수1개의 답변이 있어요!
  • #define CRTSECURENOWARNINGS #include <iostream> #include <string.h> #define MAXINPUTCOUNT 2 struct student { char name[20]; int kor; int eng; int math; int total; //int grade; //학점은 문자라 char 선언하셔야 됩니다. char grade; double average; //합격,불합격 char pen[20]; }; void swap(student* parmfrist, student* parmsecond) { student temp; temp = *parm_frist; *parmfrist = *parmsecond; *parm_second = temp; } int main() { struct student s[MAXINPUTCOUNT]; int i, j; for (i = 0; i < MAXINPUTCOUNT; i++) { printf("이름을 입력하세요 : "); scanf("%s", s[i].name); printf("1) 국어점수를 입력하세요 : "); scanf("%d", &s[i].kor); printf("2) 영어점수를 입력하세요 : "); scanf("%d", &s[i].eng); printf("3) 수학점수를 입력하세요 : "); scanf("%d", &s[i].math); s[i].total = (s[i].kor + s[i].eng + s[i].math); s[i].average = s[i].total / 3.0; //학점을 나타 내신거 같은데 //for반복문 안에서 작성해 주셔야 변수 i가 할당됩니다. //if문의 조건도 수정이 필요하네요. //B,C,D,F 학점의 경우 상위학점의 점수보다 작다라는 //구문이 필요합니다. if (s[i].average >= 90) s[i].grade = 'A'; else if (s[i].average < 90 && s[i].average >= 80) s[i].grade = 'B'; else if (s[i].average < 80 && s[i].average >= 70) s[i].grade = 'C'; else if (s[i].average < 70 && s[i].average >= 60) s[i].grade = 'D'; else s[i].grade = 'F'; //문자열을 다른 배열에 저장하기 위해선 //<string.h>상의 strcpy함수를 이용해야 됩니다. //코드 상단에 <string.h> include한 후 사용 if (s[i].average >= 60) strcpy(s[i].pen, "합격"); else strcpy(s[i].pen, "불합격"); } //입력값 및 결과값 출력 for (j = 0; j < MAXINPUTCOUNT; j++) { printf("??(%s??)님의 성적은 국어점수??(%d??), 수학점수??(%d??), 영어점수??(%d??)이고, 총점??(%d??), 평균??(%.2f??), 학점??(%c??)으로 졸업 시헙에 ??(%s??)하였습니다. \n", s[j].name, s[j].kor, s[j].eng, s[j].math, s[j].total, s[j].average, s[j].grade, s[j].pen); } return 0; }

    휴대폰으로 작성하다보니.. 컴파일시 오류가 있으시면 댓글 남겨주세요.