C++描述程序设计实验报告Word文档下载推荐.docx

上传人:b****5 文档编号:21339278 上传时间:2023-01-29 格式:DOCX 页数:33 大小:40.49KB
下载 相关 举报
C++描述程序设计实验报告Word文档下载推荐.docx_第1页
第1页 / 共33页
C++描述程序设计实验报告Word文档下载推荐.docx_第2页
第2页 / 共33页
C++描述程序设计实验报告Word文档下载推荐.docx_第3页
第3页 / 共33页
C++描述程序设计实验报告Word文档下载推荐.docx_第4页
第4页 / 共33页
C++描述程序设计实验报告Word文档下载推荐.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

C++描述程序设计实验报告Word文档下载推荐.docx

《C++描述程序设计实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C++描述程序设计实验报告Word文档下载推荐.docx(33页珍藏版)》请在冰豆网上搜索。

C++描述程序设计实验报告Word文档下载推荐.docx

y=sin(x)+cos(x)+1/tan(x);

y<

6 运行结果为:

-2.7556

4>

ex+y+ex-y

intx,y,s;

y;

s=exp(x+y)+exp(x-y);

1,1 运行结果为:

8.38906

5>

log10(1+

floatx,s;

s=log10(1+sqrt(1+x*x));

运行结果为:

8.0309

6>

+

(其中

表示取不大于a的最大整数)。

doubles,a,b;

b;

s=fabs(a*a-b*b)+floor(a-b);

4,8 运行结果为:

44

(2)阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能。

532 运行结果为:

5.

分别输入数据为:

10040,20003000,10001000,2000300,1004000 

运行结果为:

01,10,01,11,00.

输入数据为:

23 运行结果为:

,运行结果为:

24.

(3)编写程序实现下列问题的求解。

根据随机从键盘输入的圆半径值,求圆的周长和半径并输出。

floatr,c;

r;

c=2*3.14*r;

c<

r<

3 运行结果为:

18.843

对任意输入的四位整数,分别求出其各位数字,并按从后到前的顺序依次输出。

例如,输入为1234时,输出结果为4,3,2,1

{inta,b,c,d,m;

"

请输入个四位整数m="

;

m;

floor(a=m/1000);

floor(b=(m-a*1000)/100);

floor(c=(m-a*1000-b*100)/10);

floor(d=(m-a*1000-b*100-c*10));

if(m>

=1000&

&

m<

=9999)

d<

b<

a<

elsecout<

错误,请重输"

1234 运行结果为:

4321

实验总结:

学习了C/C++语言编程基本语法,能编写简单的赋值和输入输出程序。

实验二控制结构程序设计

1.实验目的要求

(1)理解基本的解题技巧,掌握用自顶向下、逐步求精的过程设计算法。

(2)熟练掌握if/else语句和switch语句的使用。

(3)熟练掌握while语句、do/while语句和for语句的使用以及区别。

掌握break和continue程序控制语句的使用。

(4)掌握break和continue程序控制语句的使用。

2.实验内容

(1)阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能。

1000,850>

150,850>

150,700>

150,550>

150,400>

150,250>

150,100>

50,100>

50,50>

50

1000:

45>

22---10

*#*#*#$

a=2b=81

(2)编写程序实现下列问题的求解。

求解下面函数的值。

ex+yx<

0,y<

z=ln(x+y)1≤x+y〈10

log10|x+y|+1其它情况

 

{doublex,y,z;

if(x<

0&

0)

z=exp(x+y);

elseif((x+y)>

=1&

(x+y)<

10)

z=log(x+y);

elsez=log10(fabs(x+y)+1);

z;

9,8 运行结果为:

1.25527

编程求解下列各计算式:

1)S=

=1+2+3+…+100

ints=0,i;

for(i=1;

i<

=100;

i++)

s=s+i;

5050

2)S=

=1!

+2!

+…+7!

intf(inti)

{inty;

if(i==0)

{y=1;

elsey=i*f(i-1);

returny;

{ints=0,i;

for(i=1;

=7;

s=s+f(i);

5913

3)   S=1×

2+3×

4+5×

6+…+39×

40

{ints=0,i,m;

=40;

i=i+2)

{m=i*(i+1);

s=s+m;

11060

编程产生出1到10以内的所有数对<

i,j>

并输出,其中i>

j。

{inti,j;

=10;

for(j=1;

j<

j++)

if(i>

j)

"

}

2,1>

3,1>

3,2>

4,1>

4,2>

4,3>

5,1>

5,2>

5,3>

5,4>

6,1>

6,2>

6,3>

6,4>

6,5>

7,1>

7,2>

7,3>

7,4>

7,5>

7,6>

8,1>

8,2>

8,3>

8,4>

8,5>

8,6>

8,7>

9,1>

9,2>

9,3>

9,4>

9,5>

9,6>

9,7>

9,8>

10,1>

10,2>

10,3>

10,4>

10,5>

10,6>

10,7>

10,8>

10,9>

编程求出10000以内的所有符合如下条件的数:

其高位数字小于低位数字。

如12,238,3578等。

但21,548不符合条件。

for(m=10;

100;

m++)

{a=m/10;

b=(m-a*10);

if(a<

b)

"

for(m=100;

1000;

{a=m/100;

b=(m-a*100)/10;

c=(m-a*100-b*10)/1;

b&

c)

for(m=1000;

10000;

{a=m/1000;

b=(m-a*1000)/100;

c=(m-a*1000-b*100)/10;

d=(m-a*1000-b*100-c*10);

c&

d)

}}

121314151617181923242526272829343536373839454647484956

575859676869787989123124125126127128129134135136137138139

145146147148149156157158159167168169178179189234235236237238

239245246247248249256257258259267268269278279289345346347348

349356357358359367368369378379389456457458459467468469478479

48956756856957857958967867968978912341235123612371238123912451

2461247124812491256125712581259126712681269127812791289134513461

3471348134913561357135813591367136813691378137913891456145714581

4591467146814691478147914891567156815691578157915891678167916891

7892345234623472348234923562357235823592367236823692378237923892

4562457245824592467246824692478247924892567256825692578257925892

6782679268927893456345734583459346734683469347834793489356735683

5693578357935893678367936893789456745684569457845794589467846794

689478956785679568957896789

此次学习了C++,可以掌握了一些基本语句的控制。

掌握了if/else语句和switch语句的使用。

while语句、do/while语句和for语句的使用以及区别。

break和continue程序控制语句的使用。

实验三数组

(1)掌握一维数组和二维数组的定义、初始化赋值、元素引用的方法。

(2)初步了解数组名与地址的关系。

(3)掌握字符数组和字符串函数的使用。

(4)掌握与数组有关的算法(特别是排序和查找算法)。

(1)阅读下列程序,写出其运行结果,并指出其功能。

Sumofa=

CERCOMP

6,5 运行结果为:

11

编程产生下列数组,并输出。

维数组1)(149162536496481100

{ints[10],i;

for(i=0;

s[i]=i*i;

for(i=0;

s[i]<

c=(m-a*1000-b*100)/1;

测试过程和运行结果分析:

149162536496481100

⑵二维数组

1)123456

234560

345601

456012

560123

601234

编程实现数组的排序:

将有15个元素的整型数组按从小到大的次序排序。

{inta[15];

inti,m,t;

for(i=0;

=14;

{cin>

a[i];

}

{for(m=i+1;

15;

{if(a[i]>

a[m])

{t=a[i];

a[i]=a[m];

a[m]=t;

a[i]<

126453781115912101314 运行结果为:

123456789101112131415

编程求一组整数的最大公因子和最小公倍数。

{inta[2];

inti,m;

a[0]>

a[1];

for(i=a[0]*a[1];

i--)

if(a[0]%i==0&

a[1]%i==0)break;

最大公因子为:

m=a[0]*a[1]/i;

最小公倍数为:

4,6 运行结果为:

最大公因子为2最小公倍数为12

将两个字符串连接起来,不要用strcat。

{chara[30],b[30],x[60];

chari,j;

a[i]!

='

\0'

x[i]=a[i];

for(j=0;

a[j]!

x[i+j]=b[j];

x[i+j]='

x<

chinabeautiful运行结果为:

chinabeautiful

通过学习该章节,已初步掌握了掌握一维数组和二维数组的定义、初始化赋值、元素引用的方法。

掌握字符数组和字符串函数的使用。

掌握与数组有关的算法(特别是排序和查找算法)。

实验四函数

(1)理解并掌握如何模块化的用函数来构建程序。

(2)掌握定义函数的方法,了解函数的重载方法,了解内联函数的机制。

(3)掌握函数间传递信息的机制。

(4)掌握函数的嵌套调用(和递归调用)的方法。

(5)掌握全局变量和局部变量、动态变量和静态变量的概念和使用方法。

48,32. 运行结果为:

hcf=16lcd=96

k=13

00

10

93

612

求方程ax2+bx+c=0的根,用三个函数分别求b2-4ac大于0、等于0和小于0时的根,并输出结果。

从主函数输入a、b、c的值。

#include<

//b^2-4ac=0

voidfun1(double&

a,double&

b,double&

c,double&

d){

doubleans=(-b/(2*a));

b^2-4ac=0"

cout<

x="

ans<

//b^2-4ac>

voidfun2(double&

doubleans1,ans2;

ans1=(-b+sqrt(d))/(2*a);

ans2=(-b-sqrt(d))/(2*a);

cout<

b^2-4ac>

0"

x1="

ans1<

x2="

ans2<

//b^2-4ac<

voidfun3(double&

doublereal,imar;

real=-b/(2*a);

imar=sqrt(-d)/(2*a);

b^2-4ac<

real<

+"

imar<

i"

-"

intmain(){doublea,b,c,d;

cout<

请输入a,b,c"

c;

{d=b*b-4*a*c;

if(d==0)fun1(a,b,c,d);

elseif(d>

0)fun2(a,b,c,d);

elsefun3(a,b,c,d);

1,5,6运行结果为:

0x1=-2,x2=-3

编写出判断一个整数是否为素数的函数,并求出在2000以内的有十个以上的所有连

boolf(intx){

inti;

boolp=true;

for(i=2;

=x;

{

if(x%i==0)p=true;

if(x==1)p=false;

returnp;

intx;

cout<

请输入一个正整数:

if(!

f(x))cout<

不好意思"

<

不是素数!

\n"

elsecout<

是素数!

for()

 1运行结果为:

不好意思1不是素数!

通过本次实验大致了解如何模块化的用函数来构建程序,定义函数的方法,能够初步运用函数来编译程序。

实验五指针

(1)掌握指针的概念,学会定义和使用指针变量。

(2)学会使用数组指针和指向数组的指针变量。

(3)学会使用字符串指针和指向字符串的指针变量。

(4)了解指向指针的指针的概念以及其使用方法。

(5)掌握指针、引用、数组做函数参数的传递机制。

(6)*学会使用指向函数的指针变量。

(1)阅读下面程序,写出其运行结果。

-5,-12,-7

5 运行结果为:

1

将一个3*3的矩阵转置,用一个函数实现。

在主函数中用scanf输入以下矩阵元素:

{2,4,6,8,10,12,14,16,18}。

将数组名作为函数参数。

函数调用后在主函数中输出已转置的矩阵。

说明:

矩阵转置是指将矩阵的行变成列。

第一行变成第一列,第二行变成第二列,,,

比如:

二维数组

123

456

789

变成

147

258

369

inta[3][3]={{2,4,6},{8,10,12},{14,16,18}};

intb[3][3],i,j;

3;

for(j=0;

b[j][i]=a[i][j];

b[i][j]<

246

81012

141618

自己写一个strcmp函数,实现两个字符串的比较。

两个字符串s1,s2由main函数输入,strcmp函数的返回值也在

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

当前位置:首页 > 表格模板 > 合同协议

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

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