본문 바로가기
프로그래밍/c언어

열혈강의 c 20장 도전 프로그래밍 three

by -현's- 2011. 4. 9.
반응형

1. 4 x 4 int형 2차원 배열을 선언하고, 모든 요소를 아래 그림의 왼쪽에 있는 형태와 동일하게 초기화하자. 그리고 배열의 요소들을 오른족 방향
으로 90도씩 이동시켜서 출력하는 프로그램을 작성해보자.


#include<stdio.h>


int main()
{


 int i, j;
 int k=1;
 int arr[4][4];


 for(i=0; i<4; i++)
 {
  for(j=0; j<4; j++)
  {
   arr[i][j]=k;
    k++;
  }
 }

 for(i=0; i<4; i++)
 {
  
  for(j=0; j<4; j++)
  {
   printf("%d ", arr[i][j]);
  }
  printf("\n");
 }

 printf("\n");

 

 

 
 for(i=0; i<4; i++)
 {
  
  for(j=0; j<4; j++)
  {
   printf("%d ", arr[3-j][i]);
  }
  printf("\n");
 }

 printf("\n");

 for(i=0; i<4; i++)
 {
  
  for(j=0; j<4; j++)
  {
   printf("%d ", arr[3-i][3-j]);
  }
  printf("\n");
 }
 printf("\n");

 for(i=0; i<4; i++)
 {
  
  for(j=0; j<4; j++)
  {
   printf("%d ", arr[j][3-i]);
  }
  printf("\n");
 }
 

return 0;
}

2. 달팽이 형태의 배열을 만들어 주는 프로그램을 작성해보자.

3.

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


int main()
{
 int i;

 printf("난수의 범위:0부터 99까지 \n");

 for(i=0; i<5; i++)
  printf("난수 출력: %d \n", rand()%100);

 

 return 0;

}

 

 

4.


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


int main()
{


 int a, i;


 srand((int)time(NULL));

 

 printf("주사위 결과: %d %d\n", rand()%6+1, rand()%6+1);


 return 0;

}

 


5.

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

 

int main()
{
 int na;
 int com;
 int win=0, draw=0;

 while(1)
 {
  printf("바위는 1, 가위는 2, 보는 3: \n");
  scanf("%d", &na);
  srand((int)time(NULL));
  com=rand()%3+1;

  if(na==1)
  {
   if(com==1)
   {
    printf("당신은 바위선택, 컴퓨터는 바위선택, 비겼습니다\n");
    draw++;
   }
   else if(com==2)
   {
    printf("당신은 바위선택, 컴퓨터는 가위선택, 이겼습니다\n");
    win++;
   }
   else if(com==3)
    break;
  }

  else if(na==2)
  {
    if(com==1)
    break;

   else if(com==2)
   {
    printf("당신은 가위선택, 컴퓨터는 가위선택, 비겼습니다\n");
    draw++;
   }
   else if(com==3)
   {
    printf("당신은 가위선택, 컴퓨터는 보선택, 이겼습니다\n");
    win++;
   }
  }
  else if(na==3)
  {
   if(com==1)
   {
    win++;
    printf("당신은 보선택, 컴퓨터는 바위선택, 이겼습니다\n");
   }

   else if(com==2)
    break;

   else if(com==3)
   {
    printf("당신은 보선택, 컴퓨터는 보선택, 비겼습니다\n");
    draw++;
   }
  }
 
  
  
  
 }

 printf("게임의 결과: %d승, %d무 \n", win, draw);

 

 return 0;
}

 

 


6.


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

int main()
{
 int a, b, c;
 int aa, bb, cc;
 int st, ball;
 int n=0;

 aa=rand()%10;
 bb=rand()%10;
 cc=rand()%10;


 printf("게임 스타트\n\n");

 while(1)
 {
  st=0, ball=0;
  printf("3개의 숫자선택: ");
  scanf("%d %d %d", &a, &b, &c);


  if(aa==a)
  {
   st++;
  }
  if(bb==b)
  {
   st++;
  }
  if(cc==c)
  {
   st++;
  }

  if(aa==b)
  {
   ball++;
  }  
  if(aa==c)
  {
   ball++;
  }  
  if(bb==a)
  {
   ball++;
  }  
  if(bb==c)
  {
   ball++;
  }
  if(cc==a)
  {
   ball++;
  }
  if(cc==b)
  {
   ball++;
  }

  n++;
  printf("%d번째 도전결과: %d strike, %d ball\n\n", n, st, ball);

  if(st==3)
  {
   break;
  }
 }
 
 printf("Game End!\n");

 return 0;
}

반응형

댓글