유튜브 나도코딩 c언어 기초 강의에 대한 내용으로 공부하였습니다.
#include <stdio.h>
int main(void)
{
//정수형 변수에 대한 예제
int age = 12;
printf("%d\n", age);
age = 13;
printf("%d\n", age);
// 실수형 변수에 대한 예제
float f = 46.5;
printf("%.2f\n",f); // %.2f는 소수점 둘째자리까지 나타낼 수 있다.
double d = 4.428;
printf("%.2f\n", d);
// 상수에 대한 예제
const int YEAR = 2000; // const를 사용해서 YEAR는 더 이상 바뀔 수 없음.
printf("태어난 연도 : %d\n", YEAR);
// printf
// 연산
int add = 3 + 7;
printf("3 + 7 = %d\n", add);
printf("%d + %d = %d\n", 3, 7, 3 + 7); // printf 안에서 연산하고 바로 출력가능.
// scanf
//키보드 입력을 받아서 저장
int input;
printf("값을 입력하세요 : ");
scanf_s("%d", &input);
printf("입력값 : %d\n", input);
//문자(한글자), 문자열(한 글자 이상의 여러 글자)
char c = 'A';
printf("%c\n", c);
char str[256]; // char c같은 문자를 저장하기 위한 변수를 256개 쭉 연속으로 만든다는 것
scanf_s("%s", str, sizeof(str)); // & 안써주고 사이즈 말해줘야함.
printf("%s\n", str);
return 0;
}
int는 정수형. 소숫점이 없는 수를 선언할 때 사용하고, 형식지정자 %d를 사용해서 출력한다.
float은 실수형. 소숫점까지 있는 수를 선언할 때 사용하고, 형식지정자 %f를 사용해서 출력하며, %.2f라고 쓰면 소숫점 둘째자리까지 나타낼 수 있고 셋째자리 넘어서까지 있다면 반올림돼서 출력된다.
double 또한 float과 같은 실수형 변수인데 차이점은 크기에서 차이가 있다.
float은 32비트, double은 64비트로 double은 float보다 더 낮은 자릿수의 소수점까지 나타낼 수 있다.
char는 문자형을 나타낼 때 쓰는데. 1바이트만 표현할 수 있어서 알파벳 하나만 표현할 수 있고, 형식지정자 %c를 사용한다.
한글은 2바이트로 한글을 나타내려면 문자열을 사용해야하는데,
3글자를 나타내려면 배열의 길이가 최소 3*2+1인 7이 되어야한다. +1은 배열의 끝에 \0 (null)을 반드시 넣어줘야하기 때문에 필요하다. 만약 배열이 남는다면 남는 자리들은 \0(null)로 채워질 것이다. 그리고 문자열의 형식지정자는 %s를 사용한다.
scanf를 사용해서 값을 입력받아 변수에 넣어주고 싶다면 입력받을 값과 맞는 형식지정자를 쓰고, 입력받은 값을 넣어줄 변수 앞에 &를 써야한다.
문자열을 입력받을 때는 &를 써줄 필요 없고, 뒤에 sizeof()를 통해 크기를 써줘야한다.
간단한 프로젝트
경찰서 조서쓰기
#include <stdio.h>
int main(void)
{
char name[256];
printf("이름이 뭐에요?");
scanf_s("%s", name, sizeof(name));
int age;
printf("몇살이에요?");
scanf_s("%d", &age);
float weight;
printf("몸무게가 몇이에요?");
scanf_s("%f", &weight);
double height;
printf("키가 몇이에요?");
scanf_s("%lf",& height); // %lf는 소수점 6째자리까지 나타낼 수 있음.
char what[256];
printf("무슨 범죄를 저질렀어요??");
scanf_s("%s", what, sizeof(what));
//조서내용출력
printf("\n\n--- 범죄자 정보 ---\n\n");
printf(" 이름 : %s\n", name);
printf(" 나이 : %d\n", age);
printf(" 몸무게 : %.2f\n", weight);
printf(" 키 : %.2f\n", height);
printf(" 범죄명 : %s\n", what);
return 0;
}
여러가지 자료형 printf scanf를 사용해서 간단한 프로젝트를 만들어보았다.
'c언어 기초' 카테고리의 다른 글
c언어 포인터 pointer - 나도코딩 (0) | 2022.05.30 |
---|---|
c언어 배열 array - 나도코딩 (0) | 2022.05.30 |
c언어 함수 function - 나도코딩 (0) | 2022.05.29 |
c언어 loop, 반복문, 이중반복문, for,while, do while - 나도코딩 (0) | 2022.05.29 |
c언어 조건문 if else break continue switch~case rand 랜덤- 나도코딩 (0) | 2022.05.29 |