[대체] 3. 반복문(for)

2011. 2. 16. 01:06 from PROGRAMMING/C

3. 반복문

for(반복횟수가 정확히 떨어지는 경우 주로 사용), while, do~while

1) for(변수=초기치;조건식;증감식)

   {

문1;

문2;

   }

 

ex1.) for를 이용하여 10,20,30,40,50을 출력하고 합 계산

#include<stdio.h>
int main()
{
    int a,s=0;
    for(a=10;a<=50;a+=10)
    {
        printf("%d\n",a);
        s+=a;
    }
    //printf("for를 탈출해서의 a값 : %d\n",a);//60
    printf("--------------\n");
    printf("합 : %d\n",s);
    return 0;
}

 

Q5)

/* 5.c 수를 입력하여 그 수의 factorial값을 구해 아래처럼!
수? 3  [3!=1*2*3, 6!=1*2*3*4*5*6]
3! = 6
*/

#include<stdio.h>
int main()
{
    int a,i;
    double f;
    printf("수?");
    scanf("%d",&a);
    f=1,0;
    for(i=1;i<=a;i++)
    {
        f*i;//f=f*i;
    }
    //printf("%d!=%f\n"a,f);
    //printf("%d!=%e\n"a,f);//xxxxxxe+xxx
    printf("d!=%.3e\n",a,f);
    //printf("%d!=%12.3e\n"a,f);
    return 0;
    }

Q6)

① 두 수를 입력 받아, 두 수 사이의 수 출력, 합 출력

/* 6.c 수를 입력받아, 두 수 사이의 수를 출력하고 합도 출력!
a? 10
b? 20
11 12 13... 19 합 : xxx

a?
b?

...
a? 1
b? 1(같은 수의 입력시 종료!)
*/

#include<stdio.h>
int main()
{
    int a,b,i,s;
    printf("a?");
    scanf("%d",&a);
    printf("b?");
    scanf("%d",&b);
    s=0;
   
    for (i=a+1;i<b;i++)
    {
        printf("%d",i);
        s+=i;
    }
    printf("합 : %d\n",s);
    return 0;
}

② 같은 수가 입력되면 종료

/* 6.c 수를 입력받아, 두 수 사이의 수를 출력하고 합도 출력!
a? 10
b? 20
11 12 13... 19 합 : xxx

a? 2
b? 5
3 4 합 : xx

...
a? 1
b? 1(같은 수의 입력시 종료!)
*/

#include<stdio.h>
int main()
{
    int a,b,i,s,temp;
Dasi:
    printf("a?");
    scanf("%d",&a);
    printf("b?");
    scanf("%d",&b);
    if(a = b) return 0;
    if(a > b)
    {
        //방바꾸기
        temp=a;
        a=b;
        b=temp;
    }
    //printf("a=%d\tb=%d\n",a,b);
    s=0;
    for (i=a+1;i<b;i++)
    {
        printf(" %d",i);
        s+=i;
    }
    printf("합 : %d\n",s);
    goto Dasi;
    return 0;
}
Q7) 6의 약수의 갯수와 합 구하기

#include<stdio.h>
int main()
{
    int a,i,cn;
    printf("수?");
    scanf("%d",&a);
    printf("%d의 약수 : ",a);
    cn=0;
    for(i=1;i<=a;i++)
    {
        if(a%i==0)
        {
            printf("%d ",i);
            cn++;
        }

    }

 printf(", 총 개수 : %d\n",cn);
 return 0;

}

Posted by 마마필로 :