성적 처리 프로그램 (분석->설계->구현)

2019. 9. 20. 04:06·C/C

1. 분석

Requirement에 따라서 어떤 프로그램을 만들 것인지 기술한다.

기능, 입력-출력, 변수와 자료형, 처리과정을 명세한다

 

※ 처리과정에는 '무엇'(What)을 하는지만 적는다. 어떻게는 포함되지 않는다.

2. 설계

설계 문서를 기반으로 Flowchart를 그린다.

 

malloc함수, 포인터, 배열같은 것을 Flowchart에 담아낼 때 다른 표현이 있는지 찾아봐야겠다.

3. 구현

https://github.com/milkcoke/C/blob/master/%EC%84%B1%EC%A0%81%20%EC%B2%98%EB%A6%AC%20%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8/%EC%84%B1%EC%A0%81%EC%B2%98%EB%A6%AC%20%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8.c

 

milkcoke/C

C Programming with SASD(Structured Analysis and Structured Development) - milkcoke/C

github.com

실행 결과 예시

 

한가지 구현에서 에러가나는 부분이있는데

%s, %d, %d 한번에 학생명과 국어 영어 성적을 동시입력 받을 경우

포인터배열 주소범위를 침범하는 현상이 나타나는지

성적값이 이상하게 대입되거나 segmentation fault가 발생한다..

몇 시간 디버깅해봤으나 저부분은 아직 의문...

 

scanf_s도 해봤는데 ㅠㅠ

하는 수 없이 학생명과 성적을 따로 입력받는걸로 봐서는

문자열 null문자 입력이나 Enter누를 때 내부적으로 수행되는 처리 때문인것 같다.

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

Memory Map 이해하기(Feat.성적처리 프로그램 소스)  (0) 2019.10.02
2차원 배열 이해  (0) 2019.09.29
배열 초기화 사소한 Tip  (0) 2019.09.26
선택정렬 구현해보기 (feat. Flow Chart)  (0) 2019.09.17
calloc 함수  (0) 2019.06.10
'C/C' 카테고리의 다른 글
  • 2차원 배열 이해
  • 배열 초기화 사소한 Tip
  • 선택정렬 구현해보기 (feat. Flow Chart)
  • calloc 함수
M_Falcon
M_Falcon
  • M_Falcon
    Falcon
    M_Falcon
  • 전체
    오늘
    어제
    • 분류 전체보기 (432)
      • Web (16)
        • Nodejs (14)
        • Javascript (23)
        • FrontEnd (4)
      • DataBase (39)
        • Fundamental (1)
        • Redis (4)
        • PostgreSQL (10)
        • NoSQL (4)
        • MySQL (9)
        • MSSQL (3)
        • Error (4)
      • Algorithm (79)
        • Algorithm (문제풀이) (56)
        • Algorithm (이론) (23)
      • JVM (65)
        • Spring (13)
        • JPA (5)
        • Kotlin (13)
        • Java (24)
        • Error (7)
      • 기타 (70)
        • Kafka (3)
        • Kubernetes (3)
        • Docker (13)
        • git (19)
        • 잡동사니 (27)
      • 재테크 (11)
        • 세무 (4)
        • 투자 (3)
        • 보험 (0)
      • BlockChain (2)
        • BitCoin (0)
      • C (32)
        • C (10)
        • C++ (17)
        • Error (3)
      • Low Level (8)
        • OS (3)
        • 시스템 보안 (5)
      • 네트워크 (3)
      • LINUX (30)
        • Linux (26)
        • Error (4)
      • 저작권과 스마트폰의 이해 (0)
      • 생각 뭉치 (6)
      • 궁금증 (2)
      • Private (4)
        • 이직 경험 (0)
        • 꿈을 찾아서 (1)
      • Android (21)
        • OS (4)
  • 블로그 메뉴

    • 홈
    • WEB
    • 알고리즘
    • DataBase
    • Linux
    • Mobile
    • C
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    database
    linux
    백준
    Bitcoin
    Git
    알고리즘
    Programmers
    android
    kafka
    docker
    PostgreSQL
    C++
    Spring
    algorithm
    프로그래머스
    javascript
    ubuntu
    JPA
    Kotlin
    java
  • hELLO· Designed By정상우.v4.10.3
M_Falcon
성적 처리 프로그램 (분석->설계->구현)
상단으로

티스토리툴바