티스토리 뷰

IT/C++

[C++] 예제 2

DongChul 2014. 9. 23. 14:20

연습문제 1 

1 ~ 100 까지의 정수 출력


소스코드

int i = 1;

    

    for (i = 1 ; i <= 100 ; i ++){

        cout << i;

        if (i % 10 == 0) cout<< endl;

        else    cout <<'\t';

    }


출력결과




연습문제 2

구구단 출력


소스코드


int i,j;

    

    for(i = 1; i <= 9; ++i){

        for (j = 1; j<=9;j++)  

            cout << j << "x" << i << "=" << i*j << '\t';

            cout << endl;

    }


출력결과



연습문제 3

두개의 정수중 큰 수 출력


소스코드


int a, b;

    cout << "두 수를 입력하세요. >> ";

    cin >> a >> b ;

    cout << "큰 수는 = " ;

    if (a > b) cout << a;

    else cout << b << endl; 


출력결과





연습문제 4

5개의 실수를 입력받아 제일 큰 수를 출력


소스코드


함수

double biggest(double x[] , int n){

           double r;

           r = x[0];

           for(int i = 0; i < n; i++)

                   if(r < x[i]) r = x[i];

           return r;

    }


메인

int i;

    double a[5];

    cout << "5개 변수를 입력하세요 : ";

    for (i=0;i<5;i++)

    cin >> a[i];

    cout << "가장 큰 변수는 : " << biggest(a,5) << " 입니다."; 


출력결과





연습문제 5

<Enter> 키가 입력 될 때 까지 문자들을 읽고, 입력된 문자 'X'의 개수를화면에 출력


소스코드


char c[100];

    int count = 0;

    cout << "문자들을 입력하라(100개 미만)";

    cin.getline(c,100,'\n');

    

    int i = 0;

    while(true){

                if(c[i] == '\0') break;

                if(c[i] == 'x') count++;

                i++;

    }

    cout<<"x 의 개수는 : " << count << "개입니다.";  


출력결과





연습문제 6

입력받은 두 개의 문자열이 같으면 "같습니다.", 아니면 "같지않습니다."를 출력


소스코드


char password1[100];

    char password2[100]; 

    

    cout << "새 암호를 입력하세요 : \n";

    cin.getline(password1,100,'\n');

    

    cout << "새 암호를 다시 한번 입력하세요 : \n";

    cin.getline(password2,100,'\n');

    

    if(strcmp(password1,password2) == 0) // 문자열 비교함수 같으면 0 전자가 빠르면 1 후자가 빠르면 -1 

        cout << "같습니다. \n";

    else cout << "같지않습니다.\n"; 


출력결과




연습문제7

"yes"가 입력되면 종료되는 프로그램(출력결과 참고)


소스코드


 char yes[100];

     

     while(true) {

        cout << "종료하고 싶으면 yes를 입력하세요. \n";

        cin.getline(yes,100,'\n');

        if(strcmp(yes,"yes")==0) break; 

     }

     

     cout <<"종료합니다.\n";


출력결과





연습문제 8

한 라인에 ';'으로 5개의 이름으로 구분하여 입력받아, 각 이름을 끊어내어 화면에 입력하고 가장 긴 이름을 판별하라.


소스코드

char name[100];

    char longest[100];

    int length = 0;

    

    cout << "5명의 이름을 ';' 으로 구분하여 입력하세요. \n";

    

    for(int i = 1; i<=5; i++){

            cin.getline(name,100,';');

            cout<<"순번 : " << i << " 이름 : " << name <<endl ;

            if(length < strlen(name)) {

                      length = strlen(name);

                      strcpy(longest, name);

            }

    } 

    cout << "가장 긴 이름은 " << longest << " 입니다. \n";  


출력결과





연습문제9

이름, 주소, 나이를 입력받아 다시 출력하는 프로그램을 작성하라. 실행과정 참고


소스코드


char name[100];

    char address[100];

    int age;

    

    cout<<"이름은 ? \n";

    cin.getline(name,100);

    cout << "주소는 ? \n";

    cin.getline(address,100);

    cout<<"나이는 ? \n";

    cin >> age;

    cout << "이름 : " <<name << " 나이 : " <<age<<endl; 


출력결과





연습문제10

문자열을 하나 입력받고 문자열의 부분 문자열을 다음과 같이 출력하는 프로그램을 작성하라. 출력예시 참고.


소스코드

char str[100];

    

    cout<<"문자열 입력 : ";

    cin.getline(str,100);

    int len = strlen(str);

    for(int i = 0; i <= len ; i++){

       for(int j = 0; j < i ; j++){

           cout << str[j];

           }

           cout << endl;

    }


출력결과




연습문제 11


소스코드


int k,n=0;

    int sum = 0;

    cout <<"끝 수를 입력하세요 >> ";

    cin >> n;

    for(k=1; k<=n;k++){

             sum += k;

    }

    cout << "1에서 " <<n<<" 까지의 합은 "<<sum<<" 입니다.\n";


출력결과






연습문제 12


소스코드


함수


int sum(int a,int b){

    int k, res =0;

    for (k = a; k <= b; k++)

    res += k;

    return res;

}


메인


int k,n=0;

    int sum = 0;

    cout <<"끝 수를 입력하세요 >> ";

    cin >> n;

    for(k=1; k<=n;k++){

             sum += k;

    }

    cout << "1에서 " <<n<<" 까지의 합은 "<<sum<<" 입니다.\n


출력결과





연습문제 13

덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%)의 정수 5칙 연산을 하는 프로그램을 작성하라.


소스코드


char opcode;

    int left, right , result;

    

    while(true){

    

    cout << "계산기 프로그램\n";

    cout <<"부호 입력 : ";

    cin >> opcode;

    cout << "숫자1 입력 : ";

    cin >> left;

    cout << "숫자2 입력 : ";

    cin >> right;

    

    

    switch(opcode){

       case '+' : result = left + right;

       break;

       case '-' : result = left - right;

       break;

       case '*' : result = left * right;

       break;

       case '/' : result = left / right;

       break;

       case '%' :{

            if ( right == 0) {

                 cout << "0으로 나누는 오류 발생 ! "; 

                 system("PAUSE");

                 }

             result = left % right;

       }

       break;

       default : cout << "잘못된 연산자 ! \n";

    }

    cout << "계산결과 : " << result<<endl;

    system("pause");

    system("cls");

}


출력결과





연습문제 14


소스코드


  char text[10000];

    

    cout <<"영문 텍스트를 입력하세요. 히스토그램을 그립니다.\n";

    cout <<"텍스트의 끝은 ; 입니다. 10000개 까지 가능합니다.\n";

    cin.getline(text,10000,';');

    cout<<"알파뱃의 갯수 : " << strlen(text) << " 개\n";

    for(int i = 1 ;i<= strlen(text); i++)

     cout << "*";

     cout << endl;


출력결과





'IT > C++' 카테고리의 다른 글

통장관리프로그램  (2) 2014.09.26
[C++] BankAccount 예제  (0) 2014.09.25
[C++] 예제 3  (0) 2014.09.25
[C++] 예제 1  (0) 2014.09.15
[C++] C++기초  (0) 2014.09.05
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
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 31
글 보관함