西南交通大学C++实验报告2388563Word文档下载推荐.docx
- 文档编号:21922625
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:41
- 大小:275.20KB
西南交通大学C++实验报告2388563Word文档下载推荐.docx
《西南交通大学C++实验报告2388563Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《西南交通大学C++实验报告2388563Word文档下载推荐.docx(41页珍藏版)》请在冰豆网上搜索。
任务1截屏:
任务2截屏:
实验__2__实验报告
2010.04.01实验地点:
1.掌握对一般数据的输入和输出格式控制方法;
2.掌握对实型数据输出形式的设置和小数位数的控制方法;
3.了解数据输入的相关注意事项。
1.输入一台计算机的编号和该计算机的价格,并输出这些信息。
(如编号为,价格为5998.00元,注意此处计算机的编号作为一个整数而言超出了int所定义的变量的存储范围,因此只能用double型变量来存储,但输出时要求看见的是整数形式的编号)
2.输入三个同学的学号,计算机和英语课程的考试成绩,并输出这些信息。
要求每个同学的三个信息输出在同一行上,三行输出信息要各列对齐。
2.#include<
iomanip>
//使用控制符需包含iomanip头文件
3.usingnamespacestd;
4.intmain()
5.{
6.doublea,b;
7.cout<
请输入计算机编号和价格:
;
8.cin>
>
a>
b;
9.cout<
setiosflags(ios:
:
fixed)<
setprecision(0)<
您输入的编号为:
a<
//使用控制符控制输出格式为固定小数位,且精度为0位(无小数位)
10.cout<
setprecision
(2)<
您输入的价格为:
b<
11.//使用控制符恢复浮点数精度为小数部分2位
12.return0;
13.}
截屏:
任务2:
6.inti=0;
7.structstudent
8.{
9.intnum;
10.intcomputer;
11.intenglish;
12.}std[3];
//定义结构体变量
13.for(i=0;
i<
3;
i++)
14.{
15.printf("
请输入第%d个同学的学号,计算机成绩,英语成绩:
\n"
i+1);
16.scanf("
%d%d%d"
&
std[i].num,&
std[i].computer,&
std[i].english);
//依次赋值
17.}
18.for(i=0;
19.{
20.cout.width(10);
21.cout<
right)<
std[i].num;
22.cout.width(10);
23.cout<
std[i].computer;
24.cout.width(10);
25.cout<
std[i].english;
26.cout<
//依次输出结果
27.}
28.return0;
29.}
实验__3__实验报告
1.掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路
2.和方法;
3.掌握“一路分支选择结构”算法的实现语句,if语句的使用方法;
4.掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法;
1.有一个函数,输入x的值,输出相应的函数值。
(提示:
x取值分大于零和小于等于0的两段,对输入的x值,在计算前应判断范围,采用不同的计算公式。
2.已知一函数,输入x的值,求解并输出相应的y值。
该题根据x的取值范围采用不同公式来计算y的值。
显然采用if选择结构可实现该程序。
5.intx,y;
6.cout<
请输入x:
7.cin>
x;
8.if(x>
0)
9.{
10.y=x+1;
11.}
12.else
13.y=x*x;
14.cout<
y="
y;
15.return0;
16.}
8.if(x<
1)
9.y=x;
10.else
11.{
12.if(x>
=10)
13.y=3*x-11;
14.else
15.y=2*x-1;
16.}
17.cout<
y<
18.return0;
19.}
实验__4__实验报告
1.掌握“多路分支选择结构”算法的实现语句,switch语句的使用方法;
2.学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化
情况。
1.实现一个简单的菜单程序,运行时显示
Menu:
A(dd)
D(elete)
S(ort)
Q(uit)
Selectone:
要求用户提供相应的输入,并在用户输入A,D,S时分别提示“数据已经增加、删除、排序”,输入为Q时程序结束。
该程序要求用户输入特定的A,D,S,Q字符显示相应信息,所以适合采用switch结构。
2.某公司进行产品销售,既零售也批发,零售的价格与批发的价格不同,购买产品数量的多与少其价格也不同。
具体标准见下表:
批发商
零售商
数量(个)
单位价格(元/个)
50~200
10
1~20
18
200以上
8
20~40
15
40~50
12
5.charc;
Menu:
A(dd)"
8.cout<
D(elete)"
S(ort)"
Q(uit)"
11.cout<
Selectone:
12.cin>
c;
13.switch(c)
15.case'
A'
cout<
数据已经增加。
break;
16.case'
D'
数据已经删除。
17.case'
S'
数据已经排序。
18.case'
Q'
19.}
20.return0;
21.}
5.inta,y;
请输入购买数量:
a;
8.switch((a-1)/10)
10.case0:
11.case1:
y=a*18;
12.case2:
13.case3:
y=a*15;
14.case4:
y=a*12;
15.}
16.if(a>
50&
&
=200)
17.y=a*10;
18.else
19.if(a>
200)
20.y=a*8;
21.cout<
购买数量为"
应付"
元"
22.return0;
23.}
24.//本程序采用了分支选择结构和if结构混编,因价格选择方式>
50元时排列较不规律,所以大于50元时使用的if语句作为判断。
实验__5__实验报告
2010.04.08实验地点:
1.掌握“处理某一或某些操作需要被有条件地重复执行”的编程思路和方法;
2.掌握“当型型循环结构”算法的实现语句之一while循环语句的使用方法;
3.掌握“直到型循环结构”算法的实现语句do-while循环语句的使用方法;
4.掌握“当型型循环结构”算法的实现语句之一for循环语句的使用方法。
1.计算1-2+3-4+…+99-100。
2.输入一个整数,将各位数字反转后输出。
5.inti,sum=0,k=1;
6.for(i=1;
=100;
7.{
8.sum+=i*k;
9.k*=-1;
//k每循环一次变换一次符号,初始符号为正
10.}
1-2+3-4.....99-100="
sum;
5.chars[20];
6.inti,a=1,sum=0;
请输入数字(限10位自然数):
s;
9.for(i=0;
s[i]!
=0;
10.if(s[i]>
='
0'
s[i]<
9'
)//为数字
11.continue;
12.else
13.{
14.cout<
请输入数字!
请重新输入:
15.cin>
16.break;
17.}//该for循环用于判断s中是否为纯数字
20.sum+=((s[i]-48)*a);
//s[i]转换成数字后与位数相乘,然后加至sum
21.a*=10;
//a作为位数标识每次自乘10
22.}
23.cout<
反转后:
sum<
24.return0;
25.}
实验__6__实验报告
1.掌握循环与选择结构的嵌套的使用方法;
2.掌握嵌套循环的使用方法;
3.练习continue和break语句的使用方法。
1.求两个整数的最大公约数和最小公倍数。
2.用循环结构语句编程并输出下图:
*
**
**
5.inti,a,b,t,xa=1,xb;
//xa为最小公倍数,xb为最大公约数
请输入两个数:
8.if(a>
b){t=a;
a=b;
b=t;
}//将a,b中大者放后
9.for(i=b/a;
xa%b!
10.xa=a*i;
//自b/a开始,倍数自增1与a相乘,若所得之数整除b,则为最小公倍数
11.for(xb=a;
((b%xb==0)&
(a%xb==0))==0;
xb--);
//自a开始自减,若a,b均可被整除,则为最大公约数
12.cout<
最小公倍数为:
xa<
13.cout<
最大公约数为:
xb<
14.return0;
15.}
2.#defineN4//N为前三角的行数,可更改为其他数值
6.inti=1,j,k;
7.for(j=1;
j<
=N-i;
j++)cout<
"
*"
//输出第一行
9.for(i=2;
=N;
10.{
11.for(j=1;
12.cout<
13.for(k=1;
k<
=2*i-3;
k++)cout<
14.cout<
15.}//输出前三角,以空格星号空格星号的格式输出
16.for(i=N-1;
i>
=2;
i--)
17.{
18.for(j=1;
19.cout<
20.for(k=1;
22.}//以同样格式输出后三角,i循环方式倒序
23.for(j=1;
24.cout<
//输出最后一行
25.return0;
26.}
实验__7__实验报告
2010.04.15实验地点:
1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法;
2.掌握数值型一维数组的使用方法;
1.输入n个数,找出所有大于n个数的平均值的那些数及最小数。
2.设有有序(值从小到大)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。
两组原始数据用一维数组a,b表示,合并后的数据用一维数组c表示,ia,ib分别代表当前待放入到数组c中去的数组a,b的下标,ic指向数组c中当前存放数据的下标,如下图所示。
5.doubleaverage=0;
6.inta[100],min,i,n;
请输入n的值(n<
=100):
n;
请输入数据:
10.for(i=0;
12.cin>
a[i];
13.cout<
第"
i+1<
个数据已录入。
14.}
15.min=a[0];
16.for(i=0;
18.average+=a[i];
19.if(a[i]<
min)min=a[i];
20.}//遍历相加以求出平均数及最小值
21.average=average/n;
22.cout<
endl<
平均值为"
average<
23.for(i=0;
24.{
25.if(a[i]>
average)
26.cout<
个数"
a[i]<
大于平均值。
28.cout<
最小值为"
min<
29.return0;
30.}
5.inta[10]={130},b[8]={},c[18];
6.intai,bi,i;
7.for(ai=0,bi=0,i=0;
ai<
10||bi<
8;
9.if(a[ai]>
b[bi])//依次判断,若b中目前值小于a,则取b值,且b下标自增1,a下标不变
10.{c[i]=b[bi];
bi++;
}
11.else//同理
12.{c[i]=a[ai];
ai++;
13.}
14.for(i=0;
18;
15.cout<
c[i]<
//显示出结果
16.return0;
17.}
实验__8__实验报告
2010.05.13实验地点:
2.掌握二维数值型数组的使用方法;
1.输出以下杨辉三角形。
1
11
121
1331
14641
15101051
1615201561
172135352171
18285670562881
193684126126843691
2.有一个34的矩阵,要求编程序找出每一行中值最大的那个元素并与该行第1列的元素交换。
3.#defineN10//预定义杨辉三角形的行数
4.voidset()//编写为无返回值函数,可自由调整输出数据占位
6.cout.width(6);
7.}
8.voidcoutspace(inta)//输出a个空格
9.{
10.inti;
11.for(i=0;
i++)cout<
12.}
13.intmain()
14.{
15.inta[N*(N+1)/2],i,j,k;
//由行数计算得出需要的总个数
16.coutspace((N-1)*4);
//每字符占4格,第一行前插入空格
17.a[0]=1;
set();
a[0]<
//第一行为起始行,直接输出
18.for(i=1,k=1;
N;
i++)//以行为循环单位,自第二行开始
20.coutspace((N-i-1)*4);
//每字符占4格,输出数据前空格
21.a[k]=1;
a[k];
//初始化输出第一个数
22.k++;
23.for(j=1;
i;
j++)//j为行标
24.{
25.a[k]=a[k-i]+a[k-i-1];
//由上一行两数相加计算得出
26.set();
//输出中间的数据
27.k++;
28.}
29.a[k]=1;
a[k]<
//与第一个数据呼应,输出行末数据
30.k++;
31.}
32.return0;
33.}
5.inta[3][4],i,j,k,max,t;
6.for(i=0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西南交通大学 C+ 实验 报告 2388563