switch 문
switch (score)
{
{
case 10 : // 정수 10이 올 경우
grade='A';
break; // switch 문 종료
case 9 : // 정수 9가 올 경우
grade='B';
break;
↓
↓
↓
default : // 해당사항 없을 경우
grade='F';
break;
}
스위치문에는 논리식을 쓸수 없다. 경우가 많을 경우에 if문보다 유용하다.
score 값이 10이면 10으로 점프 grade='A';실행하고 종료 9면 9로 점프 해당사항이없다면 default로 간다.
getchar / putchar 문
#include <stdio.h>
int main ()
{
char ch;
printf("Please enter any character: ");
ch=getchar(); // 문자입력 (1byte)
putchar(ch); // 문자출력
printf(" is a letter you typed.\n");
fflush(stdin); // 버퍼에 입력된 엔터키를 삭제 (리눅스에서는 안됨)
printf("Please enter any character: ");
scanf("%c", &ch);
printf("%c is a letter you typed.\n", ch);
return 0;
}
fflush(stdin);은 윈도우에서는 되지만 리눅스에서는 안된다. 리눅스에서는 getchar();를
대신 써주면 된다.
getchar()함수는 버퍼를 통해 입력을 받는다.(ANSI C 표준)
getche()함수는 버퍼를 통하지 않고 입력을 받는다. (윈도우 o 리눅스 x)
getch()함수는 getche함수와 같으나 입력값을 화면에는 표시해주지 않는다. (윈도우 o 리눅스 x)
int main ()
{
char ch;
printf("Please enter any character: ");
ch=getchar(); // 문자입력 (1byte)
putchar(ch); // 문자출력
printf(" is a letter you typed.\n");
fflush(stdin); // 버퍼에 입력된 엔터키를 삭제 (리눅스에서는 안됨)
printf("Please enter any character: ");
scanf("%c", &ch);
printf("%c is a letter you typed.\n", ch);
return 0;
}
fflush(stdin);은 윈도우에서는 되지만 리눅스에서는 안된다. 리눅스에서는 getchar();를
대신 써주면 된다.
getchar()함수는 버퍼를 통해 입력을 받는다.(ANSI C 표준)
getche()함수는 버퍼를 통하지 않고 입력을 받는다. (윈도우 o 리눅스 x)
getch()함수는 getche함수와 같으나 입력값을 화면에는 표시해주지 않는다. (윈도우 o 리눅스 x)
while(논리식) 명령문
#include <stdio.h>
int main ()
{
int num;
num=0; // 제어변수 n의 초기화
while(num<=5) // 반복여부를 결정하는 논리식(참이면 {}안 계속 반복 실행.)
{
printf("%d\t", num);
num=num+1; // 제어변수의 값의 변경
}
printf("\n");
return 0;
}
반복 제어문으로써 논리식이 참인동안 {}안의 프로그램을 계속해서 반복한다. 거짓일경우 빠져나옴
변수 num의 값이 5보다 클때까지 계속 {}를 실행함.
프로그램 실행시 출력값은 0 1 2 3 4 5 가 나온다.
int main ()
{
int num;
num=0; // 제어변수 n의 초기화
while(num<=5) // 반복여부를 결정하는 논리식(참이면 {}안 계속 반복 실행.)
{
printf("%d\t", num);
num=num+1; // 제어변수의 값의 변경
}
printf("\n");
return 0;
}
반복 제어문으로써 논리식이 참인동안 {}안의 프로그램을 계속해서 반복한다. 거짓일경우 빠져나옴
변수 num의 값이 5보다 클때까지 계속 {}를 실행함.
프로그램 실행시 출력값은 0 1 2 3 4 5 가 나온다.
'C언어 > 강의' 카테고리의 다른 글
2010년 10월 12일 화요일 (소수 출력 & 포인터) (0) | 2010.10.12 |
---|---|
2010년 10월 11일 월요일 (for 문) (0) | 2010.10.11 |
2010년 10월 07일 목요일 ( if() else명령문 (0) | 2010.10.07 |
2010년 10월 06일 수요일 ( 논리연산자 & scanf() 함수 & if() 명령문 ) (0) | 2010.10.06 |
2010년 10월 05일 화요일 (문자열 선언 & 연산자) (0) | 2010.10.05 |