程序设计基础 实验报告Word格式文档下载.docx
- 文档编号:16234279
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:30
- 大小:52.52KB
程序设计基础 实验报告Word格式文档下载.docx
《程序设计基础 实验报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《程序设计基础 实验报告Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
"
x="
;
y=sqrt(1+1/(x+1/(x+1)));
y="
y;
输入数据:
2运行结果为:
1.9523
3>
sinX+cosX+tan-1X
floatx,y;
cin>
y=sin(x)+cos(x)+1/tan(x);
cout<
2运行结果:
0.035493
4>
ex+y+ex-y
floatx,y,z;
z=exp(x+y)+exp(x-y);
z="
z;
输入数据:
1,2运行结果:
20.4534
5>
log10(1+
)
y=log10(1+sqrt(1+pow(x,2)));
1运行结果:
0.382776
6>
+
floata,b,y;
a="
a;
b="
b;
y=fabs(a*a-b*b)+floor(a-b);
4,5运行结果:
8
(2)阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能。
输入数据为:
A 运行结果为:
A
a 运行结果为:
无论输入为大写或小写字母时,结果都为大写。
其中
ch=(ch>
=’A’&
&
ch<
=’Z’)?
(ch+32):
ch;
此语句是将大写字母转换为小写字母,如果是小写字母,则保持不变
输入数据为100,40 运行结果为:
0,1
输入数据为:
2000,3000运行结果为:
1,0
输入数据为1000,2000运行结果为:
0,0
300,100 运行结果为:
输入两个数,判断其与1000的大小,第一个数如果比1000大,则为
真,输出1,否则为假,输出0;
第二个数如果比1000小,则为
bi=m>
1000;
br=x<
=1e3;
就是用于判断的
输入数据为:
4运行结果为:
5
24运行结果为:
25
输入一个数,判断其与10的大小关系,如果小于10,输出该数加1,否则,也输出该数加一。
本题考察自增与自减。
后置运算是在使用该数之后使该数加1。
(3)编写程序实现下列问题的求解
根据随机从键盘输入的圆半径值,求圆的周长和半径并输出。
#include<
{
floatr,s;
r="
r;
s=3.14*r*r;
s="
s;
}
2运行结果:
12.56
对任意输入的四位整数,分别求出其各位数字,并按从后到前的顺序依次输出。
例如,输入为1234时,输出结果为4,3,2,1。
inta,b,c,d,e;
b=a/1000;
c=a/100-10*b;
d=a/10-100*b-10*c;
e=a-1000*b-100*c-10*d;
e<
”,”<
d<
c<
6789运行结果:
9,8,7,6
4.实验总结
本次实验学习了C/C++语言编程基本语法,能编写简单的赋值和输入输出程序。
实验二控制结构程序设计
(1)理解基本的解题技巧,掌握用自顶向下、逐步求精的过程设计算法。
(2)熟练掌握if/else语句和switch语句的使用。
(3)熟练掌握while语句、do/while语句和for语句的使用以及区别。
(4)掌握break和continue程序控制语句的使用。
(1)阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能
1000,850
运行结果:
(1000,850)(150,850)(150,700)(150,550)(150,400)(150,250)
(150,100)(50,100)(50,50)50
分析:
输入两个数,保留较小的数以及两个数之差,按此规律计算,直到两个数相
等为止。
运用了while语句及其嵌套
1000,45
(1000:
45)---10
输入两个数,用大数减较小数,直到两数相等,并记录计算次数
运行结果:
*#*#*$
运用了循环语句,通过判断余数是1或零输出*或#,最后循环结束输出$
a=2,b=8
(2)编写程序实现下列问题的求解。
求解下面函数的值。
ex+yx<
0,y<
z=ln(x+y)1≤x+y〈10
log10|x+y|+1其它情况
源代码:
#include<
floatz,x,y;
if((x<
0)&
(y<
0))
z=exp(x+y);
elseif((x+y>
=1)&
(x+y<
10))
z=log(x+y);
elsez=log10(fabs(x+y)+1);
1.09861
-3,-40.000911882
编程求解下列各计算式:
1)S=
=1+2+3+…+100
ints,i;
s=0;
i=1;
do{
s=s+i;
i=i+1;
}while(i<
=100);
s<
5050
2)S=
=1!
+2!
+…+7!
inti,s,x;
s=1;
x=1;
do{x=x*(i+1);
s=s+x;
i=i+1;
=6);
运行结果:
5913
3)S=1×
2+3×
4+5×
6+…+39×
40
#include<
s=s+i*(i+1);
=39);
21320
编程产生出1到10以内的所有数对<
i,j>
并输出,其中i>
j。
(7)#include<
{inti,j;
j=1;
for(i=1;
i<
=10;
i++)
for(j=1;
j<
j++)
if(i>
j)
{cout<
”<
"
”>
运行结果<
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不符合条件。
inta,b,c,d,n;
for(n=0;
n<
=999;
n++)
{a=n/100;
b=(n-a*100)/10;
c=n-a*100-b*10;
if(a<
b&
b<
c)
}
for(n=1000;
10000;
{a=n/1000;
b=(n-a*1000)/100;
c=(n-a*1000-b*100)/10;
d=n-a*1000-b*100-c*10;
if(a<
c&
d)
121314151617181923242526272829343536373839454647484956575859676869787989123124125126127128129134135136137138139
145146147148149156157158159167168169178179189234235236237238
239245246247248249256257258259267268269278279289345346347348
349356357358359367368369378379389456457458459467468469478479
489567568569578579589678679689789123412351236123712381239124512461247124812491256125712581259126712681269127812791289134513461347134813491356135713581359136713681369137813791389145614571458145914671468146914781479148915671568156915781579158916781679168917892345234623472348234923562357235823592367236823692378237923892456245724582459246724682469247824792489256725682569257825792589267826792689278934563457345834593467346834693478347934893567356835693578357935893678367936893789456745684569457845794589467846794689478956785679568957896789Pressanykeytocontinue
掌握if/else语句和switch语句,while语句、do/while语句和for语句,break和continue程序控制语句的使用。
实验三数组
(1)掌握一维数组和二维数组的定义、初始化赋值、元素引用的方法。
(2)初步了解数组名与地址的关系。
(3)掌握字符数组和字符串函数的使用。
(4)掌握与数组有关的算法(特别是排序和查找算法)。
(1)阅读下列程序,写出其运行结果,并指出其功能。
1001999962591498481
Sumofa=635
1009996918481492591
结果分析:
首先定义的一个整型数组,当数组的成员是奇数时,使得数组的每个数为i的平方(i从0开始取),当数组的成员是偶数时,令其没个成员的值为100-(i/2)*(i/2);
之后进行N次循环,输出每个数组成员的值;
然后令s的初始值为0,再进行N次循环每次使得s=s+a[i];
每次输出s的值即可。
CERCOMMPP
首先定义两个字符串数组a[20],b[20];
使用strcat函数将b数组连接到a数组中去,之后a[20]=”TERCOMP”,然后使得将a数组的值逐一赋给b数组直到a数组结束(a数组从i=1的时候开始,即第二个数开始,b也从第二个开始,所以其b数组的第一个元素的值是不变的,最后的一个数依然是原先b数组的最后的一个数),最后输出此时b数组的所有的值。
99100运行结果:
99
首先定义几个整型变量和一个整型数组,提示输入两个值n和base;
当满足n不等于0的时候执行一下循环,(使i自增,令数组num的值为n/base的余数,之后令n的值为n/base的商的整数部分)当不满足上述条件时,执行循环(令i=j,当j大于等于1的时候输出num数组的第j+1个成员,之后令j自减,直到不满足上述条件。
编程产生下列数组,并输出。
⑴一维数组
1)(149162536496481100)
源代码:
{cout<
("
inta[10];
inti,s;
for(i=0;
10;
{a[i]=(i+1)*(i+1);
a[i]<
"
)"
(149162536496481100)
⑵二维数组
1)123456
234560
345601
456012
560123
601234
inta[6][6];
inti,j;
6;
for(j=0;
a[i][j]=(i+j+1)%7;
{for(j=0;
a[i][j]<
cout<
123456
编程实现数组的排序:
将有15个元素的整型数组按从小到大的次序排序。
inta[15];
inti;
intj;
inttemp=0;
for(i=0;
15;
{
cin>
a[i];
15-1;
for(j=i+1;
{
if(a[i]>
a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
151413121110987654321
123456789101112131415
编程求一组整数的最大公因子和最小公倍数。
inta[4];
inti,j,k,s;
请输入4个值:
4;
intmin=a[0];
if(a[i]<
min)min=a[i];
for(j=min;
;
j--){
{if(a[i]%j!
=0)break;
if(i==4){cout<
break;
{s=s*a[i];
k=s/pow(j,4);
k<
361836
336
将两个字符串连接起来,不要用strcat。
chars1[80],s2[40];
inti=0,j=0;
inputstring1:
s1;
inputstring2:
s2;
while(s1[i]!
='
\0'
i++;
while(s2[j]!
s1[i++]=s2[j++];
s1[i]='
s1<
school
bus
schoolbus
学习了有关数组的知识
实验四函数
(1)理解并掌握如何模块化的用函数来构建程序。
(2)掌握定义函数的方法,了解函数的重载方法,了解内联函数的机制。
(3)掌握函数间传递信息的机制。
(4)掌握函数的嵌套调用(和递归调用)的方法。
(5)掌握全局变量和局部变量、动态变量和静态变量的概念和使用方法。
4832运行结果:
hcf=16,lcd=96
分析:
输入两个数,令较小数为a,较大数为b,如果b除以a的余数不为零,则令其余数为a,hcf=a;
lcd=u*(v/a)
k=13
分析:
本题运用了递归函数进行计算,即fib(?
)=fib(7),其中fib(g–1)+fib(g–2),且fib(0)=0,fib
(1)=0,fib
(2)=1;
通过字符的ASCII码的值的加减得到
00
10
93
612
如果将
(1)处语句改为staticintx,y;
输出结果仍为此,因为未赋值,系统自动为其赋值为0
求方程ax2+bx+c=0的根,用三个函数分别求b2-4ac大于0、等于0和小于0时的根,并输出结果。
从主函数输入a、b、c的值。
voidf1(float,float);
voidf2(float,float);
voidf3(float,float);
floatx1,x2,disc,p,q;
intmain()
floata,b,c;
inputa,b,c:
c;
disc=b*b-4*a*c;
root:
if(disc>
0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计基础 实验报告 程序设计 基础 实验 报告