C 언어 기초 연습

15093 단어 c 언어 기초
1. 윤년인지 아닌지 판단
#include 

int main()
{
    int year;
    int leap;

    printf("Please input a year:");
    scanf("%d",&year);
    //    

    if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
    {
        printf("%d is a leap year!
"
,year); } else { printf("%d is not a leap year!
"
,year); } // 4 100 400 return 0; }

2. 소수인지 아닌지 판단
#include 

int main()
{
    int prime(int n);                       //         
    int n = 0;
    int i = 0;

    for( n = 100; n <= 200; n++ )
    {
        i = prime(n);                       //        
        if( i == 1)                         
        //     1 ,       ,               
        {
            printf("%4d",n);
        }
    }
    printf("
"
); return 0; } int prime(int n) { int i; for( i = 2; i < n; i++ ) { if ( n % i == 0 ) { return 0; } } return 1; // , , , , 0, , 1 }

3. 두 수의 최대 공약수와 최소 공배수를 구한다
#include 

int gyue( int m, int n )
{
    int temp;
    int z;

    if( m < n )
    {
        temp = m;
        m = n;
        n = temp;
    }
    //                  ,     

    while( n != 0 )
    {
        z = m % n;
        m = n;
        n = z;
    }
    //m%n   z, z=0, m         , z != 0, m = n,n = z,     

    return m;
}

int gbei( int m, int n, int i )
{
    return (m * n / i);
}
//                   
int main()
{
    int m;
    int n;
    int i;
    int j;

    printf("        :");
    scanf("%d,%d",&m,&n);
    //       

    i = gyue(m,n);                          //         
    j = gbei(m,n,i);                        //         

    printf("           :%d
"
,i); printf(" :%d
"
,j); return 0; }

4. 두 수의 가감승제를 계산한다
#include 

int main()
{
    int add( int a, int b );
    int sub( int a, int b );
    int mul( int a, int b );
    int div( int a, int b );
    //          

    int a = 0;
    int b = 0;
    int c = 0;

    printf("plesae input a num a:");
    scanf("%d",&a);
    printf("plesae input a num b:");
    scanf("%d",&b);
    //  a b  

    c = add( a, b );
    printf("a + b =%d
"
,c); // c = sub( a, b ); printf("a - b =%d
"
,c); // c = mul( a, b ); printf("a * b =%d
"
,c); // c = div( a, b ); printf("a / b =%d
"
,c); // return 0; } int add( int a, int b ) { return a + b; } int sub( int a, int b ) { return a - b; } int mul( int a, int b ) { return a * b; } int div( int a, int b ) { return a / b; }

5. 날짜를 입력하여 해당 날짜가 일년의 며칠인지 판단한다.
#include 

int leapyear(int n)
{
    if(( n % 4 == 0 && n % 100 != 0) || ( n % 400 == 0 ))
    {
        return 1;
    }
    else
    {
        return 0;
    }
}
//      ,       4      100     400,    ,  1

int main()
{
    int year;
    int mouth;
    int day;
    int i = 0;
    int j = 0;
    int result = 0;
    int a[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
    //              

    printf("      :");
    scanf("%d,%d,%d",&year,&mouth,&day);
    //          year mouth day

    for ( i = 0; i < mouth - 1; i++ )
    {
        result = a[i] + result;
    }
    //              

    result = result + day;

    j = leapyear(year);
    if( j == 1 )
    {
        if( mouth > 2)
        {
            result += 1;
        }
    }
    //     ,      2,  +1

    printf("   %d 
"
,result); return 0; }

6, 입력 정수, 역순 출력
#include 

int fun ( int n )
{
    int a = 0;
    int b = 0;
    while( n != 0 )
    {
        a = n % 10;                         //a  n        
        b = b * 10 + a;                 
        n /= 10;
    }
    // n    b 

    return b;
}

int main()
{
    int num;
    int i;

    printf("       :
"
); scanf("%d",&num); // i = fun( num ); printf(" :%d
"
,i); // fun , i , i return 0; }

7. 1-100의 합을 구한다
#include 

int main()
{
    int i = 1;
    int sum = 0;

    for ( i = 1; i <= 100; i++)
    {
        sum = sum + i;
    }

    printf("1 100     %d
"
,sum); }

8. 200-300 사이에 3으로 나누어지지 않는 수를 구한다
#include

int main()
{
    int i = 200;
    int count = 0;

    printf("200 300     3     :
"
); for( i = 200; i <= 300; i++ ) { if( i % 3 != 0 ) { printf("%5d",i); count++; // 3 , , 5 , count+1 if( count % 5 ==0) { printf("
"
); } // count 5 , 5 , } } printf("
"
); return 0; }

좋은 웹페이지 즐겨찾기