목적
- 매개변수 입력을 익힌다. 원하는 자릿수의 숫자를 출력을 한다.
문제
코드
#include <iostream>
#include <ctype.h>
#include <cstring>
using namespace std;
int main(void)
{
char sIn[255] = {0};
char cSwap = 0;
int iSpc, iCap, iMin;
iSpc = iCap = iMin = 0;
cout << "문자열을 입력하세요 : ";
cin.getline(sIn, 255, '\n');
cout << "입력된 문자열 : " << sIn << endl;
for(int i = 0; i < strlen(sIn); i++)
{
for(int j = i; j < strlen(sIn); j++)
{
if(sIn[i] > sIn[j])
{
cSwap = sIn[i];
sIn[i] = sIn[j];
sIn[j] = cSwap;
}
}
if(isspace(sIn[i])) iSpc++;
if(isupper(sIn[i])) iCap++;
if(islower(sIn[i])) iMin++;
}
cout << "정렬된 문자열 : " << sIn << endl;
cout << "대문자의 수 : " << iCap << endl;
cout << "소문자의 수 : " << iMin << endl;
return 0;
}
해설
- 간단하게 ctype.h 함수로 대/소/공백문자를 계산했습니다.
- 다중 for 문으로 문자열의 크기를 비교해서 오름차순으로 정렬했습니다.
참고
- 유사 문제