함수 예문

Developer/C 2012.07.13 20:28

#include<stdio.h>
double calculation(double x,double y,int z)
{ if(z==1)
  return x+y;
 if(z==2)
  return x-y;
 if(z==3)
  return x/y;
 if(z==4)
  return x*y;}

int main(void)
{
 int z;
 double x,y;
 printf("두 수를 입력하시오");
 scanf("%lf",&x);
 scanf("%lf",&y);
 printf("연산자를 입력하시오(1+ 2- 3/ 4*)");
 scanf("%d",&z);
 printf("%f",calculation(x,y,z));

 return 0;
}

 

 

#include<stdio.h>
int fibonacci(int i)
{
 if(i<=2)
  return 1;
 else
  return fibonacci(i-2)+fibonacci(i-1);
}

int main(void)
{
 int f=1;
 while(f<=10)
  {printf("%d\n",fibonacci(f));
   f++;}
 return 0;
}

 

 

많이들 쓰이는 함수 예문이다. 위는 계산기, 밑은 피보나치이다.

int fibonacci(int i)

와 같이 피보나치라는 int형 i라는 변수를 사용하는 함수를 선언해주고, 그것을 main에서 활용하는 것이다.

여러번 쓰거나 main이 너무 길떄 유용하다.

'Developer > C' 카테고리의 다른 글

함수 예문  (2) 2012.07.13
스위치 예문  (0) 2012.07.13
비트연산자 예제  (0) 2012.07.13
array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13

설정

트랙백

댓글

스위치 예문

Developer/C 2012.07.13 20:26

스위치1

#include<stdio.h>

int main(void)
{
     int number;
     printf("1~10의 정수를 입력하세용:");
     scanf("%d",&number);
     switch(number)
     {
     case 1:
           printf("A");
           break;
     case 2:
           printf("B");
           break;
     case 3:
           printf("C");
           break;
     case 4:
           printf("D");
           break;
     case 5:
           printf("E");
           break;
     case 6:
           printf("F");
           break;
     case 7:
           printf("G");
           break;
     case 8:
           printf("H");
           break;
     case 9:
           printf("I");
           break;
     case 10:
           printf("J");
           break;
     default:
           printf("1~10이 뭔지 모르냐 빙구야");
           break;

     }
     printf("\n");
     return 0;
}


스위치2

#include<stdio.h>

int main(void)
{
     int number;
     printf("몇월?:");
scanf("%d",&number);
switch(number)
{
case 2:
printf("28일");
break;
           case 4:
           case 6:
           case 9:
           case 11:
           printf("30일");
           break;
           case 1:
           case 3:
           case 5:
           case 7:
           case 8:
           case 10:
           case 12:
           printf("31일");
           break;
           default:
           printf("1년은 1~12월이에요. 태양력임^-^");
           break;
     }
     printf("\n");
     return 0;
}

 

스위치3

#include<stdio.h>

int main(void)
{
    char day;
    printf("요일을 입력해 BOA요~ 보기:(M T W t F S s) ");
    scanf("%c",&day);
    switch(day)
    {
    case 'M':
          printf("9~11컴개\n12운동\n13~14일반물리학\n15~16물리실험\n17밥\n18~22프로젝트or도서관");
          break;
    case 'T':
          printf("9~11창기\n12~13운동,밥\n14~17대영\n17~17.5스터디\n17.5~19SSF\n19~22도서관");
          break;
    case 'W':
          printf("9~10미적분\n11밥\n12진로탐색\n13운동\n14~16컴쿨렐레\n17밥\n18~22프로젝트or도서관");
          break;
    case 't':
          printf("9~12KGB\n13밥\n14~16컴쿨렐레\n17~17.5스터디\n17.5~19SSF\n19~22도서관");
          break;
    case 'F':
          printf("9~11한국경제\n12밥\n13운동\n14~16컴쿨렐레\n17밥\n18~22프로젝트or도서관");
          break;
    case 'S':
          printf("스터디or도서관");
          break;
    case 's':
          printf("9~15KGB\n16~자유");
          break;
    default:
          printf("요일은 월화수목금토일=1234567");
          break;

    }
    printf("\n");
    return 0;
}

 

윤달 계산

#include<stdio.h>

int main(void)
{
     int year,month,day;
     printf("서기 몇년?:");
     scanf("%d",&year);
     printf("몇월?:");
     scanf("%d",&month);

     switch(month)
     {
           case 2:
                 if((year % 4 == 0 && year % 100 != 0) || year % 400==0)
           day=29;
                 else day=28;
           break;

           case 4:
           case 6:
           case 9:
           case 11:
           day=30;
           break;

           case 1:
           case 3:
           case 5:
           case 7:
           case 8:
           case 10:
           case 12:
           day=31;
           break;

           default:
           printf("1년은 1~12월이에요. 태양력임^-^");
           break;
     }
     printf("%d년 %d월의 일수는 %d일 입니다.\n",year,month,day);
     return 0;
}

 

간단 연산 프로그램
#include<stdio.h>
int main(){
double no1,no2;
char calculation ;
printf("+-*/% 1개로 표현되는 연산을 입력하시오");
scanf("%lf%c%lf",no1,calculation,no2);

switch(calculation){
case(+): printf("%lf+%lf=%lf입니다",no1,no2,no1+no2); break;
case(-): printf("%lf-%lf=%lf입니다",no1,no2,no1-no2); break;
case(*): printf("%lf*%lf=%lf입니다",no1,no2,no1*no2); break;
case(/): prfintf("%lf/%lf=%lf입니다",no1,no2,no1/no2); break;
case(%): printf("%lf%%lf=%lf입니다",no1,no2,no1%no2); break;
default: printf("+-*/%중에 하나만 해주세용~^-^!!"); break;
}
printf("\n");
return 0;
}

 

#include<stdio.h>
int main()
{
double score;
printf("당신의 점수를 입력하세요<1~100까지의 정수형>:");
scanf("%lf",score);

switch{
case()
printf("");

}
printf("\n");
return 0;
}

0~59 공부 좀 하세요
60~79 좀 더 노력 하세요.
80~100 참 잘했어요.

 

대략 이런식으로 활용된다. 그리고 난 이거 틀려서 컴개 학점 A다. ㅡㅡ;;

'Developer > C' 카테고리의 다른 글

함수 예문  (2) 2012.07.13
스위치 예문  (0) 2012.07.13
비트연산자 예제  (0) 2012.07.13
array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13

설정

트랙백

댓글

비트연산자 예제

Developer/C 2012.07.13 20:24

#include<stdio.h>
int main(){
     int a=10,b=20,c;
    
     c=a&b;
     printf("%d AND %d = %d\n",a,b,c);

     c=a|b;
     printf("%d OR %d = %d\n",a,b,c);

     c=a^b;
     printf("%d XOR %d = %d\n",a,b,c);
    
     return 0;
}

 

그렇다고 합니다. 그냥 &,|,^이 어떻게 쓰이는지 보여주는 코드다.

'Developer > C' 카테고리의 다른 글

함수 예문  (2) 2012.07.13
스위치 예문  (0) 2012.07.13
비트연산자 예제  (0) 2012.07.13
array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13

설정

트랙백

댓글

array 예제

Developer/C 2012.07.13 20:23

 

 

#include<stdio.h>
#include<string.h>

int main()
{
 int i,flag=0;
 char month[12][10]={"January","February","March","April","May","June","July","August","September","October","November","December"},st[10];
 printf("Input: ");
 gets(st);
 printf("Output: ");
 for(i=0;i<12;i++){
  if(strcmp(st,month[i])==0){
   flag=1;
   break;
  }
 }
 if(flag==1){
  switch(i){
  case 0:
   puts("Yes, It's 1st month in the year.");
   break;
  case 1:
   puts("Yes, It's 2nd month in the year.");
   break;
  case 2:
   puts("Yes, It's 3rd month in the year.");
   break;
  case 11:
   puts("Yes, It's last month in the year.");
   break;
  default:
   printf("Yes, It's %dth month in the year.\n",i+1);
   break;
  }
 }
 else puts("Invalid month name.");
 return 0;
}

 

연대 컴공친구가 준 문제다. 그냥 딱보면 답 나온다. (근데 문제가 영어다 ㅡㅡ 이래서 ACM-ICPC같은건 어떻게 푸는거지 하는 생각이 든다.)

요는 2차원행렬을 이용하여 달들의 이름을 적고, 그것을 입력받은 다음에 케이스문을 이용하여 몇번째 달인지를 출력해주는 것이다. 아니면 아니라고 하고.

'Developer > C' 카테고리의 다른 글

스위치 예문  (0) 2012.07.13
비트연산자 예제  (0) 2012.07.13
array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13
C언어콘서트 6장 프로그래밍 답  (2) 2012.07.13

설정

트랙백

댓글

if문과 그 예제

Developer/C 2012.07.13 20:20

#include<stdio.h>
int main(void)
{
     int number;

     printf("정수를 입력하시오:");
     scanf("%d", &number);

     if(number>0)
     printf("양수입니다.\n");
    
     else if(number<0) // else를 붙이지 않는 경우는 위의 if에서 부합되는 조건이 있더라도, 또 다시 계산하게 된다.
     printf("음수입니다.\n");

     else // else만 쓸 경우 위의 여러 조건에 부합되지 않는 나머지가 포함된다.
     printf("0입니다.\n");

     return 0;
}

#include<stdio.h>
int main(void)
{
     int number;

     printf("정수를 입력하시오:");
     scanf("%i", &number);

     if(number%2==0) // 조건식에 연산도 가능
     printf("짝수입니다.\n"); // 짝수 먼저하면... 안됨ㅠㅠ 계산 다시 해보셈
    
     else
     printf("홀수입니다.\n");

     return 0;
}

#include<stdio.h>
int main(void)
{
     char code;
     printf("입력하슈:");
     scanf("%c");
    

     return 0;
}

#include<stdio.h>
int main(void)
{
     int kor,en,ma,a;
    
     printf("각 과목당 점수 40점이상, 평균 60점 이상이여야 합격하도록 작성하세요\n\n");
     printf("국어 점수를 입력하세요..");
     scanf("%d", &kor);
     printf("영어 점수를 입력하세요..");
     scanf("%d", &en);
     printf("수학 점수를 입력하세요..");
     scanf("%d", &ma);
     a=(kor+en+ma)/3; // c언어는 절차지향!! 순서를 꼭 지켜줄것!
     printf("국어점수는 %d점, 영어점수는 %d점, 수학점수는 %d점, 평균은 %d점 입니다.", kor,en,ma,a);
    
     if(a>=60&&kor>=40&&en>=40&&ma>=40) // && and , || or , 이상과 초과의 차이를 이해할 것.
     printf("합격!\n");
     else
     printf("불합격!\n");

     return 0;
}

 

#include<stdio.h>
int main(void)
{
     char sex,m,w;
     double M,kg,BMI;

     printf("m(남자) or w(여자) : ");
     scanf("%c",&sex);
     printf("키몇임?(단위:M) : ");
     scanf("%lf",&M);

     if(sex=='m')
           printf("%lf가 너님의 표준몸무게",(M-1)*90);
     if(sex=='w')
           printf("%lf가 너님의 표준몸무게",(M-1)*85);

     printf("\n몸무게 몇임?(단위:kg) : ");
     scanf("%d",&kg);

     BMI=kg/(M*M);

     if(BMI<18.5)
           printf("저체중");
     else if(BMI<23)
           printf("정상");
     else if(BMI<25)
           printf("과체중");
     else if(BMI<30)
           printf("비만");
     else
           printf("고도비만");

     return 0;
}

 

if문은 어떤 언어를 쓰던간에 지겹게 보는 더러운놈이다. 자주쓰이면서도 느리고 더럽다. 찰지네.

사용법은 다음과 같다.

 

if(식)

~~~~~

 

만약 식이 성립한다면 ~~~~~을 실행시키는 것이다. 주의할점은

int a=0;

if(a==)

printf("즐");

printf("엿");

이라고 입력하면 즐 까지만 나오고

int a=0;

if(a==)

{

printf("즐");

printf("엿");

}

이렇게해야 즐엿 까지 나온다는거다. 여기서 잘틀린다.

'Developer > C' 카테고리의 다른 글

비트연산자 예제  (0) 2012.07.13
array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13
C언어콘서트 6장 프로그래밍 답  (2) 2012.07.13
C언어콘서트 5장 프로그래밍 답  (0) 2012.07.13

설정

트랙백

댓글

ASCII코드란? (+예제)

Developer/C 2012.07.13 20:18

아스키
#include<stdio.h>
int main()
{
     char c;
     int ascii;
    
     printf(">");
     scanf(" %c",&c);
    
     ascii=c;

     if(97<=c&&c<=122)
           printf("소문자임");
     else if(65<=c&&c<90)
           printf("대문자임");
     else
           printf("알파벳아님");

     printf("\n");

     return 0;
}

 

아스키코드는 아메리칸 스탠다드 코드 for 인터네셔널 인터랭귀지인가 뭐시기로서 쉽게말해서 부호체계이다. 이게 왜 중요하냐면 알파벳 순서대로 하나씩 올리거나 내리는 경우에 이런걸 써먹기 때문이다. 그냥 대소문자 A가 뭔지정도만 알아두면 좋다. 그게 뭔지는 저 예제보면 나온다. 저 코드를 이해 못 하겠으면 공부 다시하면 된다.

'Developer > C' 카테고리의 다른 글

array 예제  (0) 2012.07.13
if문과 그 예제  (0) 2012.07.13
ASCII코드란? (+예제)  (0) 2012.07.13
C언어콘서트 6장 프로그래밍 답  (2) 2012.07.13
C언어콘서트 5장 프로그래밍 답  (0) 2012.07.13
C언어콘서트 4장 프로그래밍 답  (0) 2012.07.13

설정

트랙백

댓글