-
C언어 공부 되새김 Win32Api구현해보기 9편 비교문 ifC언어 공부 되새김 Win32api로 구현해보기 2019. 10. 22. 22:28
컴퓨터 프로그래밍 C언어 공부를 콘솔로 공부하고 윈도우 프로그래밍으로 구현하는데
콘솔로 공부하던 소스를 윈도우 프로그래밍 기본 코드를 제외하고 함수 형식으로 콘솔 소스와
비슷하게 구현해보려고 합니다.
콘솔은 쉽고 윈도우는 어렵다가 아니고 윈도우 프로그래밍을 시작부터 접하면서 친숙해졌으면 합니다.
구현은 무료 통합개발 환경인 Dev-C++ 4.9.9.2로 구현합니다.
지난 편에는프로그래밍의 기초 반복문인 for문을 통해 구구단을 구현하였습니다.
이번 편에는 비교문 if를 이용하여 구구단의 결과가 홀수일 경우 출력하는 프로그램을 구현하겠습니다.
시작하기 전 C언어 계산에서
정수 (사칙연산) 정수 = 정수
정수 (사칙연산) 실수 = 실수
위 사실을 이용하여 홀수를 찾을 수 있습니다.
간단히 나머지 계산법(mod)으로도 찾을 수 있습니다.▷ Console프로그래밍
void main(int argc, char *argv[])
{
int i;
int Dan=3;
for(i=1;i<10;i++){
// if((Dan*i)/2!=((Dan*i)+1)/2){ 정수 계산법에 의한 홀수 비교
if((Dan*i)%2==1){ // Mod계산법에 의한 홀수 비교
printf("%d * %d = %d\n",Dan,i,Dan*i);
}
}
system("PAUSE");
▷ Windows프로그래밍 TextOut
void Study_Main(HDC hdc){
char strline[80];
int i;
int Dan=7;
for(i=1;i<10;i++){
wsprintf(strline,TEXT("%d * %d = %d"), Dan, i, Dan*i); // 출력할 줄 생성
if(Dan*i%2==1){
TextOut(hdc, 0,20*i,strline,lstrlen(strline)); // 가로 0, 세로 20*i 위치에 출력
}
}
}- 하핫 TextOut출력할 때 세로 위치가 i값에 따라 변하니 Console처럼 붙이는 것은 따로 연습하세요~
▷ Windows프로그래밍 DrawText
void Study_Main(HDC hdc){
char str[80*23];
char strline[80];
int i;
int Dan=7;
for(i=1;i<10;i++){
wsprintf(strline,TEXT("%d * %d = %d\n"), Dan, i, Dan*i);
if(Dan*i%2==1){
strcat(str,strline);
}
}
// 화면의 (0, 0) 위치부터 (640, 480) 위치까지 사각형 영역을 만든다
RECT rt = {0, 0, 640, 480};
DrawText(hdc, str, -1, &rt, DT_LEFT | DT_WORDBREAK);
DrawText 출력법은 다행히 Console출력과 똑같네요 ^^;
오늘은 여기까지입니다.
'C언어 공부 되새김 Win32api로 구현해보기' 카테고리의 다른 글
C언어 공부 되새김 Win32Api구현해보기 11편 조건문 switch case (0) 2019.10.24 C언어 공부 되새김 Win32Api구현해보기 10편 비교문 if else (0) 2019.10.23 C언어 공부 되새김 Win32Api구현해보기 8편 반복문 for - 2단 구구단 (0) 2019.10.22 C언어 공부 되새김 Win32Api구현해보기 7편 반복문 for - DrawText (0) 2019.10.21 C언어 공부 되새김 Win32Api구현해보기 6편 반복문 for - TextOut (0) 2019.10.21