프로그래밍/C언어

[2주차] 실행 중단하는 법, 함수, 배열과 문자열.

유니렌 2024. 12. 8. 15:56

오늘도 한주가 지났다. 책 진도는 반 정도 진행했다. 사실 어느 정도 배워서 다행이지... 크흠...


 

컨티뉴.

컨티뉴에 대해서 잘 이해하지 못했는데 이프문에 해당하는 값은 뛰어넘고 진행한다는 것을 복습하였다. 트럼프 카드로 따지면 상대방에게 넘기는 것과 같다.

스위치문도 배웠는데 쯔끄루 게임의 엔딩 분기가 생각났다. 나중에 어느정도 배우면 만들어봐야징. 스위치를 껐다 키는 멀티탭과 비슷한 구조였다.


난수

난수를 배웠다. 처음 보는 함수이다. 이제 알았는데 뒤에 러브함수는 신경 쓰지 말자...(다시 쓰기 귀찮다고 말 못 해...)

 

#include<time.h>
#include<stdlib.h>

srand(time(NULL));
//난수초기화
rand() % num;
//난수 함수

 

신기하당!

 


#include <stdio.h>
int main()
{
	int coffee = 4500;
	int sandwich = 6000;
	int num1;
	int num2;
	int price = 0;
	printf("주문 하실 메뉴 갯수를 선택해 주세요.\n");
	printf("1. coffee\n2. sandwich\n");
	scanf_s("%d %d", &num1, &num2);
	if (num2 > 0) {
		coffee = 3500;
	}
	price = coffee * num1 + sandwich * num2;
	printf("총 %d원 입니다.", price);
return 0;
}

 

조건문을 드디어 이해하였다! (흐뭇)

 


내가 시도도 못했던 함수.

#include <stdio.h>
int plus(int num1,int num2)
{
	return num1 + num2;
}
int minus(int num1, int num2)
{
	return num1 - num2;
}
int gop(int num1, int num2)
{
	return num1 * num2;
}
double naa(int num1, int num2)
{
	return (double)num1 / (double)num2;
}

int main()
{
	int num1,num2;
	scanf_s("%d %d", &num1,&num2);
	printf("%d\n%d\n%d\n%lf", plus(num1, num2), minus(num1, num2), gop(num1, num2), naa(num1, num2));
return 0;
}

 

엄청 허접하다... 그래도 한 게 어디야...

 

#include <stdio.h>
#include<time.h>
#include<stdlib.h>

int getrandomnumber(int level)
{
		return  rand() % (level * 9) + 1;
}
	
void showquestion(int level, int num1, int num2)
{
	printf("\n\n\n#### %d 번째 비밀번호 ####\n",level);
	printf("\n\t%d x %d = ? \n\n",num1,num2);
	printf("#####################\n");
	printf("\n비밀번호를 입력하세요.(종료를 원하면 -1 입력)>> ");
}

void succes() {
	printf("\n#정답입니다!#\n");
}

void fail() {
	printf("\n#땡! 오답입니다!#\n");
}

int main()
{
	srand(time(NULL));
	int count = 0;
	for (int i = 1; i <= 5; i++)
	{
		int num1 = getrandomnumber(i);
		int num2 = getrandomnumber(i);
		showquestion(i, num1, num2);
		int answer = -1;
		scanf_s("%d", &answer);
		if (answer == -1) {
			printf("\n프로그램을 종료합니다.\n");
			//break;
		}
		else if (answer == num1 * num2) {
			succes();
			count++;
		}
		else {
			fail();
		}
	}
	printf("\n\n비밀번호 %d개를 맞혔습니다.\n", count);
return 0;
}

열심히 적은 함수(?)

확실히 많이 적어보니 함수에 대해 잘 알게 되었다. 반환값, 전달값에 대해 이해하였다! 

 

#include <stdio.h>
int convert_time(int num)
{
	if (num < 60)
	{
		printf("%d분", num);
		return 0;
	}
	else {
		printf("%d시%d분", num / 60, num% 60);
	}
}
int main()
{
	int num;
	scanf_s("%d", &num);
	convert_time(num);
return 0;
}

 

진짜로 내가 만든 함수! 드디어 해냈다!


다음으로는 배열과 문자열에 대해 배웠다. 포문과 이프문을 자주 쓰인다는 걸 배웠다.

(우웁... 지겨워ㅂ...)


필기한 내용

오늘도 알차게 필기를 하였다. 다음에도 열심히 공부하자