#include<stdio.h>
void change(int *num1, int *num2)
{
int tmp = 0; // 보관용 변수
tmp = *num1;
*num1 = *num2;
*num2 = tmp;
}
int main()
{
int a = 10;
int b = 20;
printf("a = %d, b = %d \n", a, b);
change(&a, &b); //값을 바꿔주는 함수에 값이 들어가있는 변수에 주소를 넘겨준다
printf("a = %d, b = %d \n", a, b);
return 0;
}
처음 화면에서 출력할 만큼의 게임 횟수를 입력하면 다음 화면에서 그 결과를 반환해주고 끝나는 프로그램입니다
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int num = 0; // 1~45의 랜덤 값을 담는 변수
int lotto = 0; // game배열의 번짓수를 결정해주는 변수
int check = 0; // game배열 숫자와 새로 뽑은 숫자가 중복되는지 체크할때 쓰는 변수
int check_ok = 0; // 중복 여부를 통해 새로운 숫자를 game배열에 담을 때 쓰는 변수
int input = 0; // 사용자의 입력을 담는 변수
int game[6]; // 로또 번호를 담는 배열
int list = 0; // 사용자의 입력에 따라 출력될 게임 횟수를 정하는 변수
int list_num = 1; // 출력될 게임에 번호를 붙어주는 변수
unsigned int localtime = (unsigned)time(NULL);
srand(localtime);
printf("############### 로또 ############### \n\n");
printf("출력할 게임 수를 입력해주세요 : ");
scanf("%d", &input);
printf("\n");
list = input;
while (input)
{
for (; list > 0; list--)
{
printf("%02d 게임 - ", list_num++);
for (lotto = 0; lotto < 6; lotto++)
{
game[lotto] = 0;
}
for (lotto = 0; lotto < 6; lotto++)
{
num = rand() % 45 + 1;
for (check = 0; check < 6; check++)
{
if (game[check] == num)
{
check_ok = 0;
break;
}
else
{
check_ok = 1;
}
}
if (check_ok)
{
game[lotto] = num;
}
else
{
lotto--;
}
}
for (lotto = 0; lotto < 6; lotto++)
{
printf("%02d ", game[lotto]);
}
printf("\n");
}
input--;
}
printf("\n");
return 0;
}