글
# 기본과제 및 제출 양식
1. 전처리문이 무엇인지 조사하고 다음 전처리문의 용도와 사용 예시를 적으시오. (0.5시간 소요)
가. #include
자주 사용되는 함수를 정의한 헤더파일을 불러오는 전처리문이다. 컴파일 전에 <>안에 있는
헤더파일 내용을 가져온다. 하나의 파일에 모든 코드를 적을 순 없으므로 파일을 분활한 다음
그것들의 헤더파일을 #include를 통해 접근하여 사용한다.
대표적인 예 : #include<stdio.h> - 컴파일러가 지정한 위치에서 stdio.h를 찾을 수 있다.
나. #define
매크로를 정의하거나 매크로 상수, 매크로 함수를 만들때 사용한다.
함수나 상수를 쉽게 사용 가능하다.
대표적인 예 : #define PI 3.141592
다. #pragma
컴파일러의 컴파일 방법을 세부적으로 제어할 때 사용한다. 컴파일러 제조회사에서 컴파일러의
기능을 확장시킬 수 있도록 하는 지시자이다.
대표적인 예 : #pragma Log2 0.3010
2. 다음 값을 define 해보시오. (1.5시간 소요)
가. Log2를 0.3010 으로 define 하시오. 첫글자를 대문자로 하시오.
#define Log2 0.3010
나. Log3을 0.4771 으로 define 하시오. 첫글자를 대문자로 하시오.
#define Log3 0.4771
다. Log7을 0.8451 으로 define 하시오. 첫글자를 대문자로 하시오.
#define Log7 0.8451
라. 가~다를 이용하여 log2 ~ log10의 값을 구하는 코드를 작성해 보시오.
그리고 log2~log10 까지의 값을 printf 로 출력하시오.
제법은 https://namu.wiki/w/%EC%83%81%EC%9A%A9%EB%A1%9C%EA%B7%B8#fn-7 에 있는 [7]번 항목을
참조하시오. 작성한 코드도 업로드하시오
#include <stdio.h>
#define Log2 0.3010
#define Log3 0.4771
#define Log7 0.8451
int main()
{
double log2 = Log2;
double log3 = Log3;
double log4 = 2 * Log2; // 힌트 : 4=2*2
double log5 = 1 - Log2; // 힌트 : 5=10/2
double log6 = Log2 + Log3; // 힌트 : 6=2*3
double log7 = Log7;
double log8 = 3 * Log2; // 힌트 : 8=2*2*2
double log9 = 2 * Log3; // 힌트 : 9=3*3
double log10 = 1;// 힌트 : 10=2*5
printf("log2=%.4f\nlog3=%.4f\nlog4=%.4f\nlog5=%.4f\nlog6=%.4f\nlog7=%.4f\nlog8=%.4f\n
log9=%.4f\nlog10=%.4f\n", log2, log3, log4, log5, log6, log7, log8, log9, log10);
return 0;
}
마. PI값을 3.141592로 define 한 후 반지름을 입력받아 원의 넓이, 둘레를 출력하는 프로그램을 작성하시오. http://tujanote.cafe24.com/bbs/board.php?bo_table=pds2&wr_id=52&sca=C&page=2 을 참조하시오.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define PI 3.141592
int main()
{
double r, s, l;
printf("반지름을 입력하세요 : ");
scanf("%lf", &r);
s = r * r * PI;
l = 2 * r * PI;
printf("반지름 : %f \n", r);
printf("넓이 : %f \n", s);
printf("둘레 : %f \n", l);
return 0;
}
3. 아스키 코드에 대해 조사하시오 (2시간 소요)
가. 아스키코드 표를 구하여 0~127까지의 대응값을 구하고 스크린샷을 첨부하시오.
나. char 형 변수를 선언한 후, 65를 주시오. 이 변수를 출력하면 A가 나옴을 확인하시오. char 형 변수를 선언한 후, 97를 주시오. 이 변수를 출력하면 a가 나옴을 확인하시오. 작성한 코드도 업로드하시오. http://tujanote.cafe24.com/bbs/board.php?bo_table=pds2&wr_id=53&sca=C&page=2 를 참조하시오.
#include <stdio.h>
int main()
{
char first, second;
first = 65;
second = 97;
printf("first : 65=%c\nsecond : 97=%c", first, second);
return 0;
}
다. char 형 변수를 투자노트 ID의 글자수만큼 만들고, 각 변수에 아스키값을 준 후 자신의 ID를 출력하는 프로그램을 만드시오. 작성한 코드도 업로드하시오.
#include <stdio.h>
int main()
{
char id1 = 119;// id의 첫번째 글자
char id2 = 105;// id의 두번째 글자
char id3 = 110;// id의 세번째 글자
char id4 = 103;// id의 네번째 글자
char id5 = 109;// id의 다섯번째 글자
char id6 = 105;// id의 여섯번째 글자
char id7 = 115;// id의 일곱번째 글자
char id8 = 115;// id의 여덟번째 글자
printf("%c%c%c%c%c%c%c%c", id1, id2, id3, id4, id5, id6, id7, id8);
return 0;
}
라. 프로그램을 실행하면 비프음이 나오도록 아스키값을 준 후 실행을 확인하시오. 작성한 코드도 업로드하시오.
#include <stdio.h>
int main()
{
char beaf = 07;
printf("beaf : 07 소리음 %c", beaf);
return 0;
}
'C언어' 카테고리의 다른 글
c언어 기초 6주차 (0) | 2020.11.08 |
---|---|
c언어 기초 5주차 (0) | 2020.11.01 |
c언어 기초 4주차 (0) | 2020.10.25 |
c언어 기초2주차 (0) | 2020.10.04 |
C언어 기초 1 주차 (0) | 2020.09.20 |
RECENT COMMENT