'C/C++'에 해당되는 글 11건
- 2013.09.02 C언어 - 반복조건문(do-while문)
- 2013.09.02 C언어 - 반복조건문(for문)
- 2013.09.02 C언어 - 조건문(Switch문)
- 2013.09.02 C언어 - 조건문(IF문)
- 2013.09.01 C언어 - 연산자
- 2013.08.31 C언어 - scanf 함수,주석문
- 2013.08.31 C언어 - 변수,형식지정문자
- 2013.08.31 C언어 - main,printf 함수
- 2013.08.28 C/C++ - 특징
- 2013.08.25 C/C++ <- 대체 이것들은 뭐지?!
C언어 - 반복조건문(do-while문)
do-while문이란?
이것들도 for문이랑 다를 껀 없지만 좀더 간편화하여 소스가 적어지는 장점을 가지고 있습니다.
do문과 while문의 특징을 결합하여 같이 만들어 for문처럼 쓰는것입니다.
대신 for문의 변화문 인덱스변수를 1씩 더해주는 ++1 은 처리문장에 넣어주셔야합니다.
do문 = 무한반복문
while 문 = 조건 반복문
예제 : do
{
처리문장1;
++i;
}
while(i=100)
처리문장2;
do문으로 무한 반복을 시킨 후 while문으로 인덱스변수의 값을 확인합니다.
무한 반복 도중 인덱스변수의 값이 100이 된다면 do문 밖으로 빠져나와 처리문장2를
실행할 것입니다.
예제코딩은 직접해보세요.
'C/C++' 카테고리의 다른 글
C언어 - 반복조건문(for문) (0) | 2013.09.02 |
---|---|
C언어 - 조건문(Switch문) (0) | 2013.09.02 |
C언어 - 조건문(IF문) (0) | 2013.09.02 |
C언어 - 연산자 (0) | 2013.09.01 |
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - 반복조건문(for문)
for문이란?
for문은 정말 재밌습니다.
간단한 알고리즘으로 표현을 할 수 도 있고 처리문장을 몇 번을 반복을 할지
코딩하는 프로그래머가 직접 설정을 할 수 도 있습니다.
예제 : for(초기식;반복조건식;변화식)
{
처리문장
}
초기식에는 index 인 변수 i 의 1로의 초기화 값을 대부분 넣습니다 : i = 1
반복조건식은 몇 번이나 반복할 지 를 정해주는 것이기 때문에 해깔리지 않으셔야합니다.
만약 5번을 반복하고싶으시다 하면 i <= 6 해주시면 됩니다.
변화식은 ++i,i++ 가 들어갑니다.
for문의 방식이 초기식의 1에서 반복조건식을 보고 변화식을 실행 시킵니다.
만약 변수 i 의 초기값 1에서 변화식에 의해 계속 증가하다가 반복조건식에 적합해지면
for문은 종료하게 되는것입니다.
* 식 사이의 ;(세미콜론) 은 각각의 식을 구분하기 위함입니다.
이해를 못하실수 도 있으니 다른 예제를 보여드리겠습니다.
저는 10번 반복하는 for문을 만들고싶습니다.
for(i=1;i<10;++i) // i의 초기값 1에서 ++i 에 의해 1 씩더해지며 처리문장을 실행하게된다.
{ // 1 씩 더해질때마다 처리문장이 실행되므로 i 가 10이 넘어버린다면 for문은
//종료하게 될것이다
처리문장
}
이렇게 프로그램을 짜시면됩니다.
이해가 아직도 안가신다면 직접 소스를 코딩하면서 끄적끄적해보세요.
많은 도움이 될겁니다.
'C/C++' 카테고리의 다른 글
C언어 - 반복조건문(do-while문) (0) | 2013.09.02 |
---|---|
C언어 - 조건문(Switch문) (0) | 2013.09.02 |
C언어 - 조건문(IF문) (0) | 2013.09.02 |
C언어 - 연산자 (0) | 2013.09.01 |
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - 조건문(Switch문)
Switch문이란?
IF문과 같은 조건문이지만 좀더 세분화되었지만 간단한 그런 조건문입니다.
단순한 숫자나 알파벳을 여러번 조건에 확인해야하는 경우 중첩되게 IF문을 짜면되지만
소스가 당연히 복잡해지고 길어지기 마련입니다.
그 때 Switch문을 사용하시면 됩니다.
예제 : Switch(변수 또는 연산식)
{
case 조건식1:처리문장1;
case 조건식2:처리문장2;
case 조건식3:처리문장3;
case 조건식4:처리문장4;
....
}
case 조건식 : 처리문장 은
무한대로 필요할만큼 생성해낼 수 있으니 정말 편리합니다.
만약 학업 점수를 10단위로 입력받아 단순 축하의 말을 하고싶을때
Switch(Point)
{
case 60 : printf("60점이시네요 분발하세요");
case 70 : printf("70점이시네요 아깝습니다.");
case 80 : printf("80점이시네요! 굿굿");
case 90 : printf("90점이시네요!! 조금만더~..");
case 100 : printf("100점!! 자랑스럽습니다");
}
이런식으로 간단하면서 보기좋게 소스 코딩을 할 수 가 있습니다.
'C/C++' 카테고리의 다른 글
C언어 - 반복조건문(do-while문) (0) | 2013.09.02 |
---|---|
C언어 - 반복조건문(for문) (0) | 2013.09.02 |
C언어 - 조건문(IF문) (0) | 2013.09.02 |
C언어 - 연산자 (0) | 2013.09.01 |
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - 조건문(IF문)
IF문이란?
IF의 단순영어 뜻은 "만약 ~이라면" 정도가 될 수 있습니다.
말그대로 조건,어떠한 상황에 놓여져있을 때 결과값이 이것이면 어떤 이벤트
아니라면 다른 이벤트를
대표적으로 로그인 중 아이디 패스워드가 맞는지 구분할 때 사용하기도 합니다.
이처럼 IF문은 많이 또 유용하게 쓰이기 때문에 알아둬야 하는 함수입니다.
예제 : if(조건)
처리문장1(조건에 맞을 시)
else
처리문장2(조건에 맞지 않을 시)
* else 에 다른 조건을 붙임으로써 중첩IF문 사용가능
ex) else if(조건)
처리문장1
else if(조건)
처리문장2
.....
else는 조건이 아닐시에 라는 뜻입니다.
이렇게 한번 else로 단순 IF문을 만들 수 도 있고 여러번 확인해야하는 경우
복합 IF문으로 더 방대하게 조건을 걸 수 있습니다.
처리문장이 많을 시엔 중괄호를 쓰셔야하고
IF문은 많이 써보셔야 압니다.
지금까지 배운 함수들을 응용해
간단한 패스워드만으로 로그인을 하는 프로그램을 짜보겠습니다.
main() //시작부분
{
int passwd,a=123123; // passwd,a 란이름을 가진 정수형 변수선언 후 a에 123123 대입
printf("Passwd : "); // 화면에 "Passwd : "출력
scanf("%d",&passwd); // "Passwd : "뒤에 입력받은 값을 passwd 에 대입
if(passwd==a) // 만약 passwd 와 a 안에 있는 값이 같다면
printf("로그인 성공"); // "로그인 성공"을 화면에 띄움
else // 같지 않다면
printf("로그인 실패"); // "로그인 실패"를 화면에 띄움
간단하죠? 이렇게 여러분들도 혼자서 만들어보실줄 알아야합니다.
}
'C/C++' 카테고리의 다른 글
C언어 - 반복조건문(for문) (0) | 2013.09.02 |
---|---|
C언어 - 조건문(Switch문) (0) | 2013.09.02 |
C언어 - 연산자 (0) | 2013.09.01 |
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
연산자?
우리가 계산을 할때 +- ÷ × 사칙연산이 있듯이 소스 코딩에도 사칙연산을 쓸 수 가 있습니다.
연산자에는 크게 6가지로
산술연산자 , 단항연산자 , 대입연산자 , 관계연산자 , 논리연산자 , 조건연산자 가 있습니다.
산술연산자
사칙연산을 써서 산술을 합니다.
연산자 |
기능 |
사용 예 |
+ |
덧셈 |
a = a+b |
- |
뺄셈 |
a = a-b |
% |
나눗셈 |
a = a%b |
* |
곱셈 |
a = a*b |
/ |
나눈 나머지 |
a = a/b |
단항연산자
단순한 값의 증가와 부호(양수,음수)를 나타냅니다.
연산자 |
기능 |
사용 예 |
++ |
값을 1 증가 시킴 |
a++,++a |
-- |
값을 1 감소 시킴 |
a--,--a |
+ |
부호 |
+a |
- |
부호 |
-a |
대입연산자
사칙연산을 쓴 후 값을 대입 합니다.
연산자 |
기능 |
사용 예 |
= |
a=b |
a=b |
+= |
a = a+b |
a+=b |
-= |
a = a-b |
a-=b |
%= |
a = a%b |
a%=b |
*= |
a = a*b |
a*=b |
/= |
a = a/b |
a/=b |
관계연산자
관계를 나타냅니다.
(관계연산자의 결과는 1 = 참 0 = 거짓 으로 나타냅니다.)
연산자 |
기능 |
사용 예 |
== |
같다. |
a==b |
!= |
같지 않다. |
a!=b |
논리연산자
AND OR NOT 연산을 이용해 계산합니다.
연산자 |
기능 |
사용 예 |
&& |
모두 참이면 참 |
a&&b |
|| |
하나라도 참이면 참 |
a||b |
! |
참이면 거짓,거짓이면 참 |
!a |
조건연산자
예제 : 조건식 ? 문장1 : 문장2
조건에 만족한다면 문장1 아니라면 문장2를 실행합니다.
ex) a = 100
a=10 ? printf("참") : printf("거짓") 를 실행시키면
결과값은 printf("거짓") 으로 나온다
자주 쓰면 자연스럽게 외워지는 것들이니 억지로 외우실 필욘없습니다.
단 논리연산자의 사용법은 꼭 숙지해두셔야합니다.
'C/C++' 카테고리의 다른 글
C언어 - 조건문(Switch문) (0) | 2013.09.02 |
---|---|
C언어 - 조건문(IF문) (0) | 2013.09.02 |
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
C언어 - main,printf 함수 (0) | 2013.08.31 |
C언어 - scanf 함수,주석문
scanf 함수와 주석문
printf 함수는 콘솔화면에 특정 문자를 출력해주는 역활을 했습니다.
scanf 함수는 그의 반대인 컴퓨터에 정보를 입력해주는 역활을 함으로써
예를 들어 점수 평균을 구하는 프로그램에서 점수를 입력받아 컴퓨터내에서 계산후
평균을 화면에 출력해준다하면 입력받는 함수는 scanf 함수,계산 하는 것은 차후에 알아갈
산술연산자,평균을 화면에 출력해주는 함수는 printf 함수를 사용해서 만들 수 있습니다.
/ 우리가 교과서를 보며 공부를 하면서 그 짜투리 공간에 모르는 단어가 나오면
필기를 하는거 처럼 소스 코딩을 하면서 해깔리는 부분,모르는 부분 등등
표시를 해야할 때 우리가 표시한 부분을 컴퓨터가 읽지못하도록 무언가가 필요합니다.
scanf
예제 : scanf("형식지정문자",&변수명)
컴퓨터에 사용자가 입력할 수 있게 해주는 함수입니다.
우리가 입력받고 싶은 형식의 지정문자를 적어넣고 입력받은 값을 어느 변수에
넣을지 옵션에 적습니다.
그럼 입력 받은 값이 옵션의 변수에 저장(입력) 됩니다.
※ 단, 형식지정문자와 옵션에 들어갈 변수의 형식은 같아야합니다.
ex) 변수 "a"를 선언 하고 scanf 함수를 사용하여 입력하여 a에 입력값을 저장시켜
a 에 저장된 값을 출력합니다.
int a; 로 정수형 변수 "a"를 선언 합니다.
scanf("%d",&a); 정수형 변수의 형식지정문자인 %d로 입력을 받고 a 에 저장합니다.
printf("a = %d",a); 정수형 변수 "a" 에 들어 있는 값을 형식지정문자로 이용해 화면에 출력합니다.
100 을 입력 했더니 a = 100으로 변수a에 정수형 100이 들어간것을 볼 수 있습니다.
주석문
예제 : (한줄) // 입력 값
(여러줄) /* 입력 값 */
만약 내가 특정 소스코딩한 부분에 코맨트를 달고 싶다해도 코맨트를 달아버리면 그 코맨트를 읽어버려
번역 과정에 오류가 생겨버립니다.
하지만 주석문을 쓰면 컴퓨터가 읽지 못해서 코멘트를 달아도 아무 문제가 없습니다.
(컴퓨터 사인펜의 빨간펜의 역활을 함)
한 줄만 주석문 처리를 하고싶다면 //를 붙인상태에서 코멘트를 달면되구요.
여러줄을 주석문 처리하시고 싶으시다면 /* 를 쓰시고 코멘트를 여러줄에 단다음 */ 로 닫아주시면
됩니다.
그렇게 주석처리가 된 부분은 코딩부분에서 초록색으로 색깔이 바뀌게됩니다.
소스코딩에 맞지않는 한글을 사용해도 주석문을 이용해서 밑의 부분을 보시면 0 errer 가 뜨면서 아무문제 없이 실행이 가능하게 됩니다.
하지만 주석처리를 안하게된다면
저렇게 어마어마하게;; 한글이 읽혀지면서 88 error 에러가 떠 실행이 불가능한 상태가 되어버립니다.
'C/C++' 카테고리의 다른 글
C언어 - 조건문(IF문) (0) | 2013.09.02 |
---|---|
C언어 - 연산자 (0) | 2013.09.01 |
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
C언어 - main,printf 함수 (0) | 2013.08.31 |
C/C++ - 특징 (0) | 2013.08.28 |
C언어 - 변수,형식지정문자
변수와 형식지정문자란?
변수는 무언가를 담을 수 있는 그릇같은 존재입니다.
어떤 값이든 변수에 담아 보관 할 수도 있고 연산을 해서
변수를 출력할수도 있어서 C언어든 C++이든 없어선 안될 중요한
존재이며 변수의 종류에는 여러가지가 있습니다.
형식지정문자는 변수를 출력할 때 여러가지의 종류를 배려해
각각의 다양한 종류마다 특정 형식을 지정한 문자로 대신 그 변수를
표현 할 수 있는 문자입니다.
─────────────────────────────────────────────────
─────────────────────────────────────────────────
변수의 종류
종류 |
예제 (변수 선언/변수 대입) |
용도 |
short int |
short int 변수명 / 변수명 = 값 |
2바이트의 정수를 담음 |
int |
int 변수명 / 변수명 = 값 |
4바이트의 정수를 담음 |
long int |
long int 변수명 / 변수명 = 값 |
4바이트의 정수를 담음 |
float |
float 변수명 / 변수명 = 값 |
4바이트의 실수를 담음 |
char |
char 변수명 / 변수명 = '값' |
1바이트의 문자를 담음 |
이것들 말고 다른 변수는 아주아주 많지만 대표적인,많이 사용하는 변수들만 정리했습니다.
변수를 선언함으로써 "변수명의 이름을 가진 몇바이트의 특정공간을 사용하겠다"라는
의미가 되며
변수명 = 값
을 적는다면 그 변수 안 에 값이 보관이 될것입니다.
ex)
현재 int a; 로 a 라는 변수를 선언하고 a 에다가 10이란 값을 넣어서 a 안에는 10이 들어가있는 상태입니다.
─────────────────────────────────────────────────
─────────────────────────────────────────────────
형식지정문자의 종류
종류 |
예제 |
용도 |
int |
%d |
4바이트 정수 표현 |
float |
%f |
4바이트 실수 표현 |
char |
%c |
1바이트 문자 표현 |
ex)
변수 a 가 int(4바이트 정수) 이기때문에 그에 같은 %d를 씁시다.
위의 사진처럼 %d(형식지정문자) 로써 표현해야하는 변수는 옵션에 적어 넣어야합니다.
코딩한 후 실행을 하면
text 부분에 적은 "a 는 %d 입니다" 가 출력되는게 아닌 %d 부분에 10이 출력되면서
컴퓨터가 정상적으로 변수 a 의 값을 출력 했다는것을 볼 수 가 있습니다.
다른 형식의 변수도 이런식으로 사용하시면 됩니다.
'C/C++' 카테고리의 다른 글
C언어 - 연산자 (0) | 2013.09.01 |
---|---|
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
C언어 - main,printf 함수 (0) | 2013.08.31 |
C/C++ - 특징 (0) | 2013.08.28 |
C/C++ <- 대체 이것들은 뭐지?! (0) | 2013.08.25 |
C언어 - main,printf 함수
main printf
모든 일들이 일어나려면 시작과 끝이 항상 있어야하듯이
C언어 소스 코딩에도 시작을 알리고 끝을 알리는 소스가 있어야합니다.
그 시작과 끝을 알려주는 소스가 main함수입니다.
이 함수는 코딩에 앞서 필수적으로 사용해야 하며 사용하지 않는다면
시작과 끝을 몰라 컴퓨터는 에러를 띄우게 될 겁니다.
그리고 보통 c언어에선 콘솔프로그램에서 사용을 하게 될텐데
콘솔 프로그램 = >
이 화면에 글씨를 뿌리는(보여주는,띄우는) 함수도 있습니다.
main
예제 : main()
{
}
시작을 알리는 함수는 main() 이지만
실제 범위부분의 시작점은 " { " (오른쪽) 이고 끝은 " } " (왼쪽) 입니다.
{ 와 } 안에서 소스코딩을 합니다.
printf
예제 : printf("text",o);
* (세미콜론 ";") : 메인 함수에는 시작과 끝을 알리는 { } 가 있는 반면에
다른 함수들의 끝은 { } 로 구분하지 못할수도 있습니다. 그래서 함수 마지막에
" ; " 세미콜론을 붙여 함수의 끝맺음 줘야합니다(필수)
printf 함수는 콘솔 프로그램 화면에 text 부분의 글자를 뿌려주는 역활을 합니다.
그럼 백문이 불여일견! main 함수와 printf 함수를 동시에 써서 결과값을 봅시다.
ex)
코딩을 한 뒤 빨간 네모부분의 왼쪽부터 눌러 컴파일,빌드를 하신 후 느낌표 네모를 눌러주시면
결과값이 나옵니다.
Press any key to continue 는 우리가 원했던 값이 아니지만..
시스템상 뜨게 되있으니 저건 나중에 처리하도록 하구요.
printf(" 이 안에 ") 적어넣었던 글이 화면에 뿌려진것을 볼 수가 있을겁니다.
'C/C++' 카테고리의 다른 글
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
---|---|
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
C/C++ - 특징 (0) | 2013.08.28 |
C/C++ <- 대체 이것들은 뭐지?! (0) | 2013.08.25 |
C/C++ - 시작하기 전 (0) | 2013.08.25 |
C/C++ - 특징
C언어,C++의 특징
C언어와 C++은 같은 형제지간이지만 엄연히 특징은 다릅니다.
J.K 스나이퍼님의 말씀대로 배우는데 혼돈이 생길 수 있으니
확실히 둘의 특징과 차이점을 집고 넘어가겠습니다.
C언어는 절차지향 언어 이고 C++은 객체지향 언어 입니다.
지금은 저게 무슨 뜻인지 모르겠지만 나중에 공부하다보면 이해를 하시게 될겁니다.
그래도 간단한 설명은 있어야하니..
절차지향 언어는 프로그램을 작성할 떄 실행 순서를 지정하게 되는 작성언어로써
문제의 해결 순서와 절차의 표현과 해결이 쉽도록 설계 되었다.
객체지향 언어는 캡슐화 다형성 상속성 등의 특징으로 방대한 코드를 한 번에
묶어버리고 내부의 정보를 외부에 보이지 않게하는 알약의 특성을 가지고 있고
연관이 있는 두가지 이상의 용도로 하나의 이름을 사용할 수 있게하고
하나의 객체에 정의된 코드를 다른 객체에 이어받는 것(상속하는것)도 가능하다.
각자의 특징들
C언어 는 1970년대 유닉스 운영체제를 만들 때 구현,사용 용도로 만들어졌습니다.
- 고급언어와 저급언어의 장점을 골고루 포함했다.
- 함수의 집합으로 구성되어 구조적 프로그램에 적합하다.
- 다양한 자료구조의 표현에 적합하다.
- 다른 시스템으로의 호환,이식성이 좋다.
C++ 은 C언어에서 OOP(객체 지향)을 접목시켜 보완을 하고 만들어 졌습니다.
- 데이터 추상화를 지원한다
- C언어의 특징을 물려받았다.
- 기존 C문법이 사용하기 편하게 개선되었다.
- 객체 지향 프로그래밍을 지원한다.
설명은 부족했지만 두 언어는 프로그래밍하는 방식부터가 다르다는 걸
꼭 아셔야 공부하실 때 해깔리는 일이 없으실겁니다.
'C/C++' 카테고리의 다른 글
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
---|---|
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
C언어 - main,printf 함수 (0) | 2013.08.31 |
C/C++ <- 대체 이것들은 뭐지?! (0) | 2013.08.25 |
C/C++ - 시작하기 전 (0) | 2013.08.25 |
C/C++ <- 대체 이것들은 뭐지?!
C? C++?
대체 C,C++ 이 무엇이고 어디에 쓰이며 왜 배워야 하는 걸까??
무엇 : "C,C++ 은 컴퓨터가 알아들을 수 있는 프로그래밍 언어이다."
정확한 말은 아니지만 (실제로 컴퓨터는 0과 1 밖에 모른다. 자세한건 정보기초에서)
누군가 C C++ 이 뭐냐고 물어본다면 저 정도로만 대답해도 '알고 있네?' 라는 말을 받아 낼 수 있습니닿 ㅋ
... 아닐수도?
이 지구상에도 수많은 언어(영어,일본어,한국어..기타등등)가 있듯이 컴퓨터에도 그때그때 필요한 각각의 수많은 언어들이존재하죠~
앞으로 배워야할 어셈블리언어..자바스크립트..HTML.. C 형제중 또 다른 동생인 C#..
그리고 지금 배우려고 하는 C,C++ 생각만 해도 머리가 지끈지끈 아프지만 이것들이
전부 다 C, C++와 다를빠 없는 언어라는 점입니다..!!
어디에 : "C,C++은 프로그램을 만들 때에 쓰인다."
프로그램 즉 소프트웨어 각각의 PC(Personal Computer)에 한개 이상 깔려 있는 것을 말하는데
이것들은 각각의 만들어진 목표에 다하며 돌아가고 있습니다..
목표에 맞게 프로그램을 만드는것을 프로그래밍 이라고 하죠~
뭐 예를들어 전부는 아니지만 V3,알약,인터넷 익스플로러,스타크래프트,미디어플레이어
등등 모든 프로그램들이 이 언어로 만들어진답니다..
점점 더 기대가 되지않나요?!? ....아님말고
왜 : "프로그래밍은 어디에서나 쓰이는 매우 중요한 기술이다."
위에서도 말했듯이 어느 프로그램이든 배운 언어로 프로그래밍을 하는 것이기때문에
악성코드, 바이러스를 막는데에도 백신을 제작하는데에도 게임을 만드는데에도 분석툴을 만들때에도
프로그래밍은 없어서는 안될 꼭 매우 중요한 기술입니다.
다음시간엔 부족하지만 본격적인 C,C++ 강좌를 시작합니다~
'C/C++' 카테고리의 다른 글
C언어 - scanf 함수,주석문 (0) | 2013.08.31 |
---|---|
C언어 - 변수,형식지정문자 (0) | 2013.08.31 |
C언어 - main,printf 함수 (0) | 2013.08.31 |
C/C++ - 특징 (0) | 2013.08.28 |
C/C++ - 시작하기 전 (0) | 2013.08.25 |