c基础例题道.docx

上传人:b****3 文档编号:3142316 上传时间:2022-11-18 格式:DOCX 页数:34 大小:22.27KB
下载 相关 举报
c基础例题道.docx_第1页
第1页 / 共34页
c基础例题道.docx_第2页
第2页 / 共34页
c基础例题道.docx_第3页
第3页 / 共34页
c基础例题道.docx_第4页
第4页 / 共34页
c基础例题道.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

c基础例题道.docx

《c基础例题道.docx》由会员分享,可在线阅读,更多相关《c基础例题道.docx(34页珍藏版)》请在冰豆网上搜索。

c基础例题道.docx

c基础例题道

/*1、打印出所有的"水仙花数"。

所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

例如,153是一水仙花数,因为153=13+53+33。

*/

#include<>

voidmain()

{

inti,a=0,b=0,c=0;

for(i=100;i<1000;i++)

{

a=i%10;

b=i/10%10;

c=i/100%10;

if(a*a*a+b*b*b+c*c*c==i)

cout<<"i="<

}

}

/*2、一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如,6的因子为1、2、3,而6=1+2+3,因此6是"完数"。

编程序找出1000之内的所有完数,并按下面的格式输出其因子:

6-〉1,2,3*/

#include<>

voidmain()

{

inti,j,sum=0,a[50],k,t;

for(i=1;i<=1000;i++)

{

sum=0;

for(j=1;j

{

if(i%j==0)

{

sum+=j;

a[k++]=j;

}

}

t=k;

if(sum==i)

{

cout<";

for(k=0;k

{

cout<

if(k

}

cout<

}

k=0;

}

}

/*3、求Sn=a+aa+aaa+...+aa...a之值,其中a是一个数字。

例如:

2+22+222+...+22222(此时n=5),n由键盘输入。

*/

#include<>

voidmain()

{

doublea,sn=,sum=;

intn,i;

cout<<"pleaseinputanumber";

cin>>a;

cout<<"pleaseinputnnumber";

cin>>n;

sn=a;

sum=a;

for(i=2;i<=n;i++)

{

sum=sum*10+a;

sn+=sum;

}

cout<<"Sn="<

}

/*4、一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。

求它在第10次落地时,共经过了多少米第10次反弹多高*/

#include<>

voidmain()

{

doubleh1=100,h2=100,sum=;

inti;

for(i=1;i<=10;i++)

{

sum+=h2;

h1=h1/;

h2=h1*2;

}

cout<<"sum="<

}

/*5、猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉了一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,见只剩一个桃子了。

求第一天共摘了多少桃子。

*/

#include<>

voidmain()

{

intnumber,i;

number=1;

for(i=10;i>1;i--)

number=(number+1)*2;

cout<<"number="<

}

第4章函数

/*1、写一函数用"气泡法"对输入的10个字符按由小到大的顺序排列。

*/

#include<>

voidmain()

{

inti,j,temp,a[10];

cout<<"pleaseinputtennumbers:

\n";

for(i=0;i<10;i++)

cin>>a[i];

for(i=0;i<10;i++)<

}

第5章数组

/*1、将一个数组中的值按逆序重新存放,例如,原来顺序为:

a、b、c、d。

要求改为:

d、c、b、a。

*/

#include<>

voidback(char*);

voidmain()

{

chara[50]="abcdefg";

cout<<"a="<

back(a);

}

#include<>

voidback(char*p)

{

inti=0;

while(*p!

='\0')

{

p++;...m)的全排列

{

intm=n*n;

staticintNum=0;

int*b_val=newint[m];

intc=0,k,i,j;

b_val[c]=-1;.[6]6...[7]0...[7]7[8]0...[8]8判断魔方

.[8]7判断魔方

{

for(k=0;k

.78

b_val[c]=-1;

和m从键盘输入。

*/

#include<>

#include<>

voidcharge(inta[],int,int);

voidmain()

{

inti,n,m,a[50];

cout<<"请输入n的值:

";

cin>>n;

cout<<"请输入移动位数:

";

cin>>m;

cout<<"请输入整数:

";

for(i=0;i

{

cin>>a[i];

}

cout<<"您输入的整数为:

";

for(i=0;i

{

cout<

}

cout<

charge(a,n,m);

cout<<"移动后的整数为:

";

for(i=0;i

{

cout<

}

cout<

}

voidcharge(inta[],intn,intm)ext=&node1[i-1];

}

}

voidmain()

{

structnumnode[10];

for(inti=0;i<10;i++)

{

node[i].data=i;

}

for(intj=0;j<10;j++)

cout<

fan(node);

cout<

cout<

for(intk=9;k>0;k--)

cout<<(node[k].next)->data;

}

第8章类和对象

/*1、自定义一个字符串处理类CString,且能实现取子串、删除子串的功能。

*/

#include<>

#defineMAX_LENGTH100

classCString

{

public:

voidcpystring(char*str);

voidgetSubstring(intbeginStr,intendStr);

voiddelSubstring(intbeginStr,intendStr);

voidprint();

private:

charcstr[MAX_LENGTH];

intlength;

};

#include""

#include""

voidCString:

:

cpystring(char*str)

{

inti=0;

while(*str!

='\0')

{

cstr[i++]=*str;

str++;

}

cstr[i]='\0';

}

voidCString:

:

getSubstring(intbeginStr,intendStr)

{

inti,j=0;

charpstr[MAX_LENGTH];

if(beginStr<0||endStr>MAX_LENGTH||beginStr>endStr)

{

cout<<"error!

"<

}

for(i=beginStr;i

{

pstr[j]=cstr[i];

}

pstr[j]='\0';

cpystring(pstr);

}

voidCString:

:

delSubstring(intbeginStr,intendStr)

{

inti,j=0;

charpstr[MAX_LENGTH];

if(beginStr<0||endStr>MAX_LENGTH||beginStr>endStr)

{

cout<<"error!

"<

}

for(i=0;i

{

pstr[j]=cstr[i];

}

for(i=endStr+1;i

{

pstr[j]=cstr[i];

}

pstr[j]='\0';

cpystring(pstr);

}

voidCString:

:

print()

{

cout<

}

#include<>

#include""

main()

{

CStringstr1,str2,str3;

("Justlikebefore,it'syesterdayoncemore!

");isplay();

cout<<"v2=";();

v3=v1+v2;

cout<<"v1+v2=";();

}

/*2、将第一题中的相关重载项改为用友元函数的方式重载。

*/

classVector

{

public:

Vector();

Vector(intx,inty);

friendvoidoperator++(Vector&v);

friendvoidoperator++(Vector&v,int);

friendVectoroperator+(constVector&v1,constVector&v2);

voiddisplay();

private:

intx,y;

};

#include<>

#include""

Vector:

:

Vector(){}

Vector:

:

Vector(intx,inty)

{

this->x=x;

this->y=y;

}

voidoperator++(Vector&v){++;++;}

Vectoroperator++(Vector&v,int)

{

Vectorbefore,;

++;

++;

returnbefore;

}

Vectoroperator+(constVector&v1,constVector&v2)

{

Vectorsum;

=+;

=+;

returnsum;

}

voidVector:

:

display()

{

cout<<"("<

}

#include<>

#include""

voidmain()

{

Vecto

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

当前位置:首页 > 法律文书 > 调解书

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

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