文档详情

C++实验报告文本版.doc

发布:2025-03-26约2.55千字共4页下载文档
文本预览下载声明

真诚为您提供优质参考资料,若有不当之处,请指正。

真诚为您提供优质参考资料,若有不当之处,请指正。

PAGE/NUMPAGES

真诚为您提供优质参考资料,若有不当之处,请指正。

实验目的

熟悉定义函数的方法、函数实参与形参的对应关系机“值传递”方式

熟悉函数的嵌套调用和递归调用的方法。

熟悉全局变量、局部变量概念和使用方法。

熟悉编译预处理的应用。

熟悉多文件的程序的编译和运行的方法。

二、实验环境

VisualC++6.0

三、实验内容

1、输入一个数字并判断其是否是素数。

程序为:

#includeiostream

usingnamespacestd;

intmain()

{inta,b,i;

cout请输入一个数endl;

cina;

if(a==2)cout2是素数;

elseif(a2)

{for(i=2;ia;i++)

{b=a%i;

if(b==0)break;}

if(b==0)couta不是素数;

elsecouta是素数;}

elsecouta不是素数;

return0;}

运行时分别输入:17、34、2、1、0

2、验证哥德巴赫猜想,输入一个不小于6的偶数,输出一下形式的结果:

34=3+31

程序为:#includeiostream

#includecmath

usingnamespacestd;

intmain()

{voidgodbaha(int);

intn;

cout请输入一个数字;

cinn;

godbaha(n);

return0;}

voidgodbaha(intn)

{intprime(int);

inta,b;

for(a=3;a=n/2;a=a+2)

{if(prime(a))

{b=n-a;

if(prime(b))

coutn=a+bendl;

}}}

intprime(intm)

{inti,k=sqrt(m);

for(i=2;i=k;i++)

if(m%i==0)break;

if(ik)return1;

elsereturn0;}

运行时输入:6、12、20、458

3、汉诺塔问题

程序为:#includeiostream

usingnamespacestd;

intmain()

{voidhanoi(intn,charone,chartwo,charthree);

intm;

coutinputthenumberofdisks:;

cinm;

coutThestepsofmovingmdisks:endl;

hanoi(m,A,B,C);

return0;

}

voidhanoi(intn,charone,chartwo,charthree)

{voidmove(charx,chary);

if(n==1)move(one,three);

else

{hanoi(n-1,one,three,two);

move(one,three);

hanoi(n-1,two,one,three);}

}

voidmove(charx,chary)

{

coutx--yendl;

}

运行时分别输入:3,5,7,16,

4、输入一个字母字符,设置条件编译,使之能根据需要将小写字母改为大写字母输出,或将大写字母改为小写字母输出。

程序如下:

#includeiostream

usingnamespacestd;

//#defineLETTER1

intmain()

{charc;

cinc;

#ifLETTER

if(c=ac=z)

c=c-32;

#else

if(c=Ac=Z)

c=c+32;

#endif

coutcendl;

return0;

}运行时分别输入:a,B,y

5、求a*b和a^m的值,其中b的值在程序中给出,a和m的值由键盘输入,要求写一个power函数求a^m的值,在主函数中求a*b,并调用power函数得到a^m的值。

主要程序如下(部分)

Filel.cpp中

intmain()

{intpower(int);

intb=3mc,d,m;

coutenteranintegeraanditspowerm:endl;

cinam;

d=power(m)

couta**m=dendl;

return0;}

filed2.cpp中

externinta;

intpow

显示全部
相似文档