문제
1. 문자가 숫자인지 알려주는 isDigit 함수를 구현하세요. 문자 ch를 입력 받고, ch가 숫자인지 출력하세요. 맞다면 YES, 아니면 NO를 출력합니다.
출력) 문자 : P
결과 : NO
문자 : 2
결과 : YES
#include <iostream>
using namespace std;
int main()
{
char a;
cout<< "Enter a character :";
cin>> a;
if((65<=a&&a<= 90) || (97<=a&&a<=122)) //중간에 && 조건식해서 답이 안나왔다
{
cout << "결과 : NO";
}
else if((48<a)&&(a<57))
{
cout << "결과 : YES";
}
}
/* switch(a) //switch 에서 int형만 받을 수 있고 case 옆에는
{ //숫자만 쎠져야 한다.
case 65<=a<=90: //cse 1; << 이런식으로
cout << "결과 : NO";
break;
case 97<= a<= 122:
cout << "결과 : NO";
break;
case 48<=a<=57:
cout << "결과 : YES";
break;
}
}
*/
2. 정수 N을 입력하면 2의 N승을 출력하는 프로그램을 작성하세요. 단, 비트 연산을 이용합니다.
그리고 -1을 입력할 경우 프로그램은 종료됩니다.
출력) 입력 : 6
출력 : 2^6= 64
입력 : 4
출력 : 2^4 = 16
입력 : -1
프로그램 종료
#include <iostream>
using namespace std;
int main()
{
int a = 1;
int b;
cout<<"입력: ";
cin>>b;
a = a << b;
cout<<"출력: 2^"<<b<<"="<< a;
}
3. 다음과 같은 형태로 문자열이 출력되는 프로그램을 작성하시오.
1)
A
A B
A B C
A B C D
A B C D E
#include <iostream>
using namespace std;
int main()
{
char alpha[5] = { 'A' , 'B' , 'C' , 'D' , 'E' };
for (int i = 0; i < 5; ++i)
{
for (int j = 0; j <= i; ++j)
{
//cout <<"*";
cout <<alpha[j]<<"\t";
}
cout <<"\n";
}
return 0;
}
2) a
b a
c b a
d c b a
e d c b a
#include <iostream>
|
<수업>
메크로
#include <iostream>
using namespace std;
#define SQUARE(x) ((x)*(x))
int main(void)
{
cout <<SQUARE(5)<<"\n";
return 0;
}
컴파일되는 시점이 다름.
메크로 함수 - 전처리 과정을 거쳐서 컴파일 전에 라인안에 들어가서
인라인 됬다고 한다. 호출하는 과정이 없으므로 속도가 빠르다.
단 코드가 통째로 들어가서 파일크기는 커진다. 메크로 함수는 되도록 짧은 코드
를 사용한다. 일반함수와는 다르게 데이터 타입을 지정하지 않아도 된다.
함수와 함수간의 값 이동은 매개변수로 한다.
C++에서는 레퍼런스를 사용하면 편리하다.
<포인터 배열>
code영역은 대부분 Read-only 그러나 수정 되는 것도 있다.
stack은 Read and Write.
[stack]
단지 출력만 하려면 포인트함수를 사용
[code 영역]
char student[5][15]={"마이클 …
수정번젼
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gets() and fgets() return s on success
성공하면 s= (인자)를 반환한다.
char[15]라면 30이 들어가서 성공하면 s값을 출력하고
실패하면 null값을 반환한다. >>scanf와 같은 함수.
블럭킹 함수: 종료 될 때까지 프로그램의 진행을 막는 함수 scanf
넌블럭형 함수: printf
<main문의 종류>
void main()
int main()
void main (int . char &[ ])
int main (int . char &[ ])
#include <stdio.h>
int main(int A, char *p[])
{
int iCnt;
printf("%d\n" , A);
//printf("%s\n" , p[0]);
//printf("%s\n" , p[1]);
//printf("%s\n" , p[2]);
for(iCnt = 0; A > iCnt ; ++iCnt)
{
printf(" %d : %s\n" , iCnt , p[iCnt]);
}
}
//인자 개수와 인자출력.
화면 캡처: 2010-06-11, 오후 3:10
'About 프로그래밍!!! > [BSP]업무일지' 카테고리의 다른 글
struct (0) | 2010.06.11 |
---|---|
typedef (0) | 2010.06.11 |
2010년 6월 10일 목요일 (0) | 2010.06.10 |
[BSP]업무일지-2010/05/26 (0) | 2010.05.26 |
[BSP]업무일지-201005025 (0) | 2010.05.26 |