教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教学研究 >

VC课程设计指导书和报告范例(部分)

来源:网络收集 时间:2026-09-12
导读: 计算机程序设计(VC++)课程设计 指导书 江苏科技大学 南徐学院 2012 年 2 月 一.课程设计教学目的和任务 《计算机程序设计(VC++)课程设计》是实践性教学环节,是学生必修的一门计算机实践课程。 本课程设计的目的是通过综合性程序设计训练,使学生进一步巩

计算机程序设计(VC++)课程设计

指导书

江苏科技大学 南徐学院

2012 年 2 月

一.课程设计教学目的和任务

《计算机程序设计(VC++)课程设计》是实践性教学环节,是学生必修的一门计算机实践课程。

本课程设计的目的是通过综合性程序设计训练,使学生进一步巩固对计算机程序设计语言(VC++)基本语法、基本算法的理解,加深对面向对象程序设计的理解与应用,并使学生养成模块化、结构化程序设计的良好风格,以及一定的程序组织能力,掌握基本程序设计的方法和技巧,为学习后续课程和实际编程打下良好的基础。

本课程设计的重点要求学生掌握基本程序设计理念和方法,培养学生基本程序设计的应用和开发能力。

二.课程设计目标与要求

1.课程设计教学目标

本课程通过编程技能训练,使学生掌握下列基本算法和数据结构的综合运用: (1)基本算法:穷举、迭代、递推、递归、排序和查找。 (2)数据结构:数组、结构体、指针、动态内存分配、类。

能熟练运用计算机程序设计语言(VC++)工具,编程解决实际生活中常见的问题。 2.课程设计基本要求

完成或基本完成“计算机程序设计(VC++)课程设计指导书”上的任课教师选定(或“课程设计任务书”中规定的任务(包括编程以及上机调试).

(1)根据课程设计题目的要求,完成算法分析、算法流程图和源程序。

(2)上机调试源程序,并进行充分的测试,力求程序的正确性、可读性、健壮性和运行的高效性。

(3)课程设计结束后,按照指导书上要求的报告格式写出课程设计报告。

三.教学内容、学时分配及其基本要求

1.课程设计选题原则

课程设计的选题,可根据教学的实际情况,由任课教师在 “计算机程序设计(VC++)课程设计指导书” 中选定。(也可以自行拟定一部分,以“课程设计任务书”的形式另行发布。)

2.学时分配及基本要求

实施参考方案: 1周小综合+1周大综合。

先进行一周的程序设计的基本练习(小综合),后进行一周的综合练习(大综合),具体要求如下:

(1)小综合:每天3~4道小综合题,程序规模为50-100行。

(2)大综合:选一道较为实际的应用题,如学生成绩管理、图书管理、通讯录等,程序规模为100-500行。

课程设计报告等开发文档由学生课后完成。

四.课程设计成绩的考核与评定方法

1.过程考核:考查学生的课程设计态度、组织纪律、考勤情况、工作进度、分析问题和解决问题能力等,平时考核占总成绩的20%。

2.现场考核:主要考查学生程序设计、程序调试情况以及现场提问的回答情况,现场考核占总成绩的50%。

3.设计结果考核:考核占总成绩的30%。

根据以上三项的考核情况评定总成绩,分优秀、良好、中等、及格、不及格五个等级。

五.主要教学参考书目或资料

1. 南徐学院自编.计算机程序设计(VC++)课程设计指导书2. 2. 张岳新.Visual C++程序设计.苏州:苏州大学出版社,2002 3.钱能主编.《C++程序设计教程》.清华大学出版社 1999

六.课程设计内容(小综合题+大综合题) 小综合题(必做) 基础题

1. 编程统计键盘输入的一行字符串中的单词个数。设单词之间以一个或多个空格分开。 P117

2. 求满足以下指定条件的所有三位数:1) 该三位数是某一个二位数的平方;2)该三位数的个位数、十位树和百位数各不相同。要求每行输出五个数。例如,满足以上条件的数为 169 196 361 529

256 576

289 X 625

324 729

784 841 961

#include<iostream.h> 3. void main() 4. {

5. int a,b,c,k=0;

6. for ( int i=100;i<1000;i++) 7. for( int j=10;j<100;j++) 8. 9. 10. 11.

if(i==j*j) { a=i/100;

b=i/10%10; c=i%10;

12. 13. 14. 15. 16. 17. 18. 19. 20. }

if(a!=b&&b!=c&&c!=a)

{ k++; cout<<i;

if(k%5==0)cout<<'\n'; else cout<<'\t';

}

}

21.

3如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称之为“完数”。例如6的因子是1,2,3,且6=1+2+3,因此6是完数。编写程序找出1000之内的所有完数及这些完数的和。 要求:

(1) 要求使用for循环

(2) 输出形式为:完数1+完数2...=和值

算法说明(下列算法仅供参考,学生可以采用其它算法): (1) sum=0,m=2

(2) 当m<=1000时,反复执行(2.1)(2.2)(2.3)(2.4),否则转(3) (2.1) k=m/2,n=0,j=1

(2.2) 当j<=k时,反复执行(2.2.1)(2.2.2) ,否则转(2.3) (2.2.1) if j是m的因子 则执行n=n+j (2.2.2) j++

(2.3) if m=n 则输出完数m, sum=sum+m (2.4) m++ (3)输出m值

填空题

1.题目:

一个数的各位数字倒过来所得到的新数叫原数的反序数.如果一个数等于它的反序数,则称它为对称数或回文数。求10000—11000之间的二进制对称数

算法说明:先将正整数n的二进制字符形式放在字符数组s2中,二进制字符形式的反序放在字符数组s1中,然后,比较这两个字符串,若相等,则是二进制对称数 #include <iostream.h> #include <string.h> int func(int n, char *s1) {

char ch, s2[33], *p,*q; p=s1; q=s2+32; *q- -=

while(n){

ch= //求n的最低二进制位的字符表示形式 n/=2; *p++=ch;

*q- -=ch; }

void main(void) {

char s[33]={0}; int count=0;

cout<<”二进制对称数如下:\n”; for(int n=10000; n<11000; n++) {

if( ) {

cout<<”n=”<<n<<”\t二进制形式为:”<<s<<endl; count++;} }

cout<<”对称数的个数为:”<<count<<’\n’; }

} *p=0; q++;

if( ) return true;

else return false;

2. 题目

以下程序中的函数fun(int *a, int n)的功能是:把形参a所指向的数组中的最小值放在a[0]中,接着把形参a所指数组中的最大值放在a[1]中;把a所指数组中的次小值放在a[2]中,把a所指数组中的次大值放在a[3]中,其余依次类推,直至将数组中数据依次处理完为止 例如:把a所指向数组中的数据最初排列为:5,1,3,2,9,7,6,8,4.按以上规则移动数组中的数据后,数据的排列为:1,9,2,8,3,7,4,6,5 #include <iostream.h> #define N 9 void fun(int *a, int n) {

int max, min, px, pn, t;

for( int i=0; i<n-1; ___ _____){

max=min=a[i]; px=pn=i;

for(int j=i+1; j<n; j++){ if(max<a[j]){ max=a[j]; px=j; }

if(min>a[j]){ min=a[j]; pn=j;

} }

if(pn!=i){ t=a[i]; a[i]=min;

____ if(px==i) px=pn;

}

t=a[i+1];

a[i+1]=max;

} } }

void main(void) {

int b[N]={5,1,3,2,9,7,6,8,4};

cout<<” …… 此处隐藏:3537字,全部文档内容请下载后查看。喜欢就下载吧 ……

VC课程设计指导书和报告范例(部分).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1570790.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)