>
- 문자 사용시 오류 방지를 위해
어쩔수없이ㅠㅠ 네이버의 도움을 받아 fflush(stdin) 사용
- scanf 사용시 오류 방지를 위해
네이버의 도움을 받아 #pragma warning(disable:4996) 사용
5번 반복하는 프로그램
#include <stdio.h>
#pragma warning(disable:4996)
int main()
{
int kor,eng,mat,tot,ave,i,j,k;
for(k = 0;k<5;k++) {
printf("당신의 국어 점수를 입력하십시오.(0~100): ");
fflush(stdin);
i = scanf("%d",&kor);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 국어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&kor); }
else if ( kor < 0 || kor > 100) {
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 국어 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&kor); }
else {j = 0;}}
printf("당신의 영어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&eng);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 영어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&eng); }
else if( eng < 0 || eng > 100){
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 영어 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&eng); }
else{j = 0;}}
printf("당신의 수학 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&mat);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 수학 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&mat); }
else if ( mat < 0 || mat > 100) {
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 수학 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&mat); }
else { j = 0;}}
tot = kor + eng + mat;
ave = tot / 3;
if ( ave >= 80){
printf("합격입니다. \n");}
else {
printf("불합격입니다. \n");}}
return 0;
}
- 무한 반복 프로그램(단, 모든 과목의 점수가 0일시 프로그램 종료)
#include <stdio.h>
#pragma warning(disable:4996)
int main()
{
int kor,eng,mat,tot=1,ave,i,j;
while( tot > 0 ) {
printf("당신의 국어 점수를 입력하십시오.(0~100): ");
fflush(stdin);
i = scanf("%d",&kor);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 국어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&kor); }
else if ( kor < 0 || kor > 100) {
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 국어 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&kor); }
else {j = 0;}}
printf("당신의 영어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&eng);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 영어 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&eng); }
else if( eng < 0 || eng > 100){
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 영어 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&eng); }
else{j = 0;}}
printf("당신의 수학 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&mat);
j = 1;
while(j == 1){
if( i == 0){
printf("문자를 입력하지 말아 주십시오. \n");
printf("당신의 수학 점수를 입력하십시오(0~100): ");
fflush(stdin);
i = scanf("%d",&mat); }
else if ( mat < 0 || mat > 100) {
printf("1~100사이의 값을 입력하십시오. \n");
printf("당신의 수학 점수를 입력하십시오.(1~100): ");
i = scanf("%d",&mat); }
else { j = 0;}}
tot = kor + eng + mat;
ave = tot / 3;
if ( ave >= 80){
printf("합격입니다. \n");}
else {
printf("불합격입니다. \n");}}
return 0;
}