기초 C프로그램 (소수구하기,야구게임,최대값등)
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
해당 자료는 10페이지 까지만 미리보기를 제공합니다.
10페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

기초 C프로그램 (소수구하기,야구게임,최대값등)에 대한 보고서 자료입니다.

본문내용

총 날짜의 합을 이용하여 주단위로 환산하여 1주가 지날 때 마다 줄 바꿈을 해주며 출력한다.
▷소스 부분
#include
void main()
{
int iMonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int iYear,iMon,isLunar,iTotal,i,iWeek;
printf("년도와 월을입력 [YYYY MM] = "); //년도와 월을 입력받음.
scanf("%d%d",&iYear,&iMon);
iTotal = 0;
for(i=0;i {
isLunar = (i%4==0 && i%100!=0 || i%400==0) ? 1 : 0;
//윤년이면 1을 입력. 아니면 0을 입력
iTotal = iTotal + 365 + isLunar; //입력년도 전까지의 총날짜 합 입력.
}
isLunar = (iYear%4==0 && iYear%100!=0 || iYear%400==0) ? 1 : 0;
//입력받은 년도가 윤년이면 1을 입력, 아니면 0을 입력
for(i=0;i iTotal += iMonth[i];
//입력받은년도의 입력달까지의 날자를 총날자합에 더함.
if (iMon>2)
iTotal += isLunar; //입력받은 달이 2월 이후면 윤년변수를 더함.
printf("날자의 총합은 = %d\n",iTotal); //총 날짜 합 출력.
iWeek = (6+iTotal) % 7;
printf(" %4d 년 %2d 월 \n\n",iYear,iMon);
printf(" 일 월 화 수 목 금 토\n");
for(i=0;i printf(" ");
for(i=0;i {
if ((i+iWeek)%7==0) //1주가 지날 때마다 줄 바꿈.
printf("\n");
printf(" %2d",i+1); //날짜 출력.
}
printf("\n");
}
▷결과 화면
- 2008년 2월 // 2009년 2월 // 2009년 5월
## 과 제 14##
야구게임을 작성하시오.
▷프로그램 작성에 대한 설명.
- 9이하의 난수를 3개를 발생시켜 배열에 저장한다. 사용자로부터 3개의 수를 입력받아 입력받은 수의 위치가 값까지 맞으면 strike의 값을 1증가. 위치는 틀리지만 값이 맞으면 ball의 값 1증가. 10번의 기회동안 맞추면 정답 맞추지 못하면 실패라고 출력.
▷순 서 도
▷소스 부분
#include
#include
#include
void main()
{
int baseball[3]; //난수를 입력할 배열 선언
int count=1, i; //몇번째인지 입력할 변수와 for문에 이용할 변수 선언
int strike, ball, out; //스트라이스, 볼, 아웃을 입력할 변수 선언
int one, two, three; //사용자에게 입력받을 변수 선언
srand( (unsigned)time( NULL ) );
for(i=0;i<3;i++)
{
baseball[i] = rand() % 9; //9이하의 난수 생성후 배열에 저장
}
while(count!=11) //count가 11이 아니면 루프실행
{
printf("야구 게임을 시작합니다. (%d번째 기회)\n", count);
printf("3개의 숫자를 입력하세요:");
//사용자에게 3개의 숫자를 입력받음
scanf("%d %d %d", &one, &two, &three);
strike=0, ball=0, out=0; //매 기회마다 0으로 초기화 해줌.
if(one == baseball[0])
strike++; //one이 baseball[0]과 같으면 1스트라이크.
if(one==baseball[1]||one == baseball[2])
ball++; //one이 baseball[1]또는 baseball[2]와 같으면 1볼.
if(two == baseball[0]||two == baseball[2])
ball++; //two가 baseball[0]또는 baseball[2]와 같으면 1볼.
if(two == baseball[1])
strike++;//two가 baseball[1]과 같으면 1스트라이크.
if(three == baseball[0]||three == baseball[1])
ball++; //three가 baseball[0]또는 baseball[1]와 같으면 1볼.
if(three == baseball[2])
strike++;//three가 baseball[2]과 같으면 1스트라이크.
if((one != baseball[0])&&(one != baseball[1])&&(one != baseball[2]))
out++; //one과 같은 숫자가 배열내에 없다면 1아웃.
if((two != baseball[0])&&(two != baseball[1])&&(two != baseball[2]))
out++; //two와 같은 숫자가 배열내에 없다면 1아웃.
if((three!=baseball[0])&&(three!=baseball[1])&&(three!=baseball[2]))
out++; //three와 같은 숫자가 배열내에 없다면 1아웃.
if(strike==3) //3스트라이크라면
{
printf("정답입니다.\n");
printf("%d 번째 맞추셨습니다.\n", count);
break; //while문 탈출.
}
printf("%d 볼, %d 스트라이크, %d 아웃.", ball, strike, out);
printf("다시 시도하세요.\n\n");
count++; //시도횟수 증가.
}
if(count==11)
{
printf("정답은 %d %d %d.\n", baseball[0], baseball[1], baseball[2]);
printf("10번 동안 못마춘 당신은 바보!!\n");
}
}
▷결과 화면
- 10번안에 정답을 맞혔을 때의 결과 화면.
- 10번안에 정답을 맞히지 못하였을 경우의 결과화면.
  • 가격3,000
  • 페이지수41페이지
  • 등록일2010.04.29
  • 저작시기2008.11
  • 파일형식한글(hwp)
  • 자료번호#606402
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니