文档库 最新最全的文档下载
当前位置:文档库 › C++程序设计实践报告.docx

C++程序设计实践报告.docx

C++程序设计实践报告.docx
C++程序设计实践报告.docx

中南大学

《C++ 课程设计》设计报告

学生姓名

学号

专业班级

指导老师

******院

2011 年 6 月

1、实验目的、内容 (3)

2、题目一 : 比赛求平均分

2.1 程序内容 (3)

2.2 实验程序设计及结构 (3)

2.3 设计过程 (3)

2.4 运行结果 (4)

3、题目二 : 火柴游戏

3.1 程序内容 (5)

3.2 实验程序设计 (5)

3.3 设计过程 (5)

3.4 运行结果 (6)

4、题目三 : 足球比分

4.1 设计内容 (6)

4.2 设计方案 (7)

5、设计的特点与心得................................................7 参考文献...........................................................7附录题目一实验源代码...............................................8 题目二实验源代码...............................................10 题目三实验源代码.. (12)

1、实验目的、内容

通过课程设计 ,能够熟练运用 C++ 进行面向对象编程 ,建立对象模型 ,降低软件的复杂性 , 改善软件的重用性和维护性 ,提高软件的生产效率 ,全面掌握面向对象编程技术 .

要求学生在指导老师的指导下,独立完成实习课题的全部内容,包括 :

(1)通过调查研究和上机实习 ,收集和调查有关技术资料 ;

(2)掌握设计课题的基本步骤和方法;

(3)根据课题的要求进行上机实验调试.

2、题目一 : 比赛求平均分

2.1 程序内容

在体育、文艺比赛及选举等打分类项目中,为了公平起见,往往n 个评委打出分数后,要去掉一个最高分和一个最低分,然后求取平均得分。当n 较大时(本题设为9),则应取掉两个最高分和两个最低分,然后求取平均分。编程实现该算法。

2.2 实验程序设计及结构

(1)需求分析 :

输入 9 个评委所打分数,程序运行最后结果为去掉最高分和最低分后的平均分.

(2)设计结构 :

总体结构

数据结构

从a[0] 到 a[9] 依次为 9 位评委的打分 .

2.3 设计过程

(1) 建立 iostream/ofstream/fstream 、输入、输出、输入输出流对象,建立ifndef,define 预编命令, STRUCT数据 .

(2)根据流程图 , 建立 main 函数 , 并运用 for 循环 .

(3)运行 main 函数进行调试 .

2.4 运行结果

3、题目二 : 火柴游戏

3.1 程序内容 :

23根火柴游戏 : 两个游戏者开始拥有 23 根火柴 (或小棒 )。每个游戏者轮流移走1根、2根或3根火柴,拿到最后一根火柴的就算输了。编一程序与计算机玩这个游戏。

3.2 实验程序设计

(1)需求分析 :

运行程序能使人与计算机进行23 根火柴游戏。

(2)设计思路 :

使计算机能最先使火柴变成 4 或 4 以下计算机就能赢了。

3.3 设计过程

(1) 建立 iostream/ofstream/fstream 、输入、输出、输入输出流对象,建立ifndef,define 预编命令, STRUCT数据 .

(2)根据设计思路运用 if 判断语句设计

(3)建立 main 函数

(4)运行 main 函数调试

3.4 运行结果

4、题目三 : 足球比分

4.1 设计内容:

问题描述

足球联赛采用主客场双循环赛制,胜一场得 3 分,平局各得 1 分,负一场得0 分,联赛排名

以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在

前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联

赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。试编一程序统计最

近一轮比赛后,各队积分及排名。

基本要求

设积分表结构如下:队名(不超过 15 个字符),已比赛的场数,赢的场数,平的场数,负的场

数,进球数,失球数,积分。积分表放在正文文件中。最近一轮的结果从键盘输入,其形

式为:主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在

屏幕上显示。

测试数据

可选择我国当年的甲 A 或甲 B 联赛的数据输入,并检查与报章公布的数据是否一致。

4.2 设计方案:

定义一个球队类和对象数组,每个球队均是球队类的对象。由于联赛中参赛队伍数目是

固定的,因此将每个球队存放在对象数组的一个数组元素中。每输入两个队的比赛成绩,则

相应的队的有关数据(比赛场数,赢得场数,进球数等等)即可进行修改,比赛成绩录入完

成,调用联赛排序方法(对象数组作为参数,积分为排序元素)排出名次并输出。

5、设计的特点与心得:

经过一个学期的学习和上机实践,使我对C++语言有了更认识和和了解,要

想学好它要重在实践,要通过不断的上机操作才能更好的学习它,通过实践,我也发现我的好多不足之处,对各种控制结构及语句、数组的基本与高级应用、指

针数组、字符数组、动态数组、函数的定义、调用方式;函数在编程中的具体应用;以及变量存储特征与标识符的作用域,通过实践,使我在这些方面有了认识和提高。课程设计它是一项任务,更是一种挑战和历练。在课程设计中,为了使用时方便,

着重对不足方面的知识进行了分析与理解,在这一过程中对文件的操作有了很大

的提高。通过实际的演练,可以增强对知识的理解和运用能力。

参考文献

[1]、杨长兴、刘卫国,《C++ 程序设计》,中国铁道出版社, 2008 年

附录

题目一实验源代码:

#include

#include

void main()

{

int a[9],i,j,temp,b=0,s;

cout<<" 请打分 :"<

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

{

cin>>a[i];

}

for(i=0;i<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;i<7;i++)

{

b=b+a[i];

}

s=b/5;

cout<<" 最后成绩为: "<

题目二实验源代码:

#include

#include

#include

int getMin(int a,int b)

{

return a

}

int main()

{

printf(" 游戏开始 \n");

int count = 23;

int input;

int computerInput;

while(true)

{

printf(" 当前还剩 %d 根火柴 ,请玩家拿取火柴:\n",count);

printf("1. 一根火柴");

if(count >= 2)

{

printf("2. 两根火柴");

}

if(count >= 3)

{

printf("3. 三根火柴 ");

}

printf("\n");

while(true)

{

std::cin >> input;

if(input == 1||(input == 2&&count >= 2)||(input == 3&&count >= 3))

break;

else

printf(" 请正确输入序号\n");

}

count -= input;

if(count == 0)

{

printf(" 游戏结束,玩家输掉了游戏\n");

break;

}

if(count%4 == 1)

{

computerInput = rand()%(getMin(count,3))+1;

}

else

{

computerInput = (count%4 == 0)?3:count%4-1;

}

printf(" 电脑拿走了 %d 根火柴 \n",computerInput);

count -= computerInput;

if(count == 0)

{

printf(" 游戏结束,电脑输掉了游戏\n");

break;

}

}

system("pause");

}

题目三实验源代码:

// 程序需要先在 d 盘建立 2 个文本文档teams.txt, teamlist.txt ,以保存球队信息和比分信息// #include

#include

#include

using namespace std;

class Team{

private:

int goal;

int cgoal;

int pgoal;

int win;

int lost;

int equal;

int scorce;

public:

char name[20];

Team(){

goal=0;

cgoal=0;

pgoal=0;

win=0;

lost=0;

equal=0;

scorce=0;

}

void Display(){

cout<

'<

}

void goalchg(int a);

void matchchg(int a,int b);

void match(Team &t);

void setIm();

int getS();

int getPG();

};

void Team::goalchg(int a){

if(a>0)

this->goal+=a;

if(a<0)

this->cgoal-=a;

pgoal=goal-cgoal;

}

void Team::matchchg(int a,int b){ if(a>b){

this->win+=1;

this->scorce+=3;

}

if(a

this->lost+=1;

}

if(a==b){

this->equal+=1;

this->scorce+=1;

}

}

void Team::match(Team &t){ int a,b;

cout<<"press home's goal:"; cin>>a;

if(a<0){

cout<<"warning"<

exit(1);

}

cout<<"press ihome's goal:"; cin>>b;

if(b<0){

cout<<"warning"<

exit(1);

}

this->goalchg(a);

this->goalchg(0-b);

t.goalchg(b);

t.goalchg(0-a);

this->matchchg(a,b);

t.matchchg(b,a);

}

void Team::setIm(){

cout<<"team's name:"; cin>>this->name;

}

int Team::getS(){

return this->scorce;

}

int Team::getPG(){

return this->pgoal;

}

void getteamlist();

fstream team("d:\\teams.txt",ios::in|ios::out|ios::binary);

void main(){

char name[20];

Team t[5];

int t1,t2;

char n;

int i;

if(!team){

cout<<"lost file"<

exit(1);

}

while(1){

cout<<"do you have set the team IM?(Y)"<

cin>>n;

if(n=='Y'||n=='y')

break;

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

t[i].setIm();

team.write((char*)&t[i],sizeof(t[i]));

}

break;

}

team.seekg(0,ios::beg);

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

team.read((char*)&t[i],sizeof(t[i]));

while(1){

cout<<"is any match now?(N)"<

cin>>n;

if(n=='N'||n=='n')

break;

do{

cout<<"hometeam name:";

cin>>name;

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

if(strcmp(name,t[i].name)==0){

t1=i;

break;

}

else

continue;

}

}while(i==5);

do{

cout<<"keteam name:";

cin>>name;

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

if(strcmp(name,t[i].name)==0){

t2=i;

break;

}

else

continue;

}

}while(i==5);

t[t1].match(t[t2]);

}

team.seekg(0,ios::beg);

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

team.write((char*)&t[i],sizeof(t[i]));

getteamlist();

}

void getteamlist(){

Team t1[5];

Team hao;

fstream gamelist("d:\\teamlist.txt",ios::in|ios::out|ios::binary);

if(!gamelist){

cout<<"wrong!!"<

exit(1);

}

team.seekg(0,ios::beg);

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

team.read((char*)&t1[i],sizeof(t1[i]));

}

for(int j=0;j<4;j++)

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

if(t1[i].getS()

hao=t1[i];

t1[i]=t1[i+1];

t1[i+1]=hao;

}

if(t1[i].getS()==t1[i+1].getS()){

if(t1[i].getPG()

hao=t1[i];

t1[i]=t1[i+1];

t1[i+1]=hao;

}

}

}

cout<<" 球队"<<" 进球数"<<" 失球数"<<" 净胜球 "<<" 胜"<<" 负"<<" 平"<<" 积分"<

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

gamelist.write((char*)&t1[i],sizeof(t1[i]));

t1[i].Display();

}

}

程序设计报告模板

北京化工大学计算机科学与技术专业2014程序设计实训报告 题目:个人记账软件 专业:计算机科学与技术 班级:计科1305 指导教师:江志英

2014程序设计实训任务书

目录 2014程序设计实训任务书...................................... 错误!未定义书签。目录..................................................... 错误!未定义书签。第一章需求分析.............................................. 错误!未定义书签。 引言............................................... 错误!未定义书签。 任务概述........................................... 错误!未定义书签。 数据描述........................................... 错误!未定义书签。 功能需求........................................... 错误!未定义书签。 运行需求........................................... 错误!未定义书签。 任务计划........................................... 错误!未定义书签。第二章概要设计.............................................. 错误!未定义书签。 总体设计........................................... 错误!未定义书签。 面向对象设计....................................... 错误!未定义书签。 运行界面设计....................................... 错误!未定义书签。第三章详细设计.............................................. 错误!未定义书签。 ........................................................ 错误!未定义书签。第四章测试分析............................................. 错误!未定义书签。第五章用户手册(可选)..................................... 错误!未定义书签。第六章课程设计总结.......................................... 错误!未定义书签。附录:程序代码(仅电子版需要、纸质版不需要)................. 错误!未定义书签。

C语言程序设计实验指导(课后习题)参考答案

《实验指导》课后练习题参考答案实验1: 1.主函数 2-4:DDC 5.stdio.h 6-9:CCCC 实验2: 1.double 2-4:ABB 5.2 6-12:CDDDADC 13.! 14.8 15-17:ACC 18.G 19-20:CA 21.5 4 22.x=6c 23-25:DCA 26.0x 27.2.000000 28-29:AB 30.a=3 31.D 32.3.15 33.B 34.double 实验3: 1-3:CCD 4.B 5.2,0 6-8:CAC 9. (1)pass, (2)中 及格 不及格 10-12:ADD 13.2 14.B 15.10 16.6 17.x>=1 && x<=sqrt(10)

实验4: 1.B 2.1 3.A 4.3/5,5/8 5.30 实验5: 1.D 2.(1)9 (2)1 3-5:CDB 6.(1)10 (2)7 7.C 8.(1)x=16 (2)y=8 9.return 实验6: 1-5:CCADA 6.10,20 7.13 11 12 8.7 9.2 10.B 11.(1)3 (2) 1 12-13:CB 14.-31 15.221 16.main函数 17.22 18.(1)return (2)void 实验7: 1.C 2.auto 3.9 4.(1) 4 (2) 0 5.10 6.(1)5 (2) 7 (3) 8 7.C 8.110 9-12:DDBC 13.(1) 1 (2) 3

15.6 720 16.auto 17.48 18.(1)1 (2)2 19.D 20.D 21.5,25 22.6 实验8: 1-2. DD 3. 16 4. (1)0 2 3 (2)2 3 5 (3)7 11 13 5. (1)i<9 (2)j<9-i (3)a[j]=a[j+1] (4)a[j+1]=temp 实验9: 1. D 2. (1)-1 (2)2 3. (1)1 (2)a[i-1][j-1]+a[i-1][j] (3)j<=i 4. (1)1 3 4 5 6 7 (2)3 4 5 6 (3)End of main()! 实验10: 1. 0或NULL 2-5. CACA 6. (1)10 (2)15 (3)19 7. (1)ia[j] (3)”%d”,p+i (4)”%d”, *(p+i) 8. (1)2 6 (2)2 2 (3)4 6 实验11: 1. A 2. C 3. 7 4. (1)strlen(s) (2)s[i]>=’a’ && s[i]<=’z’(3)s[i]+32 (4)’\0’(5)s2[j]!=s2[n2-j-1] (6)j

计算机程序设计实践

江苏科技大学 课程实践报告 设计题目: 计算机程序设计实践(VC++) 设计时间: 2015. 3.9 至2015. 3.16 学院: 数理学院 专业班级: 13级信息与计算科学1班 学生姓名: 陈明敏学号1340501101 指导老师: 华伟 2015年5月1日

一、 实践任务 任务一:试建立一个类SP ,求(,)123k k k k f n k n =++++ ,另有辅助函数power ()用 于求 n m 。具体要求如下。 (1)私有数据成员。 Int n ,k :存放公式中n 和k 的值。 (2)公有成员函数。 ①SP(int n1,int k1):构造函数,初始化成员数据n 和k 。 ②int power(int m,int n):求n m 。 ③int fun():求公式的累加和。 ④void show():输出求得的结果。 二、源程序清单 #include class SP{ private: int n,k; public: SP(int n1,int k1); int power(int m,int n); int fun(); void show (); }; SP::SP(int n1,int k1){ n=n1; k=k1; } int SP::power(int m,int n){ int a=m; for(int i=1;i

C++程序设计实践教程思考题答案

实验1 C++基础 6.编写程序,输入某大写字母的ASCII码值,输出该字母的对应小写字母。 #include using namespace std; int main() { int i; cin>>i; if(i>=65 && 1<=90 ) cout< #include using namespace std; int main()

{ float a,b,c; 潣瑵?请输入直角三角形的两条边长:; cin>>a>>b; c=sqrt(a*a+b*b); 潣瑵?直角三角形的斜边=< using namespace std; int main() { char c; 1 潣瑵?请输入一个字符:; cin>>c; if(c>='A'&& c<='Z') c+='a'-'A'; cout<

3.输入一个学生的成绩,如高于60分,则输出“pass”;否则,输出“failed”。 #include using namespace std; int main() { float grade; 潣瑵?请输入成绩:; cin>>grade; if(grade>=60) cout<

Java程序设计-实验报告1-模板 (1)

实验报告 课程名称Java程序设计 实验项目实验一类和对象 系别_________计算机_________ 专业/班级_______计算机类/1402______ 姓名_____李馨雪________ 实验日期______2015.10.10______ 成绩_______________________ 指导教师

一、实验题目:实验一类和对象 二、实验内容: (1)用类描述计算机中CPU的速度和硬盘的容量。要求Java应用程序有4个类,名字分别是PC、CPU、HardDisk和Test,其中Test是主类。 1)PC类与CPU类和HardDisk类关联的UML图如图所示。 其中,CPU类要求getSpeed()返回speed的值,setSpeed(int m)方法 将参数m的值赋值给speed。 HardDisk类要求getAmount()返回amount的值,setAmount(int m)方 法将参数m的值赋值给amount。 PC类要求setCPU(CPU c)将参数c的值赋值给cpu,要求setHardDisk (HardDisk h)方法将参数h的值赋值给HD,要求show()方法能显示 cpu的速度和硬盘的容量。 2)主类Test的要求 main()方法中创建一个CPU对象cpu,其speed设置为2200; main()方法中创建一个HardDisk对象disk,其amount设置为200; main()方法中创建一个PC对象pc, pc调用setCPU方法,实参是cpu;调用setHardDisk方法,实参是 disk;调用show方法。 (2)设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下: 1)编写接口Animal,有2个抽象方法cry()和getAnimaName(); 2)编写模拟器类Simulator,该类有一个playSound(Animal animal)方法,其形参是Animal类型,可以调用实现Animal接口的类所重写的cry()方法播放具体动物的声音,调用重写方法显示动物种类的名称; 3)编写实现Animal接口的Dog类和Cat类。具体的UML图如下所示:4)编写主类Application,其main方法中至少包含如下代码: Simulator si=new Simulator();

c语言程序设计实践教程答案完整版

4.2练习题 一、选择题 1.D 2.B 3.A 4.B和D 5.C 6.A 7.B 二、填空题 1.//或/* */ 2.主或main 3.函数首部和函数体4.编译和连接 5.分号 5.2练习题 一、选择题 1.A 2.D 3.B 4.B 5.C 6.C 7.D 8.A 9.B 10.B 11.D 12.B 13.A或B 14.C 15.B

17.D 18.D 19.C 20.D 21.B 22.A 23.D 24.C 25.C 26.B 27.C 28.D 29.A 30.B 二、填空题 1.102,10 2.#define 宏名字符串 3.1 4.n=1 5.-4 6.a=1,b= ,c=2 7.c=A 8.n1=%d\nn2=%d 9.a+b>c&&a+c>b&&b+c>a 10.ch>=’a’&&ch<=’z’|| ch>=’A’&&ch<=’Z’11.7 12.0 13.8,4 6.2练习题 一、选择题 1.A 2.C 3.D 4.C 5.A 6.B

8.D 9.B 10.C 11.A 12.A 13.C 14.B 15.正确答案为: 二、填空题 1.10 2.y=1 x%i==0 3.屏幕中间输出一个由星号组成的菱形4.1 5.13 6.(cx=getchar())!=-1 front=cx; 7.m%n 8.4 9.*p px=&x py=&y 三、读程序,写结果 1.-1 2.3,1,-1, 3.a=16,y=60 4.x=12,y=4 5.59 7.2练习题 一、选择题 1.B 2.C 3.C 4.A 5.D 6.C 7.D

vb程序设计实验教程习题答案

实验教材实验一 1:单项选择题: A A C C C D C B B C 2:填空题: (1).bas (2).vbp,.frm (3)视图工具箱 (4)对象 (5)属性对象事件方法 (6)Windows (7)事件行为 (8)窗体模块 实验二 1:单项选择题: A D C C A B A B D C B B C B C B A B D C 2:基本运算题: (1)27 (2)3.33333333333333 (3)3 (4)0 (5)-3 (6)2 (7)ab33 (8)类型不匹配 (9)3 (10)AB3 实验三 1:单项选择题: B C B D C 2:填空题: (1)300 (2)321456 (3)Shanghai (4)6 7 6 (5)True (6)2+3=5 (7)”area=” 12.56 (8)VISUAL 实验四 1:单项选择题: C A A C A 2:填空题: (1)7 (2)3 5

(3)输入的数小于0 (4)3 (5)False (6)2010 is not leap year. 试验五 1:单项选择题: A C C A B A C C C B 2:填空题: (1)9 (2)①n ②1 (3)①Len(a) ②n\2 ③Mid(a,(n-i+1),1) ④Mid(a,(n-i+1),1) (4)①n Mod 3=1 And n Mod 5=1 And n Mod 7=1 ②While CountN<5 (5)Mid(c1,1,i) 实验六 1:单项选择题: D B D C D A C A D D 2:填空题: (1)30 (2)3 (3)①a(2) ②a(3) ③a(1) (4)①1 ②2 ③a(i)=a(6-i) (5)①i+j ②0 ③a(i,j) (6)①Print ②k ③a(k,j)=a(j,k) ④a(k,j); 实验七 1:单项选择题: A B B A C B 2:填空题: (1)15 (2)①Preserve a(n+1) ②a(i+1)=a(i) ③Exit For ④a(i+1)=m⑤0 to n+1 (或LBound(a) to UBound(a)) (3)d,c,b,a 实验八 1:单项选择题: C A D B D C A C B 2:填空题: (1)a=9 b=4 (2) 36 25 16 9 4 1 (3)①a ②UBound(b) ③

程序设计实践报告模板

面向对象程序设计实践(Project 2) 报告 题目: 专业软件工程(NIIT) 学生姓名 班级学号 指导教师杨健 指导单位计算机学院/软件学院 日期

评分细则 评分项优秀良好中等差遵守机房规章制度 上机时的表现 学习态度 程序准备情况 程序设计能力 团队合作精神 课题功能实现情况 算法设计合理性 用户界面设计 报告书写认真程度 内容详实程度 文字表达熟练程度 回答问题准确度 简短 评语教师签名: 年月日 评 分 等 级 备 注 评分等级有五种:优秀、良好、中等、及格、不及格

Title(Here,please write the name of your Project) (题目格式:宋体,3号,加粗,居中对齐) 一、D escription and Requirement(格式:Times New Roman,4号,加粗, 两端对齐) (正文格式:宋体(中文) Times New Roman(英文),小4号,不加粗,两端对齐, 1.5倍行距) 二、Requirement Analysis(格式:Times New Roman,4号,加粗,两端对齐) 在该部分中叙述系统的功能,由此得到相应的模块,并分析需要什么的数据,由此可以指导数据库的设计。 (正文格式:宋体(中文)Times New Roman(英文),小4号,不加粗,两端对齐,1.5倍行距) 三、High level design(格式:Times New Roman,4号,加粗,两端对齐) 在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义,如果用面向对象的方法,应该给出类中成员变量和成员函数原型声明),数据库设计的说明(给出数据库的结构,包括有哪些表,每个表有什么字段,分别存储什么样的数据) (正文格式:宋体(中文)Times New Roman(英文),小4号,不加粗,两端对齐, 1.5倍行距) 四、Low level design格式:Times New Roman,4号,加粗,两端对齐) 各个算法实现的源程序(可以是一组源程序,每个功能模块采用不同的函数实现),源程序要按照写程序的规则来编写。要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释。 注意:不要粘贴全部程序,只要把关键算法的程序粘贴过来就可以了。 (正文格式:宋体(中文)Times New Roman(英文),小4号,不加粗,两端对齐, 1.5倍行距) 五、Tested data and result analysis(格式:Times New Roman,4号,加粗,

计算机程序设计(C)综合实践

计算机程序设计(C)综合 实践 设计报告 学院:电子通信与物理学院 设计名称:职工信息管理系统 专业班级:电子信息科学与技术14-2 学生:本良 学号: 201401100211 组号: 140203 指导教师:宋戈 完成时间: 2015年 7月23日

目录 第1部分实训题目与要求 (2) 1. 问题提出 (2) 2. 功能要求 (2) 3. 任务分工 (2) 第2部分设计实训题目功能......................................................................... . (3) 1. 总体设 计...................................................................... (3) 2. 数据结 构...................................................................... (4) 3. 程序设 计...................................................................... (5) 4. 测试与调 试......................................................................

(8) 第3部分实训总结......................................................................... . (12) 1. 个人总 结...................................................................... (12) 2. 结束 语...................................................................... (12) 第4部分参考文献......................................................................... . (13) 《C程序设计综合实践》评分表......................................................................... (14)

VB程序设计教程(第3版)课后实验答案最新版2

1、完成实验A(P.259)中的第1、 2、 3、5题。 2、参照第2章例2.6,建立一个类似记事本的应用程序,提供:(1) 剪切、复制和粘贴的编辑操作;(2) 字体大小的格式设置;此外,再对记事本的应用程序的功能进行一点扩允。 1.完成在实验B 顺序结构程序。(P.262)中的第1、2 、4 、5.、6题 2.完成实验C 选择结构(P.266)中的第1、2、4、5题 3.用上面实验B的第二题和实验C的第二题完成下面的实验报告。 1、完成实验D循环结构(P.268)中的第1、3、4、6题,其中第1题利用单循环结构显示如图D.1(P.268)所示的界面,而后将图形改为倒三角形。 2、选做实验E数组(P.271)中的第1、2、3题中的任意二题 3、以实验D中的第4题和实验E中的做完的某一题完成下面的实验报告。 A.1 Private Sub Command1_Click() Label3 = Text1 End Sub A.2 Private Sub Form_Load() Timer1.Interval = 0 End Sub Private Sub Command1_Click() '自动 Timer1.Interval = 200 End Sub Private Sub Command2_Click() '手动 Timer1.Interval = 0 Call MyMove End Sub Private Sub Timer1_Timer() Call MyMove End Sub Sub MyMove() Label1.Move Label1.Left - 50 If Label1.Left < 0 Then Label1.Left = Form1.Width End Sub A.3 Private Sub Form_Click() Text1 = Val(Text1) + 1 End Sub Private Sub Form_Load() Text1 = 0 End Sub A.5

实验报告模板-《C程序设计实践 》

大型程序设计实验报告 课程名称C程序设计实践实验日期2011年月日至2011年月日 学生姓名所在班级学号 实验名称 实验地点同组人员 1. 问题描述 实现图书管理系统 如何让实现如下功能: 1.新进图书及基本信息输入 2.图书基本信息查询 3. 对撤销图书信息的删除 4 办理借书手续 5 办理还书手续 2. 问题分析 根据题目要求,需要建立图书管理系统结构体,分别需要建立读者结构体,图书结构体。 该程序主要涉及到C语言中的文件和链表 图书信息应该存放在文件中,所以提供文件的输入输出等操作;并且程序需具有实现图书信息浏览,查找,修改等功能,并进行借入借出服务;另外还提供接盘是选择菜单来实现功能选择 3. 系统设计 系统应该包括以下模块:信息输入,图书查找,信息删除,图书借出,图书归还 3.1 总体设计 1系统功能的文字概述: 图书管理系统主要功能是用户的设定,读者管理,数据的录入与查询,数据的修改和删除等 2 系统的总体结构图

3主要模块的控制流程图 主函数 ( 1. 系统功能的文字概述;2.系统的总体结构图;3. 主要模块的控制流程图)3.2 界面设计 3.3 系统主要流程设计 (文字描述加流程图) 3.4 主要数据结构设计 /*--------- 数据结构的定义------------*/ struct reader {

/*姓名,学生学号/教师工号,性别,所在学院,角色*/ char name[9]; char num[11]; char sex[3]; char college[21]; char role[2]; struct reader *next; } *readersHead=NULL, *readersTail=NULL, *reader_p; struct book{ /*书名,作者,出版社,价格,ISBN号和类别*/ char book_name[41]; char author_name[21]; char publish[15]; float price; char ISBN[18]; char b_type[9]; struct book *next; } *booksHead=NULL, *booksTail=NULL, *book_p; struct borrow_info{ /*借者编号,借书日期,图书ISBN号*/ char borrower_num[11]; char borrow_date[15]; char ISBN[18]; struct borrow_info *next; } *biHead=NULL, *biTail=NULL, *bi_p; /*--------- 数据结构的定义完毕------------*/ 3.4.1 系统数据结构概述 主要有读者数据结构,用以读者信息的记录 图书数据结构用以图书信息的记录 还有已借图书数据结构用以对已借图书的统计和记录(主要用了哪些数据结构,各自的用途)

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include <> int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

MATLAB程序设计教程课后答案

实验指导 1、 n=input('请输入一个三位数:'); a=fix(n/100); b=fix((n-a*100)/10); c=n-a*100-b*10; d=c*100+b*10+a 2(1) n=input('请输入成绩'); switch n case num2cell(90:100) p='A'; case num2cell(80:89) p='B'; case num2cell(70:79) p='C'; case num2cell(60:69) p='D'; otherwise p='E'; end price=p (2)n=input('请输入成绩'); if n>=90&n<=100 p='A'; elseif n>=80&n<=89 p='B'; elseif n>=70&n<=79 p='C'; elseif n>=60&n<=69 p='D'; else p='E'; end price=p (3)try n; catch price='erroe' end 3 n=[1,5,56,4,3,476,45,6,3,76,45,6,4,3,6,4,23,76,908,6]; a=n(1);

for m=2:20 if n(m)>a a=n(m); elseif n(m)=0 disp(A([n],:)); elseif n<0 disp(lasterr); else disp(A([6],:)); disp(lasterr); end 7(1) f=[]; for n=1:40

C语言程序设计实验报告优秀范文

C语言程序设计实验报告优秀范文 实验名称计算出1000以内10个最大素数之和 实验目的 1、熟练掌握if、if…else、if…else if语句和witch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。 2、熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。 3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。 实验内容 计算并输出1000以内最大的10个素数以及它们的和。 要求: 在程序内部加必要的注释。 由于偶数不是素数,可以不考虑对偶数的处理。 虽然在1000以内的素数超过10个,但是要对1000以内不够10个素数的情况进行处理。 输出形式为:素数1+素数2+素数3+…+素数10=总和值。 算法描述流程图 main函数: 判断素数: 源程序 #include #include int sushu(int n)/* 判断素数的函数*/ { int t,i; t=sqrt(n); for(i=2;i if(n%i==0)/* 如果不是素数,返回0 */ return 0; return n;/* 如果是素数,返回该数*/ } void main { int i,j=0,n,m=0,a[1000],x; /*clrscr;*/ printf("please input a number form 1 to 1000:"); scanf("%d",&x); if(x==2)/* x=2时的处理*/ printf("%dn",x); else if(x printf("error!n");

测量程序设计实习报告

测量程序设计实习报告 姓名: 班级: 学号: 教师评语: 日期:二零一四年十二月

实验名称:使用C#开发环境建立测量程序框架 一、实验的目的与任务: (1)学会用C#窗体程序开发环境建立应用程序框架方法 (2)学会使用常见的Windows控件 (3)根据自身需要设计一个测量程序界面 二、实验的过程与步骤: 1.创建窗体项目 打开“新建项目”对话框,选左边“已安装模板”栏的“其他语言\Visual C#”项,再选右边“模板”栏的“Windows应用程序”模板。选择磁盘卷和父目录位置后,输入项目名称“测量程序”按“确定”按钮关闭对话框。 2.修改窗体属性 窗体的属性有很多,其中常用的有: 布局:大小Size——缺省为300*300像素,可以通过修改此属性,或直接拖动窗体的边框来改变窗体的尺寸。运行时用户也可以自己改变窗体大小。 设计:是程序设计中窗口的引用名称,名称(Name)缺省为Form1,可以改成自己喜欢的名称,如CLCX,回车确认后,系统会自动修改所有相关内容中的该标识符。 外观:文本Text——对应于窗体的标题,缺省也为Form1,可以改为自己喜欢的标题,如“导线简易平差”。 单击窗口界面,再点击菜单工具栏中“属性”工具,调出属性窗口,此时属性窗口显示的内容便是窗口的属性,找到“Name”栏,将其值改为“CLCX”;再找到“Text”栏,将其值改为“导线简易平差”。 将鼠标箭头放置于窗口边缘,拖动窗口以调整窗口大小,将窗口大小调整为合适大小。 3.添加按钮和控件 可以在窗口中添加标准控件,以实现可视化的目的,C#中常用的标准控件有:(1)按钮(Button) 是用户以交互方式控制程序运行的控件之一。 主要属性: 1)Text属性 设置显示在按钮表面上的文字,用于说明该按钮的作用。 2)Enabled属性 设置按钮是否可用; (2)Label控件 Label控件主要用于通过其Text属性显示文本信息。 主要属性: 1)Text属性 标签中显示的文本内容 2)Font

VB程序设计学习与实验指导答案

Visual Basic 程序设计学习与实验指导答案 上篇学习指导 第1章Visual Basic 概述 1.事件 2.查看对象 3.工程 4.视图属性窗口 5.窗体编辑器 第2章面向对象程序设计初步 1.控件 2.事件 3.类属性 4.属性 5.略 https://www.wendangku.net/doc/6a7622928.html, 第3章Visual Basic 语言基础 1.(a*sin(30/180*3.14)+c*(log(b)/log(10)))/((Abs(d)+1)*(e+f))+1

2.mod 3.X=Int(X) And Y=Int(Y) And X*Y>0 4. 4.Y Mod 4=0 And Y Mod 100<>0 Or Y Mod 400=0 5.x=Int((99-10+1)*Rnd+10) 6.0 “” 7.空格 8.6,845.30 9. (1)8 (2)1 (3)abcd (4)出错,类型不匹配 (5)False (6)2008-6-29 (7)I likeVB (8)4 (9)4 4 (10)3 4 (11)10 -10 (12)-1 (13)aa (14)3 (15)0 (16)1 (17)C (18)5 (19)8 (20)34.54 (21)中国 (22)上海 (23)VISUAL BASIC (24)visual basic 10. (1)x<-100 or x>100 (2)a=Int(a) And b =Int(b) Or a<0 And b<0 (3)x<=y or x>=z (4)a>0 And a<>Int(a) (5)a=0 xor b=0 (6)Len(S)<10 (7)UCase(S)=S (8)Left(S,1)=”a” And Right(S,1)=”a” (9)Instr(S,”@”)<>0 (10)Trim(S)=S (11)Date=#8/8/2008#

C语言程序设计实验报告(实验1-12)

文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《C语言程序设计》 实验报告 2013~2014学年第二学期 班级 姓名 学号 指导教师

实验一 实验项目名称:C程序的运行环境和运行C程序的方法 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点。 二、预习内容: 教材《C语言程序设计教程》第1章。 三、实验内容: 1. 在Visual C++ 6.0环境下输入并运行下面的程序: #include int main( ) { printf("This is a C program.\n"); return 0; } 2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序 无语法错误,然后运行程序,并观察分析运行结果。 #include int main( ) { int a,b,sum a=3; b=4; sun=a+b; print(“%d+%d=%d\n”,a,b,sum); return 0; } 四、实验结果: 1. 运行结果(或截图): This is a C program. Press any key to continue

2. (1) 改正后的源程序: #include int main( ) { int a,b,sum; a=3; b=4; sum=a+b; printf("%d+%d=%d\n",a,b,sum); return 0; } (2) 运行结果(或截图): 3+4=7 五、思考题: 1. 一个C程序上机的步骤有哪些? 答:上级输入与编辑源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。 2. 组成C程序的基本单位是函数,一个函数包括哪几个部分? 答:一个函数包括两部分:分别为函数头或函数首部和函数体。 成绩指导教师签名 实验二 实验项目名称:数据类型、运算符和表达式 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.掌握整型、实型与字符型这三种基本类型的概念; 2.掌握常量及变量的使用方法; 3. 掌握基本算术运算符及其表达式的使用方法; 4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。 二、预习内容:

C语言程序设计实验与习题指导课后程序设计答案,DOC

P18 (1) #include intmain(void) celsius=26; fahr=9*celsius/5+32; printf("celsius=%d,fahr=%d\n",celsius,fahr); return0; }

(3) #include intmain(void) { intaverage,math,eng,comp; intn,a,b,c; n=152; c=n%10; b=(n/10)%10; a=n/100;

printf("整数%d的个位数字是%d,十位数字是%d,百位数字是%d\n",n,c,b,a); return0; } P27 (2) #include #include intmain(void) {

intmoney,year; doublerate,interest; printf("Entermoney,year,rate:"); scanf("%d%d%lf",&money,&year,&rate); interest=money*pow(1+rate,year)-money; y=pow(x+1,2)+2*x+1/x; } else{ y=sqrt(x); }

printf("y=f(%f)=%.2f\n",x,y); return0; } (4) #include return0; } 10的阶乘 #include intmain(void)

{ inti,n,product; printf("Entern:"); scanf("%d",&n); product=1;

C程序设计教程与实验实验答案

#include void main() { int i; static int a[8]={10,5,4,0,12,18,20,46}; void jhmaxmin(); printf("Original array:\n"); for(i=0;i<8;i++) printf("%5d",a[i]); printf("/n"); jhmaxmin(a,8); printf("Array after swapwing max and min: \n"); for(i=0;i<8;i++) printf("%5d",a[i]); printf("\n"); } void jhmaxmin(int p[],int n) { int t,*max,*min,*end,*q; end=p+n; max=min=p; for(q=p+1;q*max) max=q; if(*q<*min) min=q; } t=*max; *max=*min; *min=t; } Sy8-2 #include int len(char s[]) { char *p=s; while (*p!='\0')p++; return p-s; } main() { char s[80]; gets(s); printf("\"%s\"include %d characters.\n",s,len(s)); }

#include #include void main() { int i,a[26]; char ch,str[80],*p=str; gets(str); for(i=0;i<26;i++) a[i]=0; while(*p!='\0') { ch=*(p++); ch=ch>'A'&&ch<='Z'?ch+'a'-'A':ch; if('a' main() { int a[8],*p; int i,j,t,k; p=a; printf("Input the numbers:"); for(i=0;i<8;i++) scanf("%d",p+i); t=*p; for(i=0;i<8;i++) { for(j=i;j<8;j++) if(j==i||*(p+j)

相关文档