西南交通大学C++实验报告2388563Word文档格式.docx

上传人:b****6 文档编号:19818089 上传时间:2023-01-10 格式:DOCX 页数:35 大小:281.14KB
下载 相关 举报
西南交通大学C++实验报告2388563Word文档格式.docx_第1页
第1页 / 共35页
西南交通大学C++实验报告2388563Word文档格式.docx_第2页
第2页 / 共35页
西南交通大学C++实验报告2388563Word文档格式.docx_第3页
第3页 / 共35页
西南交通大学C++实验报告2388563Word文档格式.docx_第4页
第4页 / 共35页
西南交通大学C++实验报告2388563Word文档格式.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

西南交通大学C++实验报告2388563Word文档格式.docx

《西南交通大学C++实验报告2388563Word文档格式.docx》由会员分享,可在线阅读,更多相关《西南交通大学C++实验报告2388563Word文档格式.docx(35页珍藏版)》请在冰豆网上搜索。

西南交通大学C++实验报告2388563Word文档格式.docx

任务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]puter,&

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]puter;

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=ba;

xa%b!

10.xa=a*i;

自ba开始,倍数自增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.#defineN4N为前三角的行数,可更改为其他数值

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=averagen;

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;

8.for(j=0;

4;

j++)

9.{

10.cout<

请输入第"

行第"

j+1<

列的数据:

endl

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1