반응형

c언어 do~while문을 활용한 무한 성적입력!!

반응형

계산기 프로그램에 이어서 이번에는 do ~ while문을 활용해서 국어, 영어, 수학, 사회, 과학의 성적을 계속해서 입력할 수 있는 프로그램을 한번 만들어 보도록 하겠습니다.

 

성정 입력을 받고 c를 입력하여 계속해서 성적을 입력받는 프로그램입니다. 아직 배열을 공부하지 않았기 때문에 입력하는 정보는 매번 초기화되고 따라서 입력된 값의 평균을 내어 순위를 출력하는 프로그램을 만들지는 못하지만 배열을 사용하기 전 do ~while문과 함수의 활용을 조금더 익혀보기 위해 한번 만들어봤습니다. 

 

소스코드 
#include <stdio.h>
void pr_line(void) {
	printf("-------------------------------------------------------\n");  //pr_line함수가 호출될때 줄을 긋는 printf함수를 실행 
}

void grade(int i, int j, int k, int l, int m) {  // 21라인에서 호출될때 넘어온 값을 각각 i, j, k, l, m에 대입 
	pr_line();                                   // 2라인의 pr_line함수를 호출 
	printf("국어\t영어\t수학\t사회\t과학\n");     
	printf("%d\t%d\t%d\t%d\t%d\n",i,j,k,l,m);     // 입력받은 i, j, k, l, m 값을 화면에 출력시킴
	pr_line();                                   // 2라인의 pr_line함수를 호출 
}

void main(void)
{
	int i, j, k, l, m;  //국어 영어 수학 사회 과학 점수를 저장할 변수
	char re; // while 문을 반복시키기 위한 문자변수 

	do{
	printf("국어 영어 수학 사회 과확 점수 입력 : ");   //화면에 문구를 출력 
	scanf("%d %d %d %d %d", &i, &j, &k, &l, &m);       // scanf() 함수로 국,영,수,사,과 성적을 입력받음
	grade(i, j, k, l, m);  // 성적출력 함수인 grade(i,j,k,l,m)을 호출 6라인으로 이동 

	printf("성적을 계속 입력하시려면 c를 입력하세요:");   //화면에 문구를 출력 
	scanf(" %c", &re);                                   // scanf()함수를 사용해서 성적입력을 계속할건지 확인하는 문구를 받음
	printf("\n");                                        // 화면을 깔끔하게 보기위해서 줄바꿈 printf함수 사용 

	} while (re == 99);    // 위에 scanf()함수로 받은 re변수에 값이 아스키코드값으로 99면 성적입력 프로그램을 한번 더 실행함

}

 

2020/06/08 - [programming/C Programming] - c언어 함수와 do~while을 활용한 무한반복 계산기 만들기!

 

c언어 함수와 do~while을 활용한 무한반복 계산기 만들기!

안녕하세요. 홍지군입니다. 주말 사람이 많지 않은 곳에서 바다와 맑은 공기를 마시고 돌아왔습니다. 오늘은 지난번에 배운 것들을 잘 조합해서 계속해서 실행시킬 수 있는 무한반복 할 수 있는

swpfun.tistory.com

이전에 작성했던 무한반복 계산기 만들기와 비교해 가면서 do ~while문의 활용법과 함수를 만드는 방법에 대해서 여러가지 방법으로 프로그램을 만들어보고 또 성적을 입력했을때 숫자가 100이 넘어가지 않도록 하는 프로그램을 한번 만들어보신다면 c프로그래밍에서 선택문과 반복문 그리고 함수의 사용까지 어느정도 이해하실 수 있을 것 같습니다.

 

제가 작성한 2개의 글 모두 프로그램을 실행할때 문자 변수 re에 문자 c를 입력받아 99와 같은 경우에 프로그램을 한번더 실행시키도록 되어있는데 입력받는 문자를 c가 아닌 s, e, a 등등 다양한 문자로 입력받았을때에도 동일하게 동작하도록 해보면서 프로그램을 이해하시면 좋을 것 같습니다. 

반응형

댓글

Designed by JB FACTORY