일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Tipsware
- 마이크로소프트
- MyThread
- mysql
- ListBox
- 미가공
- Time
- C
- visual
- 유료강좌
- 정보처리기사
- MFC 예제
- 실습
- MyTread
- 포트폴리오
- 정처기 독학
- tips강좌
- C언어
- MFC
- 김성엽
- SSG
- 충무창업큐브
- do it c
- win32
- C++
- linux
- 별찍기
- mfc 실습
- 도움말
- 핵심 요약
- Today
- Total
목록C,C++/개념 실습 프로그래밍 (50)
History
이미 저장된 문자열 앞에 사용자가 원하는 문구를 추가해야 할 때 더보기 ex) hello world !!! -----변환----- 1. hello 2. world 3. !!! 코드는 아래와 같다. #include int main() { char str_table[3][16] = { "hello","world" ,"!!!" }; for (int i = 0; i < 3; i++){ printf("%s\n", str_table[i]); } char temp[3][20]; for (int i = 0; i < 3; i++) { sprintf_s(temp[i], 20, "%d. %s", i+1, str_table[i]); //문자열 합치기 } for (int i = 0; i < 3; i++) { printf("%s..
c++은 사용자에게 입력을 받을 때 cin객체를 이용하여 입력을 받는다. #include using namespace std; int main() { int data = 0; cout > data; //입력 cout

이번엔 별 찍기를 실습해 보겠다. 중첩 반복문을 사용해보도록 하자. 개인적으로 정답을 보기 전에 혼자서 실습을 진행해보다가 도저히 모르겠으면 아래 정답을 확인하도록 하자. 또한 자신이 작성한 코드와 필자가 작성한 코드가 다르더라도 오답이 아니니 정답이 다르면 자신만의 방법을 찾았다고 생각하자. 정답은 아래와 같다. int main() { for (int i = 0; i < 5; i++){ //5줄 for (int j = 0; j

아래와 같이 프로그래밍을 하다가 귀찮아서 변수명 대충 짓고 나중에 헷갈려서 각 변수를 의미 있게 바꾸려고 하는데 코드가 복잡하게 꼬여있어서 감당이 안될 때 어떻게 해야 할까? int data1,data2,data3; int result1,result2,result3; int num1,num2,num3; 변수명을 안 바꾸고 의미 있게 변수명을 바꾸려면 매크로 함수를 사용해야 한다. 매크로 함수는 #을 사용할 때는 문자열로 처리되지만 #을 2번 사용해서(##) 처리하면 단순 구분자로 사용된다. 이제 단순 구분자로 바뀌는 특성을 이용해 나름대로 변수를 치환해보자. #define LO_STATE(data) data##1 위와 같이 ##을 두 번 적고 1을 적으면 data와 1을 구분해준다. main에서 변수명이..
일반적으로 우리가 int 변수를 통해 숫자를 printf로 출력할 때 아래와 같이 코드를 작성한다. #include int main() { int num = 10, data = 5; printf("num=%d\n",num); printf("data=%d\n",data); return 0; } 그러나 극단적인 예시로 우리가 출력해야 할 int 변수가 10개, 20개까지 늘었다. 그러면 우리는 printf함수를 20번을 적어야 하고, printf함수 안에 어떤 변수가 출력되는지 알려주는 문자열도 각 변수에 맞게 바꿔줘야 한다. 얼마나 귀찮은 일인가. 이러한 불편함을 줄여줄 수 있는 방법은 #define(매크로 함수)을 이용하는 것이다. 아래 코드를 보자. #include #define ShowVar(x) p..

isalpha 함수는 체크할 문자가 영문자인지 알려주는 함수이다. 이 함수는 아스키 값을 계산해서 'a'~'z'(소문자)이면 2을 반환하고 'A'~'Z'(대문자)이면 1을 반환한다. 그 이외의 영문자가 아닌 문자가 인자 값으로 들어가면 0을 반환한다. 아래 간단한 예제를 보면서 이해하면 편할 것이다. #include #include //isalpha을 사용하기 위해 #pragma warning(disable:4996) int main() { printf("%c의 isalpha반환값:%d\n", 'a', isalpha('a')); printf("%c의 isalpha반환값:%d\n", 'z', isalpha('z')); printf("%c의 isalpha반환값:%d\n", 'A', isalpha('A'));..
사용자에게 영문자를 입력받고 그 문자가 소문자면 대문자로 변경해서 출력하는 코드를 작성해보았다. 코드를 보여주기 전에 이 코드에 조건을 걸었다. 1. 배열이나 포인터는 사용하지 않는다. 2. scanf를 사용하지 않는다. 위의 조건을 충족시키기 위해서 필자는 getchar함수를 사용하여 한 문자씩 입력을 받았다. gets_s나 fgets함수는 배열을 사용해야 하기 때문에 1번째 조건에서 탈락이다. 이제 코드를 확인해보자. #include #pragma warning(disable:4996) #define MAX 5 int main() { int data=0; while (data!='\n'){ data = getchar(); //포준 입력 버퍼에 저장된 문자를 하나씩 읽는다. if (data>='a'&&..
배열을 이용하여 5개의 정수 값을 입력받고, 최댓값과 그 인댁스를 같이 출력하는 프로그램을 만들어야 한다. 조건은 0 이하의 숫자가 나오면 다시 입력받아야 한다. 또한 최댓값이 2개 이상이라면 나중에 입력받은 최댓값이 출력되게 해야 한다. 그에 대한 코드는 아래에 있다. #include #pragma warning(disable:4996) #define MAX 5 int main() { int arr[MAX] = {}; int max = 0,temp_max; for (int i = 0; i =를 해준다. max= arr[i]; temp_max = i; } } ..