}
}
五.完数请使用VC6打开考生目录下的工作区文件"完数.dsw"。
此工程包含一个源程序文件"完数.cpp",输出求1000之内的所有“完数”,输所谓“完数”,是指一个数恰好等于它的因子之和。
例如6是完数,因为6=1+2+3。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
voidmain()
{//**1***************found***********
for(inti=1;i<1000;i++)
{
intsum=0;
for(intj=1;j<=i/2;j++)
//**2***************found***********
if(i%j==0)
sum=sum+j;
//**3***************found***********
if(i==sum)
cout<
}
}
六.求和.请使用VC6打开考生目录下的工作区文件"sum.dsw"。
此工程包含一个源程序文件"sum.cpp",求满足下式的最小n值,其中的limit可用户从键盘输入。
1+1/2+1/3+...+1/n>limit
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
voidmain()
{//**1***************found***********
intlimit;
doublesum=0;
cin>>limit;
intn=0;
do
{//**2***************found***********
n++;
sum+=1.0/n;
//**3***************found***********
}while(sum<=limit);
cout<<"sum="<<<"n="<}
七.金字塔.请使用VC6打开考生目录下的工作区文件shuzijinzita.dsw。
此工程包含一个源程序文件shuzijinzitai.cpp,实现打印一个如图所示的数字金字塔:
1
121
12321
1234321
..........
12345678987654321
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
//打印数字金字塔
#include
voidmain()
{
inti,j,n=9;
for(i=1;i<10;i++)
{//**1***************found***********
for(j=1;j<=n-i;j++)
cout<<"";
//**2***************found***********
for(intk=1;k
cout<//**2***************found***********
for(k-=2;k>0;k--)
cout<cout<}
}
八.成绩.
请使用VC6打开考生目录下的工作区文件chengji.dsw。
此工程包含一个源程序文件chengji.cpp,其完成输入学生百分制成绩,输出五分制成绩,即“优秀”、“良好”、“中等”、“及格”与“不及格”。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
voidmain()
{
inta;
cin>>a;
//**1***************found***********
switch(a)
{
case10:
case9:
cout<<"优秀";break;
case8:
cout<<"良好";break;
case7:
cout<<"中等";break;
case6:
cout<<"及格";break;
case5:
case4:
case3:
case2:
case1:
//**2***************found***********
case0:
cout<<"不及格";break;
//**3***************found***********
default:
cout<<"输入错误1";break;
}
}
九.请使用VC6打开考生目录下的工作区文件date.dsw。
此工程包含一个源程序文件date.cpp,完成输入某一年的年份和月份,计算该月的天数。
提示:
●一年中的大月(1月、3月、5月、7月、8月、10月、12月),每月的天数为31天;
●一年中的小月(4月、6月、9月、11月),每月的天数为30天;
●对于2月,则要判断该年是平年还是闰年,平年的2月为28天,闰年的2月为29天。
某年符合下面两个条件之一就是闰年:
①年份能被400整除;
②年份能被4整除,但不能被100整除。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
voidmain()
{
inty,m,d;
cout<<"请输入年份和月份:
"<cin>>y;
cin>>m;
//**1***************found***********
switch(m)
{
case1:
case3:
case5:
case7:
case8:
case10:
//**2***************found***********
case12:
d=31;break;
case4:
case6:
case9:
case11:
d=30;break;
case2:
if((y%4==0&&y%100!
=0)||(y%400==0))
//**3***************found***********
d=29;
else
d=28;
}
cout<<"当前月为"<"<}
十.请使用VC6打开考生目录下的工作区文件div3.dsw。
此工程包含一个源程序文件div3.cpp,求出1~599中能被3整除,且至少有一位数字为5的所有整数,要求每输出5个数字换一行。
如15、51、513均是满足条件的整数。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
//求能够被3整除且某一个数字位为5的数字
#include
voidmain()
{
for(inti=1;i<=599;i++)
{//**1***************found***********
if(i%3==0)
{
intk=i;
//**2***************found***********
while(k!
=0)
{
//**3***************found***********
if(k%10==5)
cout<<""<break;
k=k/10;
}
}
}
}
4.使用VC6打开考生文件夹下的工作区文件"proj4.dsw",使用递归函数形式写sum函数,求解:
sum(n)=1-2+3-...+n。
补充编制程序,使其功能完整。
在main函数中进行了测试。
#include
#include
intsum(intn)
{
//********333********
ints;
if(n<=1)
s=1;
else
s=n+sum(n-1);
returns;
//********666********
}
voidmain()
{
intn=5,result=0;
result=sum(n);
fstreamfout;
fout.open("out4.txt",ios:
:
out);
if(!
fout.fail())
{
fout<cout<}
}
5.使用VC6打开考生文件夹下的工作区文件"proj5.dsw",使用递归函数形式编写facto函数,求解:
求组合数:
。
补充编制程序,使其功能完整。
在main函数中进行了测试。
#include
#include
#include"iostream.h"
longfacto(intx)
{//********333********
longs;
if(x<=1)
s=1;
else
s=x*facto(x-1);
returns;
//********666********
}
voidmain()
{
intm=5,n=3,temp;
doublecmn;
if(m{
temp=n;
n=m;
m=temp;
}
cmn=facto(m)/(facto(n)*facto(m-n));//三次调用facto函数
fstreamfout;
fout.open("out5.txt",ios:
:
out);
if(!
fout.fail())
{
fout<<"thecombinationis"<cout<<"thecombinationis"<}
}
6.使用VC6打开考生文件夹下的工作区文件"proj6.dsw",编写递归函数,求解:
若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛?
补充编制程序,使其功能完整。
在main函数中进行了测试。
#include
#include"iostream.h"
#include
longcattle(intn);
voidmain()
{
intn=10,sum=0;
sum=cattle(n);
fstreamfout;
fout.open("out6.txt",ios:
:
out);
if(!
fout.fail())
{
fout<<"第"<cout<<"第"<}
}
longcattle(intn)
{//********333********
longs;
if(n<=3)
s=1;
else
s=cattle(n-1)+cattle(n-3);
returns;
//********666********
}
7.使用VC6打开考生文件夹下的工作区文件"proj7.dsw",用递归方法计算x的n阶勒让德多项式的值。
已有调用语句“poly(n,x);”,编写poly函数。
递归公式如下:
补充编制程序,使其功能完整。
在main函数中进行了测试。
#include
#include
doublepoly(doublex,intn);
voidmain()
{
intn=10;
doublex=1.5;
doubleresult=0;
result=poly(x,n);
fstreamfout;
fout.open("out7.txt",ios:
:
out);
if(!
fout.fail())
{
fout<cout<}
}
doublepoly(doublex,intn)
{//********333********
doubles;
if(n==0)
s=1;
elseif(n==1)
s=x;
else
s=(2*n-1)*x*poly(x,n-1)-(n-1)*poly(x,n-2)/n;
returns;
//********666********
}
8.请使用VC6打开考生文件夹下的工作区文件"proj8.dsw"。
此工程包含一个源程序文件proj8.cpp,实现读入20个整数,统计非负数个数,并计算非负数之和。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
#include
voidmain()
{
inti,a[20],s,count;
s=count=0;
//**1***************found***********
for(i=0;i<20;i++)
cin>>a[i];
for(i=0;i<20;i++)
{
if(a[i]<0)
//**2***************found***********
break;else
s+=a[i];
//**3***************found***********
count++;
}
cout<
}
9.请使用VC6打开考生文件夹下的工作区文件"proj9.dsw"。
此工程包含一个源程序文件proj9.cpp,函数index(chars[],chart[])用于检查字符串s中是否包含字符t。
若包含,则返回t在s中的开始位置(下标值),否则返回-1。
但程序中有缺失部分,请按下面的提示,把下划线标出的三处缺失部分补充完整,并删除下划线:
#include
intindex(chars[],chart[])
{
inti,j,k;
//**1***************found***********
for(i=0;s[i]!
='\0';i++)
{//**2***************found***********
for(j=i,k=0;t[k]!
='\0'&&s[j]==t[k];j++,k++);
//**3***************found***********
if(t[k]==’\0’)
returni;
}
return-1;
}
voidmain()
{chars[]="dfggkjgkjz";
cout<}
10.使用VC6打开考生文件夹下的工作区文件"proj10.dsw",编写一函数实现将一个3×3的矩阵转置,补充编制程序,使其功能完整。
在main函数中进行了测试。
#include
#include
#include
voidrever(inta[][3],intn);
voidmain()
{
fstreamfout;
fout.open("out10.txt",ios:
:
out);
if(fout.fail())
{return;
}
intarray[3][3]={1,2,3,4,5,6,7,8,9};
for(inti=0;i<3;i++)
{
for(intj=0;j<3;j++)
cout<cout<}
cout<rever(array,3);
for(i=0;i<3;i++)
{
for(intj=0;j<3;j++)
{
cout<fout<}
fout<cout<}
}
voidrever(inta[][3],intn)
{//********333********
intb[3][3];
for(inti=0;i<3;i++)
for(intj=0;j<3;j++)
b[i][j]=a[i][j];
for(i=0;i<3;i++)
for(intj=0;j<3;j++)
a[i][j]=b[j][i];
//********666********
}
11使用VC6打开考生文件夹(D:
\WEBEXAM\李龙斌)下的工作区文件"proj11.dsw",编写一函数实现两字符串的连接,要求使用字符数组保存字符串,而不使用现成饿库函数。
补充编制程序,使其功能完整。
在main函数中进行测试。
#include
#include
#include
voidStrcat(charstr1[],charstr2[]);
voidmain()
{
fstreamfout;
fout.open("out11.txt",ios:
:
out);
if(fout.fail())
{return;
}
inti=0,j=0;
chars1[200]="hello!
",s2[100]="howareyou?
";
Strcat(s1,s2);
cout<<"连接后的字符串为:
"<fout<<"连接后的字符串为:
"<}
voidStrcat(chars