#include <stdio.h>

#include <stdlib.h>

#include <time.h>

 

#define MAX 45 //상수 선언

 

void setlotto(int *lotto);

 

void iswin(int *mylotto, int *lotto);

 

 

int main(void)

 

{

 

int i, j;

 

int mylotto[6], lotto[6];

 

 

printf("\n");

 

printf(" < 로또게임 >\n");

 

printf("\n");

 

printf("1부터 45까지의 숫자 중 본인이 원하는 로또번호 6개를 입력하시오.");

 

printf("\n");

 

printf("-> ");

 

for(i=0; i<6; i++)

 

{

 

scanf("%d", &mylotto[i]);

 

for(j=0; j<i; j++) // 기존에 입력된 번호와 비교해서

 

if(mylotto[i]==mylotto[j]) // 같은 번호가 나오면

 

{

 

printf("이미 입력된 번호입니다. 다시 입력하세요.\n");

 

i--; // 다시 입력 받습니다.

 

break;

 

}

 

}

 

 

setlotto(lotto);

 

iswin(mylotto, lotto);

 

 

return 0;

 

}

 

void setlotto(int *lotto)

 

{

 

int i, j, t;

 

long seed = time(NULL);

 

srand(seed);

 

 

printf("\n");

 

printf("로또를 추첨합니다.\n");

 

printf("\n");

 

for(i=0; i<6; i++)

 

{

 

lotto[i] = rand() % MAX + 1;

 

for(j=0; j<i; j++) // 기존에 입력된 번호와 비교해서

 

if(lotto[i]==lotto[j]) // 같은 번호가 나오면

 

{

 

i--; // 다시 입력 받습니다.

 

break;

 

}

 

}

 

for(i=1; i<6; i++) // 버블정렬 알고리즘

 

for(j=0; j<6-i; j++) // 인접한 두 숫자를 차례대로 비교해서

 

if(lotto[j]>lotto[j+1]) // 뒤에 숫자가 더 작으면 교환하는 오름차순

 

{

 

t=lotto[j];

 

lotto[j]=lotto[j+1];

 

lotto[j+1]=t;

 

}

 

for(i=0; i<6; i++) printf("%4d",lotto[i]); // 정렬된 결과를 출력합니다.

 

printf("\n");

 

}

 

 

void iswin(int *mylotto, int *lotto)

 

{

 

int i, j, same = 0;

 

 

for (j=0; j<6; j++)

 

for (i=0; i<6; i++)

 

if (mylotto[i] == lotto[j])

 

same++;

 

if(same == 6) {

printf("6개 맞췄어요.\n");

}

else if(same == 5) {

printf("5개 맞췄어요.\n");

}

else if(same == 4) {

printf("4개 맞췄어요.\n");

}

else if(same == 3) {

printf("3개 맞췄어요.\n");

}

else if(same == 2) {

printf("2개 맞췄어요.\n");

}

else if(same == 1) {

printf("1개 맞췄어요.\n");

}

else {

printf("하나도 못 맞췄어요.");

}

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

 

#define SIZE 10

 

int main() {

 

int i, j, k, su[SIZE], swap, temp; //반복값, 뒷값, 앞값, 전체수, 치환, 임시

 

srand(time(NULL));

 

//데이터 입력과 결과 확인

for(i=0; i<SIZE; i++) {

su[i] = (rand()%99) + 1;

printf("(%d) : %d\n", i, su[i]);

}

 

printf("-----------------------\n");

 

//배열로 정렬중인 과정

for(j=0; j<SIZE-1; j++) {

swap = 0; //정렬이 되었으면 0, 정렬되지 않았으면 1

 

for(k=j; k<SIZE; k++) {

if(su[k] < su[j]) {

temp = su[k];

su[k] = su[j];

su[j] = temp;

swap = 1;

}

}

 

if (swap == 0) {

break;

}

}

 

// 오름차순 정렬 결과 출력

printf("오름차순 정렬 결과 출력\n");

 

for(i=0; i<SIZE; i++) {

printf("(%d) : %d\n", i, su[i]);

}

return 0;

}

 

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

int right, left;

 

//시스템의 시간정보를 이용해 난수 발생

srand(time(NULL));

 

// 0.000001 - 0.999999

right = ((rand()%5)+1);

left = ((rand()%5)+1);

 

if(right > left) {

printf("오른손 주사위 값이 더 크네요 : %d %d\n", right, left);

}

else if(left > right) {

printf("왼손 주사위 값이 더 크네요 : %d %d\n", right, left);

}

else {

printf("값이 같네요 : %d %d\n", right, left);

}

 

#include <stdio.h>
#define STU 5
 
int main() {
    int i, sum, jumsu[STU];
    double avg=0;
   
    for(i=0; i<STU; i++) {
       printf("성적 입력 : ");
       scanf("%d", &jumsu[i]);
       sum += jumsu[i]; //sum=sum+jumsu[i];
    }
   
    avg = (double)sum / STU;
    printf("합계 : %d, 평균 : %f\n", sum, avg);
   
    return 0;
}

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

int game();

int main() {
    int i, gawi=0, bawi=0, bo=0;
    srand((unsigned)time(NULL));
   
    for(i=0; i<1000; i++) {
       if(game()==0) {
            gawi++; // 가위
       }
       else if(game()==1){
            bawi++; // 바위
       }
       else {
            bo++;   // 보
       }
    }
    printf("가위 : %d\n", gawi);
    printf("바위 : %d\n", bawi);
    printf("보 : %d\n", bo);

    return 0;
}

int game() {
   int t = rand() % 3;
   if(t == 0) {
        return 0; // 가위
   }
   else if(t == 1){
        return 1; // 바위
   }
   else {
        return 2; // 보
   }
}

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

int coin();

int main() {
    int i, head=0, tail=0;
    srand((unsigned)time(NULL));
   
    for(i=0; i<10; i++) {
       if(coin()==0) {
            head++; // 앞면
       }
       else {
            tail++;
       }
    }
    printf("앞면 : %d\n", head);
    printf("뒷면 : %d\n", tail);
       
    return 0;
}

int coin() {
   int t = rand() % 2;
   if(t == 0) {
        return 0; // 앞면
   }
   else {
        return 1; // 뒷면
   }
}

#include<stdio.h>

int main() {
   int i;
  
   char fruit[] = "apple";
   char c_fruit[] = {'a', 'p', 'p', 'l', 'e', '\0'};
  
   printf("배열 프로그램 예제\n");
  
   for(i=0; i<6; i++) {
      printf("fruit[%d] = %c, 저장번지 : %d\n", i, fruit[i], &fruit[i]);
   }

   for(i=0; i<6; i++) {
      printf("c_fruit[%d] = %c, 저장번지 : %d\n", i, c_fruit[i], &c_fruit[i]);
   }
  
   return 0;
}

----------------------------------------------------
 #include <stdio.h>

int main() {
   int gugudan[10][10], i, j;
  
   // 일반 구구단
   for(i=1; i<=9; i++) {
      for(j=1; j<=9; j++) {
         printf("%d * %d = %d\n", i, j, i*j);
      }
   }
  
   // 배열 구구단
   for(i=1; i<=9; i++) {
      for(j=1; j<=9; j++) {
         gugudan[i][j] = i * j;
         printf("%d * %d = %d\n", i, j, gugudan[i][j]);
      }
   }
  
   return 0;
}

 

// for문

#include<stdio.h>

int main() {
    int i, dan1, dan2, su;
  
    printf("단입력 : ");
    scanf("%d", &dan1);
  
    printf("단입력 : ");
    scanf("%d", &dan2);

 if(dan1 > dan2) {  
    for(i=dan1; i>=dan2; i--) {
       for(su=1; su<=9; su++) {
          printf("%d*%d=%2d\n", i, su, i*su);
       }
    }
 }
 else {
    for(i=dan1; i<=dan2; i++) {
       for(su=1; su<=9; su++) {
          printf("%d*%d=%2d\n", i, su, i*su);
       }
    }     
 }
      
    return 0;
}

=============================================================

 

// while문

#include<stdio.h>

int main() {
    int i, dan1, dan2, su;
  
    printf("단입력 : ");
    scanf("%d", &dan1);
  
    printf("단입력 : ");
    scanf("%d", &dan2);

 if(dan1 > dan2) {  
    i=dan1;
    while(i>=dan2) {
       su=1;
       while(su<=9) {
          printf("%d*%d=%2d\n", i, su, i*su);
          su++;
       }
       i--;
    }
 }
 else {
    i=dan1;
    while(i<=dan2) {
       su=1;
       while(su<=9) {
          printf("%d*%d=%2d\n", i, su, i*su);
          su++;
       }
       i++;
    }     
 }
      
    return 0;
}

 

=============================================================

 

// do~ while 문

#include<stdio.h>

int main() {
    int i, dan1, dan2, su;
  
    printf("단입력 : ");
    scanf("%d", &dan1);
  
    printf("단입력 : ");
    scanf("%d", &dan2);

 if(dan1 > dan2) {  
    i=dan1;
    do {
       su=1;
       do {
          printf("%d*%d=%2d\n", i, su, i*su);
          su++;
       } while(su<=9);
       i--;
    }while(i>=dan2);
 }
 
 else {
    i=dan1;
    do {
       su=1;
       do {
          printf("%d*%d=%2d\n", i, su, i*su);
          su++;
       }while(su<=9);
       i++;
    } while(i<=dan2);    
 }
      
    return 0;
}

 

 #include <stdio.h>

int main() {
    int i, dan1, dan2, su;
   
    printf("단입력 : ");
    scanf("%d", &dan1);
   
    printf("단입력 : ");
    scanf("%d", &dan2);
   
    for(i=dan1; i<=dan2; i++) {
       for(su=1; su<=9; su++) {
          printf("%d*%d=%2d\n", i, su, i*su);
       }
    }
       
    return 0;
}

 

#include<stdio.h>

int main() {
    int i, su1, su2, hap=0, odd=0, even=0;
  
    printf("첫번째 수 : ");
    scanf("%d", &su1);
  
    printf("두번째 수 : ");
    scanf("%d", &su2);
  
    for(i=su1;i<=su2;i++) {
          hap = hap + i;  //hap+=i
          if(i % 2 == 0) {
              even = even + i;
              printf("짝수 : %d, %d", i, even);
          }
          else {
              odd = odd + i;
              printf("\n홀수 : %d, %d", i, odd);
          }
        
    }
    printf("\n%d부터 %d까지 홀수합 : %d\n",su1, su2, odd);
    printf("%d부터 %d까지 짝수합 : %d\n",su1, su2, even);
    printf("%d부터 %d까지 토탈합 : %d\n",su1, su2, hap);
    return 0;
}

 

+ Recent posts