이 글은 프로그래밍 실천 보고서의 모범문이다. 자세한 내용은 다음을 참조하십시오.
본문 편집: yjbys.com
1, 실험 목적 및 내용
교과 과정 설계를 통해 C++ 를 이용한 객체 지향 프로그래밍, 객체 모델 구축, 소프트웨어 복잡성 감소, 소프트웨어 재사용 가능성 및 서비스 용이성 향상, 소프트웨어 생산성 향상, 객체 지향 프로그래밍 기술에 대한 종합적인 이해 등을 수행할 수 있습니다.
학생들에게 지도 교사의 지도 하에 인턴십 과목의 전체 내용을 독립적으로 완성하도록 요구하다.
(1) 조사와 실천을 통해 연구 관련 기술 자료를 수집합니다.
(2) 설계 프로젝트의 기본 단계와 방법을 파악한다.
(3) 프로젝트 요구 사항에 따라 컴퓨터 실험 디버깅이 수행되었습니다.
2. 주제 1: 경기의 평균 점수를 구하다.
2. 1 프로그램 내용
스포츠, 문예대회, 선거 등 분류 종목에서 공평성을 위해 n 개 심사위원이 점수를 매긴 후 가장 높은 점수와 가장 낮은 점수를 뺀 다음 평균 점수를 받는 경우가 많다. N 이 크면 (이 문제는 9 로 설정됨) 두 개의 가장 높은 점수와 두 개의 가장 낮은 점수를 제거한 다음 평균 점수를 매겨야 한다. 이 알고리즘은 프로그래밍을 통해 구현됩니다.
2.2 실험 프로그램 설계 및 구조
(1) 수요 분석:
9 명의 심사위원 점수를 입력하면 프로그램 최종 결과는 최고점과 최저점을 뺀 평균 점수다.
(2) 설계 구조:
전체 구조
-응?
데이터 구조
A[0] 에서 a[9] 까지 9 명의 심사위원에게 점수를 매겼습니다.
2.3 설계 프로세스
(1) iostream/ofstream/fstream, input, output 및 iostream 객체를 설정하고 사전 프로그래밍 명령 및 구조 데이터를 정의하는 ifndef 를 설정합니다.
(2) 흐름도에 따라 주 함수를 만들고 for 루프를 사용합니다.
(3) 디버깅을 위해 주 함수를 실행합니다.
2.4 운영 결과
3. 주제 2: 게임 게임
3. 1 프로그램 내용:
23 개의 성냥게임: 두 플레이어가 23 개의 성냥 (또는 막대기) 을 갖기 시작했습니다. 각 플레이어는 번갈아 1, 2 ~ 3 개의 성냥을 제거하고 마지막 성냥을 얻은 사람이 졌다. 프로그램을 써서 컴퓨터로 이 게임을 하다.
3.2 실험 프로그램 설계
(1) 수요 분석:
이 프로그램을 실행하면 사람들이 컴퓨터와 23 경기를 할 수 있다.
(2) 디자인 아이디어:
컴퓨터가 먼저 4 개 이하와 일치할 수 있다면 컴퓨터가 이길 것이다.
3.3 설계 프로세스
(1) iostream/ofstream/fstream, input, output 및 iostream 객체를 설정하고 사전 프로그래밍 명령 및 구조 데이터를 정의하는 ifndef 를 설정합니다.
(2) 디자인 아이디어에 따라 if 로 문장 디자인을 판단한다.
(3) 주요 기능 수립
(4) 디버깅을 위해 주 함수를 실행합니다.
-응?
3.4 운영 결과
4. 주제 3: 축구 점수
4. 1 디자인 콘텐츠:
문제 설명
축구 리그는 홈과 원정 이중순환제를 채택하여 승당 3 점, 평당/Kloc-0 점, 마이너스당 0 점을 기록했다. 두 팀 (또는 두 팀) 의 점수가 같을 때, 순승구 (즉, 골 수와 실점 수의 차이) 가 가장 많다. 순승구가 같으면, 골 수가 가장 많다. 그래도 같으면 추첨을 하겠습니다. 프로그램을 짜서 최근 1 라운드 이후 각 팀의 점수와 순위를 계산해 보세요.
기본 요구 사항
스코어 테이블을 설정하는 구조는 다음과 같습니다: 팀 이름 (15 자 이하), 출전, 승전, 평전, 마이너스경기, 골, 실구, 스코어. 포인트 테이블은 텍스트 파일에 배치됩니다. 최근 1 라운드 결과는 홈팀 이름 (사용 가능한 코드), 원정팀 이름 (사용 가능한 코드), 홈팀 점수 (즉 골 수), 원정팀 점수 (즉 골 수) 로 키보드에서 입력됩니다. 프로그램은 이번 결과에 따라 각 팀의 점수와 순위를 수정해야 하는데, 최신 스코어 테이블은 여전히 원래 스코어 파일에 있으며 동시에 화면에 표시됩니다.
테스트 데이터
그해 중국 A 리그 또는 A-B 리그의 데이터 입력을 선택하여 신문에 발표된 데이터와 일치하는지 확인할 수 있습니다.
4.2 설계:
팀 클래스와 각 팀이 팀 클래스의 객체인 객체 배열을 정의합니다. 선수권 대회에 참가하는 팀의 수가 고정되어 있기 때문에 각 팀은 객체 배열의 배열 요소에 저장됩니다. 매번 두 팀의 경기 성적을 입력할 때마다 팀의 관련 데이터 (경기 수, 승전 수, 골 수 등) 에 해당한다. ) 를 수정할 수 있습니다. 경기 성적이 입력되면 리그 순위 방법 (객체 배열은 매개변수이고 점수는 순위 요소) 을 호출하여 순위를 정하고 출력합니다.
5. 디자인의 특징과 경험:
한 학기의 학습과 컴퓨터 실습을 통해 나는 C++ 언어에 대해 더 잘 알게 되었다. 만약 내가 그것을 잘 배우고 싶다면, 나는 실천에 집중해야 한다. 끊임없는 컴퓨터 조작을 통해 나는 더 잘 배울 수 있다. 연습을 통해 다양한 제어 구조와 문, 배열, 포인터 배열, 문자 배열, 동적 배열, 함수 정의 및 호출 메서드와 같은 많은 단점을 발견했습니다. 프로그래밍에서 함수의 구체적인 적용: 가변 저장 기능 및 식별자의 범위, 연습을 통해 이러한 측면을 이해하고 개선했습니다. 교과 과정 설계는 하나의 임무일 뿐만 아니라, 일종의 도전과 체험이다. 교과 과정 설계에서는 사용 편의를 위해 부족한 지식을 분석하고 이해하는 데 중점을 두었으며, 이 과정에서 문서의 조작이 크게 향상되었다. 실천 연습을 통해 우리는 지식을 이해하고 운용하는 능력을 강화할 수 있다.
-응?
-응?
-응?
-응?
-응?
참고
[1], 양장흥, 유위국, C++ 프로그래밍, 중국 철도 출판사, 2008.
부록
테마 1 실험 소스 코드:
# include & ltstdio.h & gt
# include & ltiostream.h & gt
Void main ()
{
Int a[9], I, j, temp, b=0, s;
Cout & lt& lt: "< & ltendl
For(I = 0;; 나<9; I++)
{
CIN>;; & GTA [I];
}
For(I = 0;; 나<9; I++)
For(j = I;; J<9; J++)
{
If (a [I] < =a[j])
{
Temp = a [I];
A [I] = a [j];
A [j] = temp;
}
}
For(I = 2;; 나<7; I++)
{
B = b+a [I];
}
S = b/5;
Cout & lt& lt "최종 점수는 다음과 같습니다."
}
-응?
-응?
-응?
-응?
-응?
-응?
-응?
-응?
-응?
-응?
-응?
-응?
주제 2 실험 소스 코드:
# include & ltstdio.h & gt
# include & ltstdlib.h & gt
# include & ltiostream & gt
Int getMin(int a, int b)
{
& ltb 를 반환합니까? 갑: 을;
}
Int main ()
{
Printf ("게임 열기 \ n");
Int count = 23
Int 입력;
Int 컴퓨터 입력;
While (참)
{
Printf ("현재 %d 개의 일치 항목이 남아 있습니다. 일치 항목을 가져오십시오. \n", count);
Printf(" 1. 성냥);