안녕하세요 엘체프 GG 입니다.

머리에는 안들어오지만 벌써 C++ 들어 왔네요.

객체지향이 시작되는데... 소스만 끄적여 볼꼐요.


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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#pragma once
class Point
{
     
private : 
    int x, y;// 캡슐화(
public:
    int x, y;//x,y좌표 맴버(필드)변수선언
    //생성자,소멸자: 맴버 메서드(함수)
    //reture 자료형을 표시(x)
    //반드시 클래스와 동명!!
    //자바에서는 소멸자(X)
    //생성자(constructor)
    //소멸자(destructor)
    //기본 생성자,소멸자 묵시적 (implicit) 선언 가능.
 
    Point();//기본 생성자(구축자)
    ~Point(); //기본 소멸자
    //기본 생성자,소멸자 안 써도 된다. 
 
    //생성자 오버로딩(overloding)
    Point(int x, int y);
    
    //일반 맴버 메서드 : 추상 메서드(함수의 선언부) :
    //함수의 몸통이 없고 선언부만 있는 함수
    //메뉴, 설계도의 역활
    void setPosition(int _x, int _y);
    void Move(int _x, int _y);
    void Show(void);
};
 
----------------------------------------------------------------------------------------------------
 
#include <iostream>
//c언어의 stude.h와 같은 역활의 header
#include "Point.h"
 
using namespace std//
 
//header 파일(추상부) --> 몸통(body) : 구현부, 구체부, 실체화, 구상
//implementaion, realization, concrete
//기본 생성자
Point::Point(void)
{
    cout << "기본생성자 입니다." << endl;
}
 
 
Point::~Point(void)
{
    cout << "기본 소멸자 입니다." << endl;
}
//set-method = setter : 설정(대입)하는 함수
void Point::setPosition(int _x, int _y){
 
    cout << "SetPosition 임돠" << endl;//log기록
    x = _x;//맴버 필드 <--인자(대입)
    y = _y;
 
}
 
void Point::Move(int x, int y){
 
    cout << "Move 함수임돠" << endl;
    this->+= x; //증가 이동 한다.
    this->+= y;
}
 
void Point::Show(void){
    cout << "Show 출력하는놈이다" << endl;
    cout << "(" << x <<"," <<y<<")" << endl;
}
 
Point::Point(int x, int y){
    cout << "오버로딩된 생성자" << endl;
    this->= x;
    this->= y;
}
 
------------------------------------------------------------------------------------------------------------
 
 
#include <iostream>
#include "Point.h"
 
using namespace std;
 
int main(void){
    Point p1, p2(10,10);
    // 객체 변수(인스턴스) 선언,생성
    //p1 : 기본 생성자 묵시적 사용
    //p2(10,10) : 오버로딩된 생성자
    //메서드명 묵시적 사용, 인자는 명시적 사용
    //Java : Point p1 = new Point();, new,생성자가 명시적으로 사용되어야함!
    //C++ 생성자가 미사용(X), 객저 생성시 묵시적 언급!
 
    p1.setPosition(2030);
    //p1.x = 20;//초기화에 20을 대입
    //p1.y = 30;
 
    p1.Move(100100);
    p2.Move(200200);
 
    p1.Show();
    p2.Show();
 
    system("PAUSE");
    return 0;
}
 
 
cs



이상 감사합니다.

'스터디 > C,C++' 카테고리의 다른 글

C++ 문자열 경사면 인쇄하기  (9) 2018.02.19
C++ 클래스 실습과제  (7) 2018.02.19
C 문자열 거꾸로 출력하기  (8) 2018.02.12
C 문자열 자르기 문제  (7) 2018.02.12
구조체  (6) 2018.02.05

다운로드 

문) 아래와 같이 제시된 문자열을 역순으로 화면에 인쇄할 수 있도록 프로그램하십시오.

단, 문자열의 길이를 측정할 경우 string.h 소속의 strlen 함수를 사용하고 문자열의 인쇄는 반복문을 활용합니다.
아래 해당되는 코드의 일부분을 완성하십시오.

strPtr = "green academy c nightline";




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main() {
 
 char *strPtr = NULL;
 strPtr = "green academy c nightline";
 int i;
 int sizeStr = strlen(strPtr);
 
 // 이 부분의 코드를 완성하십시오. 


 
 printf("\n");
 system("PAUSE");
}



-----------------------------------------------------------




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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main() {
 
    char *strPtr = NULL;
    strPtr = "green academy c nightline";
    int i;
    int sizeStr = strlen(strPtr);//strlen 함수로 sizeStr 라는변수에 문자열의 길이를 저장 
 
    ///////////////////////////////////////////
    char strPtr2[] = "green academy c nightline";
 
    int sizeStr2 = sizeof(strPtr2) / sizeof(char);
 
    // 주의사항) strlen과 위의 경우 길이 편차로 인해
    // 반복문으로 인쇄할 경우 주의가 필요하다.
 
    printf("strlen 사용 길이 : %d\n", sizeStr); // 25
    printf("sizeof 사용 길이 : %d\n", sizeStr2); // 25+1 = 26
    ////////////////////////////////////
 
    for (i = sizeStr - 1; i >= 0; i--//sizeStr-1(index가0부터니) 부터 0까지 내림차순으로 strPtr 문자열을 출력    
    {
        printf("%c", strPtr[i]);
    }    
    printf("\n");
    system("PAUSE");
}
cs


'스터디 > C,C++' 카테고리의 다른 글

C++ 클래스 실습과제  (7) 2018.02.19
C++ 클래스 응용 소스  (6) 2018.02.19
C 문자열 자르기 문제  (7) 2018.02.12
구조체  (6) 2018.02.05
배열포인터활용 성적구하기  (7) 2018.01.31

문) 아래와 같이 제시된 문자열을 화면에 인쇄하되 공백문자를 만나면 개행(줄바꿈:line-feed) 될 수 있도록

    처리하는 프로그램을 완성합니다.

strPtr = "green academy c class";




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main() {
 
 char *strPtr = NULL;
 strPtr = "green academy c class";
 int i;
 int sizeStr = strlen(strPtr);
 
 for (i=0; i<sizeStr; i++) {
 
// 이 부분을 완성하십시오.
// 공백문자(' ')를 검색하여 개행문자(\n)으로 치환하고
// 그렇지 않으면 인쇄하는 조건문을 완성합니다.
    

  } // for

 printf("\n");
 system("PAUSE");
}



-------------------------------------------------



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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main() {
 
    char *strPtr = NULL;//포인트 선언
    strPtr = "green academy c class";
    int i;
    int sizeStr = strlen(strPtr);//문자에 담고
 
    for (i = 0; i<sizeStr; i++) {
        /* 방법-1
        if (strPtr[i] == ' ')
        printf("\n");
        else
        printf("%c", strPtr[i]);
        */
 
        // 방법-2
        printf("%c", strPtr[i] == ' ' ? '\n' : strPtr[i]);//삼항연산자로 바로 출력
 
    } // for
 
    printf("\n");
    system("PAUSE");
}
cs


'스터디 > C,C++' 카테고리의 다른 글

C++ 클래스 응용 소스  (6) 2018.02.19
C 문자열 거꾸로 출력하기  (8) 2018.02.12
구조체  (6) 2018.02.05
배열포인터활용 성적구하기  (7) 2018.01.31
중첩반복문 별찍기  (7) 2018.01.26

안녕하세요 엘체프 GG 입니다.

오늘은 구조체입니다.


-구조체의 값을 구해보죠

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
#include <stdio.h>
#include <stdlib.h>
struct Point
{
    int x;        // x좌표
    int y;        // y좌표
};
 
int main(void)
{
    int i;
    struct Point pt[3= { { 1020 }, { 3040 }, { 5060 } };
    struct Point *ptr = pt;
    for (i = 0; i<3; i++)
    {
        printf("%d번째 구조체 값: (%d, %d)\n", i + 1, ptr[i].x, ptr[i].y);
    }
 
    printf("첫번째 구조체 값: (%d, %d)\n\n",
        pt->x, pt->y); // (10,20) (정상) 
    printf("두번째 구조체 값: (%d, %d)\n\n",
        (*ptr++).x, (*ptr++).y); // (30,20) (비정상 출력) -> (30, 40) (원래의 값)
 
    system("PAUSE");
    return 0;
}
cs



구조체문제풀어보기

문) 아래의 형식과 같이 구성된 회원정보를 Member라는 이름의 구조체를 작성하고 데이터를 입력하여 출력 화면과 같이 인쇄될 수 있도록 프로그래밍합니다.


참고) 데이터 입력시 문자열은 아래와 같이 작성할 수 있다.

sprintf(member.email, "abcd@naver.com");

출력 결과 화면)

회원정보 아이디 : green_c
회원정보 이름 : 홍길동
회원정보 모바일 : 010-1234-5678
회원정보 연락처 : 02-111-2222
회원정보 가입일 : 2018-02-01


---------------------------------------------------------------------------------
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
// #include <string.h> // strcpy 사용시
 
typedef struct {
    char id[21];            //아이디
    char pw[21];            //비밀번호
    char name[51];            //이름
    char gender;            //성별
    char email[51];            //이메일
    char mobile[14];        //휴대폰번호
    char phone[14];            //유선전화번호
    char zip1[8];            //우편번호1
    char address1[201];        //주소1
    char zip2[8];            //우편번호2
    char address2[201];        //주소2
    char birthday[11];        //생년월일
    char joindate[11];        //가입일
} Member;
 
void main() {
 
    Member member; //구조체 호출
 
    sprintf(member.id, "class");
    sprintf(member.pw, "123456879");
    sprintf(member.name, "남근곤");
    member.gender = 'm';
    sprintf(member.email, "abcd@naver.com");
    sprintf(member.mobile, "010-1234-5678");
    sprintf(member.phone, "02-111-2222");
    sprintf(member.zip1, "123-456");
    sprintf(member.address1, "서울 마포구");
    sprintf(member.zip2, "456-789");
    sprintf(member.address2, "서울 종로구");
    sprintf(member.birthday, "2000-01-01");
    sprintf(member.joindate, "2018-02-01");
 
 
    printf("회원정보 아이디 : %s\n", member.id);
    printf("회원정보 이름 : %s\n", member.name);
    printf("회원정보 모바일 : %s\n", member.mobile);
    printf("회원정보 연락처 : %s\n", member.phone);
    printf("회원정보 가입일 : %s\n", member.joindate);
 
    system("PAUSE");
}
cs


-제품구하기

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define MAX_NAME 50
 
struct Item {
    char name[MAX_NAME];
    int price;
    int num;
};
 
int main(int argc, char *argv[])
{
    int i;
    int count, sum = 0, total;
    struct Item *item = NULL;
 
    printf("항목의 갯수를 입력하세요.");
    scanf("%d"&count);
 
    item = (struct Item *)malloc(count * sizeof(item));
 
    for (i = 0; i<count; i++) {
 
        printf("\n품명: ");
 
        scanf("%s"&item[i].name);
 
        printf("\n단가: ");
        scanf("%d"&item[i].price);
 
        printf("\n수량: ");
        scanf("%d"&item[i].num);
 
    } // for end
 
    printf("\n-------------------------------------\n");
    printf("품명\t단가\t수량\n");
    printf("-------------------------------------\n");
 
    for (i = 0; i<count; i++) {
        printf("%s\t", item[i].name);
        printf("%d\t", item[i].price);
        printf("%d\n", item[i].num);
 
        sum += (item[i].price * item[i].num);
    }
 
    free(item);
 
    total = (int)(sum * 1.1);
    printf("\n-------------------------------------\n");
    printf("합계:%d\n", sum);
    printf("총액: %d  (부가세 10%%포함)\n", total);
 
    system("PAUSE");
    return 0;
}
cs






-성적구하기

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h>
 
#define MAX_NAME 20
#define SUBJECTS 3
 
struct Grade
{
    char name[MAX_NAME];        // 이름
    int score[SUBJECTS];        // 점수
    int total;            // 총점
    double average;            // 평균
};
 
int main(void)
{
    int students, i, j;
    struct Grade *grade;
    char *subject[SUBJECTS] = { "국어""영어""수학" };
    /////////////////////////////////////////////////////////
    // 학생 수 입력 및 메모리 할당
    printf("성적처리 할 학생 수를 입력하세요: ");
    scanf("%d"&students);
    grade = (struct Grade *)malloc(students*sizeof(struct Grade));
    /////////////////////////////////////////////////////////
    // 성적 입력
    for (i = 0; i<students; i++)
    {
        printf("**************** %d번째 학생 ****************\n", i + 1);
        printf("이름: ");
        scanf("%s", grade[i].name);
        for (j = 0; j<SUBJECTS; j++)
        {
            printf("%s: ", subject[j]);
            scanf("%d"&grade[i].score[j]);
        }
    }
    /////////////////////////////////////////////////////////
    // 성적 계산
    for (i = 0; i<students; i++)
    {
        grade[i].total = 0;
        for (j = 0; j<SUBJECTS; j++)
        {
            grade[i].total += grade[i].score[j];
        }
        grade[i].average = (double)grade[i].total / SUBJECTS;
    }
 
    /////////////////////////////////////////////////////////
    // 성적 출력
    printf("--------------------------------------------------\n");
    printf("이름\t| 국어\t| 영어\t| 수학\t| 총점\t| 평균\n");
    printf("--------------------------------------------------\n");
    for (i = 0; i<students; i++)
    {
        printf("%s\t| ", grade[i].name);
        for (j = 0; j<SUBJECTS; j++)
        {
            printf("%d\t| ", grade[i].score[j]);
        }
        printf("%d\t| ", grade[i].total);
        printf("%0.2f\n", grade[i].average);
    }
    printf("--------------------------------------------------\n");
    free(grade);        // 메모리 반납
    system("PAUSE");
    return 0;
}
 
cs


'스터디 > C,C++' 카테고리의 다른 글

C 문자열 거꾸로 출력하기  (8) 2018.02.12
C 문자열 자르기 문제  (7) 2018.02.12
배열포인터활용 성적구하기  (7) 2018.01.31
중첩반복문 별찍기  (7) 2018.01.26
C실행툴 DEV-C++ 설치  (5) 2018.01.22

안녕하세요 엘체프 GG 입니다.

오늘은 드디어 어렵다는 포인터를 배웠는데 먼말인지....ㅋㅋ 일딴 반복숙달하고 이해할 예정.

배열포인터 성적 구하는 로직입니다.


-포인트배열의 활용 성적구하기

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
32
33
34
#include <stdio.h>
#include <stdlib.h>
#define LESSONS 3
int main(void)
{
    int students;                // 학생수
    int sum = 0;                // 합계
    int l, s;                // for루프를 위한 임시변수
    int score[][LESSONS] = {
        { 859095 },            // 1번째 학생의 점수
        { 708260 },            // 2번째 학생의 점수
        { 708260 },
        { 859095 },            // 1번째 학생의 점수
        { 708260 },            // 2번째 학생의 점수
        { 708260 },
        { 708260 },
        {788492} };            // 8번째 학생의 점수
    char *lesson[] = { "Korean""English""Math" };
 
    students = sizeof(score) / sizeof(score[0]);    // 학생 수 계산
    for (l = 0; l<LESSONS; l++)             // 과목에 대해 루프
    {
        sum = 0;
        for (s = 0; s<students; s++)         // 학생 수만큼 루프
        {
            sum += score[s][l];        // 과목별 총합 계산
        }
        printf("[%7s] Total: %d, ", lesson[l], sum);
        printf("Average: %0.2f\n", (double)sum / students);
    }
    system("PAUSE");
    return 0;
}
 
cs


-배열포인터의 활용 성적구하기


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
32
33
34
35
36
#define _CRT_SECURE_NO_WARNINGS  /* scanf사용시 */
#include <stdio.h>
#include <stdlib.h>
#define LESSONS 3
 
int main(void)
{
    int students, sum = 0, l, s;
    char *lesson[] = { "Korean""English""Math" };
    int(*score)[LESSONS] = NULL;
    printf("학생 수를 입력하세요: ");
    scanf("%d"&students); //입력받기
    score = (int(*)[LESSONS])malloc(sizeof(int[LESSONS])*students); //malloc 힙역역의 자원을 쓴다.
    for (s = 0; s<students; s++)             // 학생 수만큼 루프
    {
        printf("%d번째 학생의 점수: ", s + 1);
        for (l = 0; l<LESSONS; l++)            // 과목 수만큼 루프
        {
            scanf("%d"&score[s][l]);        // 점수 입력 받음
        }
    }
    for (l = 0; l<LESSONS; l++)                 // 과목 수만큼 루프
    {
        sum = 0;
        for (s = 0; s<students; s++)             // 학생 수만큼 루프
        {
            sum += score[s][l];            // 과목별 총합 계산
        }
        printf("[%7s] Total: %d, ", lesson[l], sum);
        printf("Average: %0.2f\n", (double)sum / students);
    }
    free(score);// 메모리 해제 ex)자바의 가비지컬럭터 자원반납
    system("PAUSE");
    return 0;
}
 
cs


-2차원 포인터의활용 성적구하기.




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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#define _CRT_SECURE_NO_WARNINGS  /* scanf사용시 */
#include <stdio.h>
#include <stdlib.h>
#define LESSONS 3
 
int main(void)
{
    //////////////////////////////////////////////
    //변수부
    int students, sum = 0, l, s;
    int *lessons = NULL;
    int **score = NULL;
    //////////////////////////////////////////////
    //입력부
    printf("학생수를 입력하세요: ");
    scanf("%d"&students);
    score = (int **)malloc(sizeof(int *)*students);    // 세로축에 해당하는 메모리 할당
    lessons = (int *)malloc(sizeof(int)*students);
    
    ///////////////////////////////////////
    //처리부//출력부
    for (s = 0; s<students; s++)                 // 학생 수만큼 루프
    {
        printf("%d번째 학생의 수강과목 수: ", s + 1);
        scanf("%d"&lessons[s]);                // 학생별 수강과목 수 입력
        score[s] = (int *)malloc(sizeof(int)*lessons[s]);    // 가로축에 해당하는 메모리 할당
        printf("%d번째 학생의 점수 (%d개): ", s + 1, lessons[s]);
        
        for (l = 0; l<lessons[s]; l++)            // 과목 수만큼 루프
            scanf("%d"&score[s][l]);        // 점수 입력
    }
 
    for (s = 0; s<students; s++)                 // 학생 수만큼 루프
    {
        sum = 0;
        for (l = 0; l<lessons[s]; l++)
            sum += score[s][l];            // 학생별 평균 계산
        printf("%d번째 학생: %0.2f\n", s + 1, (double)sum / lessons[s]);
    }
    ///////////////////////////////////////////
    //자원반납부
    for (s = 0; s<students; s++)                // 학생 수만큼 루프
        free(score[s]);                    // 가로축에 해당하는 메모리 반납
    free(score);                        // 세로축에 해당하는 메모리 반납
    free(lessons);
    system("PAUSE");
    return 0;
}
 
cs



감사합니다.



'스터디 > C,C++' 카테고리의 다른 글

C 문자열 자르기 문제  (7) 2018.02.12
구조체  (6) 2018.02.05
중첩반복문 별찍기  (7) 2018.01.26
C실행툴 DEV-C++ 설치  (5) 2018.01.22
ASCII 코드 도표  (6) 2018.01.18

안녕하세요 엘체프 GG 입니다.

for문을 활용한 별찍기 입니다.


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
32
33
34
package jse_ex_20180123_2;
 
public class Diamond {
    public static void main(String[] args) {
 
        // 상단 정삼각형을 출력하는 반복문
        for (int i = 0; i < 5; i++) {
            for (int j = i; j < 5; j++) {
                System.out.print(" ");
            }
            for (int j = 0; j < i; j++) {
                System.out.print("*");
            }
            for (int j = 0; j < i - 1; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
        // 하단 역삼각형을 출력하는 반복문
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < i; j++) {
                System.out.print(" ");
            }
            for (int j = i; j < 5; j++) {
                System.out.print("*");
            }
            for (int j = i + 1; j < 5; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
 
cs



감사합니다.


'스터디 > JAVA' 카테고리의 다른 글

자바 컬렉션프레임워크(CollectionFramework)_1  (302) 2018.02.22
자바 내부 클래스  (334) 2018.02.22
자바 2차원배열 성적구하기  (6) 2018.01.30
자바 반복문 성적내기  (8) 2018.01.30
자바 구구단 로직  (8) 2018.01.30

안녕하세요 엘체프 GG 입니다.

2차원 배열의 성적 합계 평균 구하는 로직입니다.


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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package jse_ex_20180125_1;
 
public class arryEx4 {
 
    public static void main(String[] args) {
        //2차원 배열 성적구하기
        
        int score[][] = new int [][] {
            {10,11,15},
            {20,16,15},
            {20,27,25}
                                        };//배열의 선언+할당+초기화 
    
//        System.out.println("score : " + score.length);                                
        
        int num = score.length;     //인원수
        int textNum = score[0].length;
//        System.out.println("textNum : " + textNum);
        int sum [] = new int [num];//총점
        int avg [] = new int [num];//평균
        
/*        //1명의 총점을
        sum[0] =0;//초기화
        for(int i = 0; i < textNum; i++){
//            sum[0] = sum[0] + score[0][i];
            sum[0] +=  score[0][i];
        }
        System.out.println("첫번째 합은 : " + sum[0]);
        avg [0] = sum[0] / textNum;
        System.out.println("첫번째 평균은 : " + avg[0]);*/
        
        for(int i = 0; i < num; i++ ){//인원수
            for(int j =0; j < textNum; j++){
//                sum[i] = sum[i] + score[i][j];
                sum[i] += score[i][j];
            }//for-j
//            System.out.println("합은 : " + sum[i]);
//            System.out.printf("%d번 학생의 총점 = %d\n" ,i+1 ,sum[i]);
            avg[i]=sum[i] / textNum;
//            System.out.printf("%d번 학생의 평균 = %d\n" ,i+1 ,avg[i]);
            
            System.out.printf("%d번 학생의 총점 = %d점, 평균 = %d점\n\n" ,i+1,sum[i] ,avg[i]);
//            System.out.println("평균은 : " + avg[i]);
        }//for-j    
        
    }//end main
 
}//end class
 
cs



감사합니다.


'스터디 > JAVA' 카테고리의 다른 글

자바 내부 클래스  (334) 2018.02.22
자바 for문 별찍기  (292) 2018.01.30
자바 반복문 성적내기  (8) 2018.01.30
자바 구구단 로직  (8) 2018.01.30
이클립스 로딩화면 변경하기  (5) 2018.01.22

안녕하세요 엘체프 GG 입니다.

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
32
33
34
35
package jse_ex_20180125_1;
 
import java.util.Scanner;
 
public class JavaExScoreIf1 {
 
    public static void main(String[] args) {
        
//        java.util.Scanner sc = new java.util.Scanner(System.in);//import 안할시 풀경로 호출
        Scanner sc = new Scanner(System.in);//표준입력(키보드)
        System.out.print("학점을 입력 하세요 : ");
        
        int score = sc.nextInt();
//         System.out.printf("score = %d\n", score);        
        
        char credit = 'F';        
        if(score >= 90 && score <=100){
            credit = 'A';            
        }else if(score >= 80 && score <=89){
            credit = 'B';            
        }else if(score >= 70 && score <=79){
            credit = 'C';            
        }else if(score >= 60 && score <=69){
            credit = 'D';            
        }
//        else if(score >= 50 && score <=59){
//            credit = 'F';        
//        }
        else{            
        }
        System.out.println("학생의 학점은 : " + credit);
    }
 
}
 
cs


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
package jse_ex_20180125_1;
 
import java.util.Scanner;
 
public class JavaExScoreSwitch {
 
    public static void main(String[] args) {        
 
        Scanner sc = new Scanner(System.in);//표준입력(키보드)
        System.out.print("시험점수 입력 하세요 : ");        
        int score = sc.nextInt();
        char credit ;
        
        score =  score /10;
 
        switch(score){
        case : credit = 'A' ; break ;
        case : credit = 'B' ; break ;
        case : credit = 'C' ; break ;
        case : credit = 'D' ; break ;
        default : credit = 'F' ;    
            }
        
        System.out.println("당신의 학점은 "+ credit + " 입니다.");
        
        
    }//end main
 
}//end class
 
cs


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package jse_ex_20180125_1;
 
import java.util.Scanner;
 
public class JavaExScoreSamhang {
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);//표준입력(키보드)
        System.out.print("시험점수 입력 하세요 : ");        
        int score = sc.nextInt();
        char credit ;
        
        credit = score >= 90 && score <= 100 'A' :
                score >= 80 && score <= 89 'B' :
                score >= 70 && score <= 79 'C' :
                score >= 60 && score <= 69 'D' : 'F';
        
        
        System.out.println("당신의 학점은 "+ credit + " 입니다.");
    }//erd main
 
}//end class
 
cs


감사합니다.

'스터디 > JAVA' 카테고리의 다른 글

자바 for문 별찍기  (292) 2018.01.30
자바 2차원배열 성적구하기  (6) 2018.01.30
자바 구구단 로직  (8) 2018.01.30
이클립스 로딩화면 변경하기  (5) 2018.01.22
자바 설치 및 환경 설정  (9) 2018.01.18
안녕하세요 엘체프 GG 입니다.
자바 구구단 로직 입니다.

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
32
33
34
package jse_ex_20180125_1;
 
import java.util.Scanner;
 
public class scangugu {
 
    public static void main(String[] args) {
        String str = null// string의 초기화
        int num = 0;// int의 초기화
        char ch = '\0'// char의 초기화
 
        while (true) {// while 반복문으로 여러번 물어본다.
            Scanner sc = new Scanner(System.in);// 표준입력Scanner 호춯
            System.out.println("원하는 구구단을 입력하세요 : (종료하려면 q)");
            str = sc.nextLine();// string에 scnner 받을쑤 있게
 
            ch = str.charAt(0); // 반복문벗어 날쑤 있도록 선언한다.
            if (ch == 'q') {
                break;
            }
 
            num = Integer.parseInt(str);// string으로 받아온 값을 int로 받는다.
            for (int i = num; i <= num; i++) {// 구구단 로직!
                for (int j = 1; j <= 9; j++) {
                    System.out.printf("%d x %d = %d%n", i, j, i * j);
                }
 
            }
        } // end while
 
    }// end main
 
}// end class
 
cs


감사합니다.

'스터디 > JAVA' 카테고리의 다른 글

자바 2차원배열 성적구하기  (6) 2018.01.30
자바 반복문 성적내기  (8) 2018.01.30
이클립스 로딩화면 변경하기  (5) 2018.01.22
자바 설치 및 환경 설정  (9) 2018.01.18
IT 추천 도서  (10) 2018.01.18
별찍기 


1.직삼각형

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int i, j;
 
    for (i = 0; i < 5; i++){
        for (j = 0; j < i + 1; j++){
            printf("%c", '*');
        }//for -i
        printf("\n");
    }
    system("pause");
    return 0;
}
cs

2.역직삼각형

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int i, j;
 
    for (i = 5; i > 0; i--){
        for (j = i; j > 0; j--){
            printf("%c", '*');
        }//for -i
        printf("\n");
    }
    system("pause");
    return 0;
}
cs

3.정삼각형

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int i, j;
 
    for (i = 1; i <= 5; i++){
        for (j = 5 - i; j > 0; j--){
            printf("%c", ' ');
        }
            for (j = 0; j < 2 * i - 1;j++){
                printf("%c", '*');
                
            }
            printf("\n");
        }
        
    
    system("pause");
    return 0;
}
cs

4.역삼각형

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int i, j;
 
    for (i = 0; i < 5; i++){
        for (j = 0; j <i; j++){
            printf("%c", ' ');
        }
        for (j = 0; j <(5-i)* 2 - 1; j++){
            printf("%c", '*');
 
        }
        printf("\n");
    }
 
 
    system("pause");
    return 0;
}
cs

5. 다이아


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int i, j,a=0,da=1;
 
    for (i = 1; i <= 9; i++){
        a = a + da;
        if (a == 5)da=-1;
        for (j = 0; j <5-a; j++){
            printf("%c", ' ');
        }
        for (j = 0; j < a * 2 - 1; j++){
            printf("%c", '*');
 
        }
        printf("\n");
    }
 
 
    system("pause");
    return 0;
}
cs

입력받아 찍기!

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
#define _CRT_SECURE_NO_WARNINGS  /* scanf사용시 */
#include <stdio.h> /* printf사용시 */
#include <stdlib.h> /* systemf사용시 */
 
 
int main(void)
{
    int i, j;    /* i: 가로라인 계산, j: 별갯수 계산 */
    int line;    /* 입력받을 수를 저장할 변수 */
 
    printf("입력 : ");
    scanf("%d"&line);
 
    for (i = 0; i < line; i++/* 입력받은 수 만큼 가로라인 계산 */
    {
        for (j = 0; j <= i; j++/* 별의 갯수를 라인수에 맞춰 출력 */
        {
            printf("*");
        }
        printf("\n");
    }
 
 
 
    system("PAUSE");
    return 0;
}
cs

정마름모 찍기


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
32
#include <stdio.h>
#include <stdlib.h>
 
int main() {
 
    int i, j;
 
    for (i = 0; i < 5; i++) {
 
        for (j = 0; j<(- i) * - 2; j++)
            printf("%c"' ');
 
        for (j = 0; j<((i + 1* 4- 3; j++)
            printf("%c"'*');
 
        printf("\n");
    }
 
    for (i = 3; i >= 0--i) {
 
        for (j = (- i) * - 2; j>0; j--)
            printf("%c"' ');
 
        for (j = ((i + 1* 4- 3; j>0; j--)
            printf("%c"'*');
 
        printf("\n");
    }
 
    system("PAUSE");
    return 0;
}
cs


하.... 어렵다.... 엉청.... 언제쯤 이해해서 쓸쑤 있으려나....


'스터디 > C,C++' 카테고리의 다른 글

C 문자열 자르기 문제  (7) 2018.02.12
구조체  (6) 2018.02.05
배열포인터활용 성적구하기  (7) 2018.01.31
C실행툴 DEV-C++ 설치  (5) 2018.01.22
ASCII 코드 도표  (6) 2018.01.18

+ Recent posts