for(초기식; 조건식; 증감식;)
{
실행문;
}
√ 초기식 본격적으로 반복을 시작하기에 앞서 딱 한번 실행된다.
√ 조건식 매 반복의 시작에 앞서 실행되며, 그 결과를 기반으로 반복 유무를 결정!
√ 증감식 매 반복실행 후 마지막에 연산이 이뤄진다
문제1)
1이상 100미만의 정수 중에서 7의 배수와 9의 배수를 출력하는 프로그램을 작성해 보자. 단! 7의 배수이면서 동시에 9의 배수인 정수는 한 번만 출력해야 한다.
#include<stdio.h>
void main()
{
int num;
for (num = 1; num < 100; num++) {
if (num % 7 == 0 || num % 9 == 0) {
printf("7의 배수이면서 9의 배수 = %d\n", num);
}
}
}
문제2)
프로그램 사용자로부터 두 개의 정수를 입력 받아서, 두 정수를 포함하여 그 사이에 존재하는 정수들의 합을 계산해서 출력하는 프로그램을 작성해 보자. 예를 들어서 3과 5가 입력되면, 3+4+5의 결과가 출력되어야 한다. 첫 번째 입력 정수보다 두 번째 입력 정수가 더 커야 한다.
#include <stdio.h>
int main(void)
{
int num1, num2;
int result=0;
printf("두 개의 정수를 입력해주세요 >>> ");
scanf("%d %d", &num1, &num2); //2개의 정수 입력 단, 두 번째에 오는 정수의 값이 더 커야 한다.
for(result = 0; num1<=num2; num1++){
result = result + num1;
}
printf("결과 값 = %d\n", result);
}
문제3)
다음 수식인 factorial을 계산하는 프로그램을 작성해보자.
n! = 1x2x3x'''xn
프로그램 사용자로부터 n에 해당하는 정수를 입력 받는다. 그러면 n의 계승 n!를 계산해서 출력이 이루어져야 한다.
#include <stdio.h>
int main(void)
{
int i=0;
int num;
int total=1;
printf("정수를 하나 입력하세요 >>> ");
scanf("%d", &num);//정수 입력
for(i=1; i<=num; i++){
total = total * i;// total *= i;
}
printf("%d! = %d", num, total);
}
문제4)
구구단을 출력해보자. ( 2단부터 9단까지 )
#include <stdio.h>
int main(void)
{
int i=0;
int dan=0;
for(dan=2; dan<10; dan++){
printf("%d단\n", dan);
for(i = 1; i<10; i++){
printf("%dx%d=%d\n", dan, i, dan*i);
}
}
}
문제5)
0부터 입력 받은 정수 들의 합을 구해보자.
#include <stdio.h>
int main(void)
{
int i=0;
int num=0;
int total=0;
printf("정수 하나를 입력해주세요 >>> ");
scanf("%d", &num);
for(i=0; i<=num; i++){
total = total + i;
}
printf("정수들의 합 = %d\n", total);
}
문제6)
홍콩반점에 방문한 사람 수 만큼 주문을 받는 프로그램을 만들어보자.
레스토랑의 방문객 수를 받는다. ㅡ> 메뉴를 주문 받는다. ㅡ> 음식 값을 계산한다.
메뉴 = 1.짜장면 6000원
2. 짬뽕 8000원
3.탕수육12000원
1~3을 제외한 숫자를 입력하면 메뉴 선택 완료.
잔액 = 20000원, 부족하면 부족하다고 말하고 계산이 완료되면 남은 잔액 확인시키기.
#include <stdio.h>
void main()
{
int customer;//몇 분이신지 ?
int a, b, c;//
int d;//메뉴별 가격
int menu;
int money = 10000;
int total = 0;
printf("홍콩반점에 오신것을 환영합니다.\n몇 분이신가요?\n");
scanf("%d", &customer);
printf("그러시군요. 메뉴판 드리겠습니다.\n");
printf("1번 짜장면 6000원\n");
printf("2번 짬뽕 8000원\n");
printf("3번 탕수육12000원\n");
for(a=1; a<=customer; a++){
printf("몇개의 메뉴를 주문하시겠습니까?\n");
scanf("%d", &menu);
printf("%d번 손님 %d개의 메뉴 주문 받겠습니다.\n", a, menu);
printf("원하시는 메뉴의 버튼을 눌러주세요.\n");
printf("메뉴 선택이 끝나셨으면 1~3번을 제외한 다른 번호를 눌러주세요\n");
scanf("%d", &c);
for(b=1; b<=menu; b++){
d = 0;
if(c == 1){
printf("짜장면\n");
d = 6000;
}else if(c == 2){
printf("짬뽕\n");
d = 8000;
}else if(c == 3){
printf("탕수육\n");
d = 12000;
}else{
printf("주문 취소하셨습니다.\n");
}
total += d;
}
}
printf("주문하신 음식의 총 값은 %d원입니다.\n", total);
if(money < total){
printf("%d원이 부족합니다.\n", total-money);
}else{
printf("감사합니다. 현재 남은 금액은 %d원입니다.\n안녕히가세요.\n", money-total);
}
}
'4. 프로그래밍 기초 > 4_2 C' 카테고리의 다른 글
[열혈 C프로그래밍] 다차원 배열 연습문제 (0) | 2018.12.22 |
---|---|
[열혈 C프로그래밍] 포인터와 함수 연습문제 (0) | 2018.12.22 |
[열혈 C프로그래밍] 포인터와 배열 연습문제 (0) | 2018.12.22 |
[열혈 C프로그래밍] if문 연습문제 (0) | 2018.12.20 |
[열혈 C프로그래밍] While문 연습문제 (0) | 2018.12.20 |