C/제어문

제어문 예제1 & 랜덤

june__Park 2021. 3. 29. 16:35
#include <stdio.h>

void ex01(){
	int n;
	while (1){
		printf("아무 정수 입력(종료:-1):");
		scanf_s("%d", &n);
		if(n == -1){
			printf("종료합니다..\n");
			break; // while문 종료
		}
		printf("입력된 정수 : %d \n", n);
	}
}

#include <time.h>  // time() 
#include <stdlib.h> // srand(), rand() 
void quiz01(){
	// 컴퓨터가 랜덤하게 1 ~ 100 중 1개의 숫자를 뽑는다.
	// 사용자가 정답을 맞출 때까지 계속 사용자에게 정수를 입력받음
	// 정답 < 입력값 => Down! 을 출력
	// 정답 > 입력값 => Up! 을 출력
	// 정답 == 입력값 => 반복 종료 
	// (+ 입력 횟수, 횟수가 10회 이하면 WIN 출력 아니면 LOSE 출력)
	int correct; // 정답 
	int user; 
	int count =0;
	srand(time(NULL)); 
	correct = rand() % 100 + 1; // 1 ~ 100까지의 수 중 랜덤하게 1개
	printf("%d \n", correct);

	while (1){
		++count;
		printf("답:"); scanf_s("%d", &user);
		if(correct > user) {
			printf("UP! \n");
		}
		else if(correct < user) {
			printf("DOWN! \n");
		}
		else{
			break;
		}
	} // while 
	if (count <= 10){
		printf("WIN! \n");
	}
	else {
		printf("LOSE.. \n");
	}
}

void sample(){
	// rand() : 랜덤 수 1개 뽑아라! => int형 ( 0~32767 )
	srand(time(0)); // srand( 시간데이터 ) ==> 딱 한번만 
	
	int n = 1;
	while(n <= 10){
		 // 0 NULL

		// 2  ~ 9   rand() % 개수 + 첫값
		printf("%d \n", rand() % 8 + 2); // 랜덤 수 뽑는 rand() 이것만 반복처리
		n++;
	}
}
void ex02(){
	int n;

	// 1  ~ 10
	/*
		for(초기식; 조건식; 변화식){
			종속문장
		}
		초기식 -> 조건식 -> 참이면 -> 종속문장 -> 변화식 
		-> 조건식 -> 참이면 -> 종속문장 .....
		-> 조건식 -> 거짓이면 -> for 종료 
	*/
	for (n = 1; n <= 10; ++n){
		printf("%d \n", n);
	}
}
void quiz02(){
	// 1. 구구단 4단 출력
	int n;
	for(n = 1; n <= 9; ++n){
		printf("%d X %d = %d \n", 4, n, 4*n);
	}

	// 2. 1 ~ 1000 중 11과 13의 공배수를 출력 (그의 개수 출력)
	int count = 0;
	/*for(n = 1; n <= 1000; ++n){
		if( !(n%11) && !(n%13) ){
			printf("%d \n", n);
			++count;
		}
	}*/
	for(n = 143, count = 0; n <= 1000; n += 143, ++count){ // ++n ==> n += 1
			printf("%d \n", n);
	}
	printf("총 %d개 \n", count);


	// 3. 구구단 2단 ~ 9단 모두 출력
	int dan;
	for(dan = 2; dan <= 9; ++dan){

		printf("===== %d단 =====\n", dan);

		for(n = 1; n <= 9; ++n){

			printf("%d X %d = %d \n", dan, n, dan*n);

		}
	}
}
void main(){
	//ex01();
	//quiz01();
	//sample();

	//ex02();
	quiz02();
}