do~while

do

{

  문1;

  문2;

}while(조건식);

한번은 {}안을 실행하고 조건식을 만족하면 do로 올라가고, 만족하지 못하면 while{}이후의 문장을 실행

 

/*16do~while.c

10 20 30 40 50
*/

#include<stdio.h>
int main()
{
    int i;
    i=10;//초기치
    do
    {
        printf("%d ",i);
        i+=10;//증감식
    }while(i<=50);//조건식
    return 0;
}

 

문)

/*17.c 평가는 평균으로 A,B,C,D,F
번호? 11
이름? 홍 길 동
국어,영어,수학??? 88 78 89
--------------------------
번호 : xx    이름 : xxx
총점 : xxx   평균 : xx.x
평가 : x

계속하시겠어요(y/ Y/n/N}?A
계속하시겠어요(y/ Y/n/N}?B
계속하시겠어요(y/ Y/n/N}?y   [y/Y]

번호? 66
...

계속하시겠어요(y/Y/n/N) ? N   [n/N]
작업종료!

 

콘솔입력함수: enter key없이 한 문자 할당

 

변수=getche();//모니터에 입력문자 나타남

변수=getch();//모니터에 입력문자 나타나지 않음


*/
#include<stdio.h>
#include<conio.h>//변수=getche();변수=getch()
#include<ctype.h>
int main()
{
    int no,a,b,c,t;
    char ch,grade,name[15];
    float ave;
    while(1)
    {
        printf("\n번호? ");
        scanf("%d",&no);
        printf("이름? ");
        fflush(stdin);
        gets(name);
        printf("국어,영어,수학??? ");
        scanf("%d%d%d",&a,&b,&c);
        t=a+b+c;
        ave=t/3.0f;
        switch((int)ave/10) //(int)98.2-->98   98/10  -->9(몫)
        {
            case 10:
            case 9:grade='A';break;
            case 8:grade='B';break;
            case 7:grade='C';break;
            case 6:grade='D';break;
            default:grade='F';break;
        }//switch
        printf("--------------------------\n");
        printf("번호 7: %d\t이름 : %s\n",no,name);
        printf("총점 : %d\t평균 : %.1f\n",t,ave);
        printf("평가 : %c\n\n",grade);
          do
          {
            printf("\n계속하시겠어요(y/Y/n/N) ? ");
            fflush(stdin);
            ch=tolower(getche());//'y','n','a'
          }while(ch!='y' && ch!='n');//주의
          if(ch=='n') break;
        }//while
        printf("\n작업종료!\n");
        return 0;
}

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

[대체] 9.배열 ① 일차원배열  (0) 2011.02.17
[대체] 8.다중반복문  (0) 2011.02.16
[대체] 6. continue;  (0) 2011.02.16
[대체] 5. 반복문(while, 반복문에서의 break)  (0) 2011.02.16
[대체] 4. 난수  (0) 2011.02.16
Posted by 마마필로 :