版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机程序设计基础(C+)实验报告信息学院计算机教育中心二零一四年三月实验_0验报告教学班级:_ 7班_ 学生学号:_20133936_学生姓名:_葛劲松实验日期:_2014.3.11_ 实验地点:_7307_(机房) 指导教师签名:_王威_ 实验成绩:_ 一、实验目的1熟悉VS2010 集成开发环境;2学习新建和打开控制台应用程序的方法;3通过运行示例程序了解程序开发过程;二、实验任务1新建源程序文件,编辑以下程序,编译,链接,得出运行结果,并保存程序:#include using namespace std;void main( )coutaendl;cout141endl; coutx6
2、1endl; 2新建源程序文件,编辑以下程序,编译,链接,运行,输入36和64,得出运行结果,并保存程序:#include using namespace std;int main()float num1,num2,sum;cout num1;cout num2;sum=num1+num2;cout The sum is sum endl;return 0;三、实验结果 1.:运行结果2实验_1_实验报告一、实验目的1熟悉C+程序的集成开发环境;2学习新建和打开控制台应用程序的方法;3掌握简单数据运算,以及输入与输出方法。二、实验任务1输入一摄氏温度,输出显示所转换的华氏温度。 (提示:摄氏温
3、度=(华氏温度-32)5/9)2画出一头威武雄壮的雄狮。 ,% ,%/%/% ,%c J/% %. %/ o o % %. % _ |% % %(_Y_)% / ;%-/% ( / % . | / | | / ) | | /_ | |_ (_)三、实验结果(源程序 + 注释) 1. 2实验_2_实验报告一、实验目的1掌握对一般数据的输入和输出格式控制方法;2掌握对实型数据输出形式的设置和小数位数的控制方法;3了解数据输入的相关注意事项。二、实验任务1. 键盘输入某台计算机的编号和该计算机的价格,并输出这些信息。要求:编号为11位数字构成,如10987654321;价格含有小数部分,如998.0
4、元;输出的编号只是由数字组成,不应该出现小数点等非数字符号。2. 有一种加密方法是用原来字母的第n个字母代替原来的宁母。例如把A用其后第4个字母E来替代。现在有一密文内容为wigvix,编程求出它的原文是什么?(提示:可根据上述加密原理,使用若干字符型变量来实现)。3. 编程实现:在计算机的提示下输入某学生的学号、英语成绩、高等数学成绩、线性代数成绩,计算得出三门课程平均成绩,并按如下格式输出显示。成绩单 学 号 20100002 *科 目 成 绩-英 语 85高等数学 90线性代数 88.5*平均成绩 87.8三、实验结果(源程序 + 注释)#includeusing namespace s
5、td;void main()double a,b; couta; coutb; cout.precision(11); cout计算机编号为:aendl; coutfixed; cout.precision(1); cout计算机价格为:bendl;2#include#includeusing namespace std;void main()double name,score1,score2,score3,average; cout请输入学号及三门课程成绩:namescore1score2score3; average=(score1+score2+score3)/3; cout.preci
6、sion(8);coutsetw(4)学号setw(12)nameendl;cout*endl;coutsetw(4)科目setw(8)成绩endl;cout_endl;coutsetw(4)英语setw(8)score1endl;coutsetw(4)高数setw(8)score2endl;coutfixed;cout.precision(1);coutsetw(4)线代setw(8)score3endl;cout*endl;cout.precision(1);coutsetw(8)平均成绩setw(8)score1endl;3#includeusing namespace std;void
7、 main()char a,b,c,d,e,f,a1,a2,a3,a4,a5,a6;int n=4;cout输入密文:abcdef;a1=a-n;a2=b-n;a3=c-n;a4=d-n;a5=e-n;a6=f-n;cout原文为:a1a2a3a4a5a6endl;实验_3实验报告一、实验目的1. 掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路和方法;2. 掌握简单分支程序设计,以及if和if-else语句的使用方法。二、实验任务1 已知一函数,输入x的值,求解并输出相应的y值。2 求一元二次方程ax2+bx+c=0的根,其中a、b、c为实数,由键盘输入。三、实验结果
8、(源程序 + 注释)#includeusing namespace std;void main()double x,y;coutx;if(x1)y=x;elseif(1=x&x=10)y=x*3-11;couty=yendl;#include#includeusing namespace std;void main()double a,b,c,x1,x2;coutabc;if(b*b-4*a*c0) cout数据输入错误,该方程无解!; else if(b*b-4*a*c=0) x1=x2=-b/2*a; cout方程有一解:x=x1; else x1=(-b-sqrt(b*b-4*a*c)/
9、(2*a); x2=(-b+sqrt(b*b-4*a*c)/(2*a);cout方程解为:x1=x1 x2=x2endl; 实验_4实验报告1掌握多路分支结构的程序设计,以及switch语句的使用方法;2学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化 情况。二、实验任务1某公司进行产品销售,既零售也批发,零售的价格与批发的价格不同,购买产品数量的多与少其价格也不同。具体标准见下表:批 发 商零 售 商数量(个)单位价格(元/个)数量(个)单位价格(元/个)502001012018200以上8204015405012要求编写一程序,输入客户购买产品的数量,输出客户类型(
10、批发或零售客户)、产品单价及应付的总额。2. 给学生写评语,需将学生的考试成绩由百分制转换为5级制,标准为: 等级 分数段 A 95. 100分 B 85.94.分 C 75.84.分 D 60.74.分 E 60.分以下3. 输入年号y和月份m, 输出y年的m月有多少天。 三、实验结果(源程序 + 注释)#includeusing namespace std;void main() int a,b,c; couta; if(a0) cout数量小于0该数据无效0&a50) b=a/10; switch(b) case 0:case 1: c=18*a; cout该顾客购买数量为a为零售商,单
11、价为18元,总价为c;break; case 2:case 3:c=15*a;cout该顾客购买数量为a为零售商,单价为15元,总价为c;break; case 4: c=12*a; cout该顾客购买数量为a为零售商,单价为12元,总价为c;break; if(a=50) c=10*a;cout该顾客购买数量为a为批发商,单价为10元,总价为200) c=8*a; cout该顾客购买数量为a为批发商,单价为8元,总价为cendl; #includeusing namespace std;void main() int a,b,c; couta; b=a/5; switch(b) case 1
12、9: cout该同学成绩为a等级为A;break; case 17:case 18: cout该同学成绩为a等级为B;break; case 15:case 16: cout该同学成绩为a等级为C;break; case 12:case 13:case 14: cout该同学成绩为a等级为D;break; case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11: cout该同学成绩为a少于60分,不及格;break;#includeusing namespace std;void main()
13、 int a,b,c; coutab; switch(b) case 1:case 3:case 5:case 7:case 8:case 10:case 12: couta年b月有31天;break; case 4:case 6:case 9:case 11:couta年b月有30天;break;case 2:if(a%4=0&a%100!=0|a%400=0) couta年2月有29天;else couta年2月=n),用m除以n,求得余数q。 若q为零,n即为所求的最大公约数; 若q不为零,则更新除数和被除数(nm,q n)再做除法,直至余数q为零止。这时,相应的n即为所求的最大公约数。
14、 而最小大公倍数=原始m与n值的乘积/最大公约数。 )3. 编程实现十进制整数和二进制整数之间的转换。三、实验结果(源程序 + 注释)1;#includeusing namespace std;void main()double sum,a,n,t;cout求/4的值:请输入n:n;sum=0;a=1;t=1;while(abs(a)=n) sum=sum+t*1.0/a;a=a+2;t=-t;cout/4=sumendl;2;#include using namespace std;void main( )int m,n,q,s,a;coutn):;cinmn;s=m*n;q=m%n;if(
15、q=0)coutm,n的最大公约数为n m,n的最小公倍数是mendl;elsedo m=n,n=q;q=m%n;while(q!=0);coutm,n的最大公约数为nm,n的最小公倍数是s/nn)的所有素数,要求:每行输出5个。2. 键盘输入一行字符,统计字符总个数,以及其中的英文字母个数,如果是数字,则统计它们所构成的数据中,奇数个数和偶数个数分别是多少。提示:可使用以下程序段,连续输入若干字符直到输入n时停止。while(1) ch=getchar(); if(ch=n)break; 。3. 两个乒乓球队进行比赛,各出3人。甲队为A、B、C共3人,乙队为X、Y、Z共3人,并以抽签方式决定
16、比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X、Z比,请给出3对赛手的名单。4. 用循环结构语句编程并输出下图,其行数有键盘给出。例如:键盘输入:5,则运行结果如下12233344445555555554444333221任务一三、实验结果(源程序 + 注释)#include using namespace std; void main() int i,j,m,n,q=0;int a10000; coutn)的所有素数,请输入 m,n:mn; for (i=1;i=n;i+) ai=0; i=2; while (i=n/2+1) if (!ai) for (j=2;j=n/i
17、+1;j+) if (i*j=n) ai*j=1; i+; while (ai) i+; for (i=m;i=n;i+) if (!ai) couti ;q+; if(q%5=0) coutendl; 任务二#includeusing namespace std;void main()char ch ;int a=0,b=0,c=0,m;while(1) ch=getchar();if(ch=n)break; if(ch=a&ch=A&ch=1&ch=9) if(ch-0)%2=0) b=b+1; else c=c+1;m=a+b+c;cout字母数aendl;cout偶数为bendl;co
18、ut奇数为cendl;cout字符总数为mendl;system(pause);任务三 #includeusing namespace std;void main()char a,b,c;for(a=X;a=Z;a+)for(b=X;b=Z;b+)for(c=X;c=Z;c+)if(a!=X& c!=X& c!=Z& a!=b& a!=c& b!=c)coutA的对手为aendl; coutB的对手为bendl; coutC的对手为cendl;任务四#includeusing namespace std;void main()int i,j,m; coutm; for(i=1;im;i+) f
19、or(j=0;j=2*m-1-i;j+) cout ; for(;j=2*m-1;j+) couti; coutendl; for(j=0;j=2*m-1;j+) coutm;cout=1;i-)for(j=1;j=i;j+) couti;coutendl;system(pause)实验_7实验报告一、实验目的1掌握数值型一维数组的使用方法; 2掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法。二、实验任务1. 对两个无序的数组(其中数组a长度为n,数组b长度m),采用选择法(或起泡法)分别将这两个数组转为有序(元素值从小到大有序)。要求:a和b数组长度及其元素均由键盘获取。2.
20、将以上任务1构建的两个有序的数组a和b,进行有序合并,即将这两个数组进行合并的过程中其数据始终保持有序。(提示:数据结构:三个一维数组a,b,c将aia和bib比较,谁小就把谁放入cic(c数组用于存放合并后的数据),谁放入了cic中谁的下标就加1,同时ic(c中当前存放数据的下标)加1,如下图所示。 )3. 计算以上任务2中c数组元素的平均值,并删除c中所有低于平均值的那些元素。三、实验结果(源程序 + 注释) #includeusing namespace std;void main()int m,n,i,j,p,q,f,e,k,t,a50,b50,c100,v,sum=0;coutnm;
21、cout请输入数组a:;for(i=0;iai;cout请输入数组b:;for(p=0;pbp;for(i=0;in-1;i+)for(j=i+1;jaj)t=ai;ai=aj;aj=t;couta数组按从小到大顺序排列为;for(j=0;jn;j+)coutaj ;coutendl;for(p=0;pm-1;p+)for(q=p+1;qbq)t=bp;bp=bq;bq=t;coutb数组按从小到大顺序排列为;for(q=0;qm;q+)coutbq ;coutendl;j=0;f=0;q=0;while(jn&qm) if(ajbq) cf+=aj+; else cf+=bq+; if(jn
22、) while(jn) cf+=aj+; else while(qm) cf+=bq+;cout“a,b合并后的数组为:endl;for(f=0;fn+m;f+) coutcf ; coutendl;for(f=0;fn+m;f+) sum=sum+cf;v=sum/(m+n);cout合并数组的均值为v; cout其中大于均值的元素为:; for (f=0;fv) coutcf ;实验_8实验报告一、实验目的1掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法。二、实验任务1. 使用插入排序法将键盘输入的无序数列按升序排列。思路分析与算法:1) 从第一个元素开始,该元素可以认为已经
23、被排序。2) 取出下一个元素,在已经排序的元素序列中从后向前扫描。3) 如果该元素(已排序)大于新元素,将该元素移到下一位置。4) 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置。5) 将新元素插入到该位置中。6) 重复步骤2。2.选举猴王问题:N 只猴子围成一圈,顺序编号1至N。从编号为1的猴子开始依次报数,报数m 的猴子就退出圈子,接着再报,报数m 的猴子再退出圈子,依次继续下去,圈子最后所剩的一只猴子为猴王,它原先的编号是几?思路分析与算法:1) 使用一维数组存放猴子从1到n的编号,定义参加选举猴王的最多猴子数为40。2) i为每次循环时计数变量,k为按1,2,3,m报数时的计
24、数变量,t表示退出的猴子数。依次将退出的猴子对应的数组元素置0,直到只剩下一只猴子。3) 找出数组中不为0的ai,输出该数。三、实验结果(源程序 + 注释)插入排序#includeusing namespace std;void main() int i,j,k,t,n,a20; cout请输入需排序的数组a的元素个数(n; cout请输入需排序的数组a的元素;for(i=0;iai; for(i=1;i0&taj-1;-j) aj=aj-1; aj=t; for(k=0;kn;+k) coutak ; coutendl;选举猴王#includeusing namespace std;void
25、 main()int a40,m,n,j,k=1,i=-1;coutn;coutm;for(j=0;jn;j+)aj=j+1;while(1) for(j=1;j=m;) i=(i+1)%n; if(ai!=0) j+;if(k=n)break;coutai号猴子已经出列!endl;ai=0;k+;cout猴王是:ai号猴子!endl;实验_9实验报告一、实验目的1掌握二维数值型数组的使用方法;2. 掌握string类字符串的使用方法。二、实验任务1. 自动产生N*N数据(N取值最大不超过100)存入a数组,数据形成规律如下图示(呈S形),并取出a的下三角形区域数据输出,输出形式如下图所示(呈
26、等腰三角形)。2. 从键盘上输入任意两个字符串,比较它们是否相同,将它们连接成一个新的字符串并输出,输出这个新的字符串的有效长度。#include#include using namespace std;void main() int i,j,k=1,t,n,a100100; cout请输如行列数:(n; for(i=1;i=n;i+) if(i%2!=0) for(j=1;j0;j-)aij=k+; for(i=1;i=n;i+)for(j=1;j=n;j+)coutsetw(8)aij;coutendl;实验_10_实验报告一、实验目的1熟练指针变量的使用,了解其编程技巧。二、实验任务1.
27、 使用指针法在的一组数据中,找出其中最大值所在的位置并输出。2. 使用指针法对一维数组a中的数据按降序排列。三、实验结果(源程序 + 注释)#include#include using namespace std;void main() int i,j,k,t,n,a100,*p,max; coutn; cout请输入需排列数组的元素:;for(i=0;iai;max=a0;for(i=0;imax)max=ai;cout该数组的最大值为:max其位置为:&maxendl;#include#include using namespace std;void main()int i,j,t,n,a
28、100,*p; coutn; cout请输入需排列数组的元素:;for(p=a;p*p;p=a;for(i=0;in;i+)for(j=0;jn-i-1;j+)if(*(p+j)*(p+j+1)t=*(p+j);*(p+j)=*(p+j+1);*(p+j+1)=t;for(p=a;pa+n;p+)coutsetw(3)*p;coutendl;实验_11_实验报告一、实验目的1了解存放常用的系统函数的头文件;2掌握常用系统函数的功能和使用方法;3掌握返回值的概念和运用。二、实验任务1. 编程实现:考察小学一年级学生20以内的加法题(共10题),并按百分制给出最后分数。说明:程序的已知项为20以内
29、的两个随机整数,输出项为两个整数的加法算式,并根据给出的结果判断正误,正确的得10分。最后输出学生的总分成绩。 2. 编写两个子函数,分别求两个整数的最大公约数和最小公倍数,并编写主函数调用这两个子函数,输出结果,两个整数由键盘输入。三、实验结果(源程序 + 注释)#include #include #include using namespace std;void main()int a,b,n,m=0,i,p,q=0;srand(time(NULL);for(i=0;i10;i+)a=1+rand()%(20-1+1); b=1+rand()%(20-1+1);couta+bp;if(p=a+b)m+;q=q+10;cout正确m道 总得分为qendl;#include using namespace std;int pisor(int a,int b) int A,i,c; for(i=0;i100;i+) c=a%b; if(c=0)break; a=b;b=c; A=b; return A;int mult(int a,int b) int B; int pisor(int,int); B=a*b/ pisor(a,b); return B;void main()int m,n,p,q; int pisor(int,int); int mult(int,i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 疫情防控连带责任制度
- 诊所感染管理责任制度
- 护理教学方法改革
- 2025年西北工业大学清洁高效透平动力装备全国重点实验室科研助理招聘备考题库参考答案详解
- 2025年鹰潭某单位招聘工作人员备考题库及答案详解(易错题)
- 2025年太和县招聘村级后备干部21人备考题库完整参考答案详解
- 煤矿企业安全责任制度
- 危险废物防治责任制度
- 地面安全岗位责任制度
- 塔吊司机岗位责任制度
- 检验医院考试试题及答案
- 江西省水利投资集团有限公司2026年第二批次校园招聘【78人】笔试备考试题及答案解析
- 2026年经济学专业知识考试试题及答案
- 电气设备安装调试与安全操作规范
- 2025年半导体行业薪酬报告
- 禽病防治技术
- 初中英语混合式教学中的跨学科融合策略研究教学研究课题报告
- AQ 4232-2025橡胶和塑料制品加工系统粉尘防爆安全规范
- 义务教育道德与法治课程标准日常修订版(2022年版2025年修订)
- 抑郁发作的课件
- 摩擦棘轮课件
评论
0/150
提交评论