实验2(第二章课后习题)

2-28

include

using namespace std;
int main()
{
char alphabet;
cout <<"Menu:A(dd)D(elete)S(ort)Q(uit),select one"<<endl;
cin >>alphabet;
if(alphabet'A'||alphabet'D'||alphabet=='S')
switch(alphabet)
{
case 'A': {cout <<"数据已经增加"<<endl;break;}
case 'D': {cout <<"数据已经删除"<<endl;break;}
case 'S': {cout <<"数据已经排序"<<endl;break;}
}
else
cout <<"程序结束"<<endl;
return 0;
}
Menu:A(dd)D(elete)S(ort)Q(uit),select one
A
数据已经增加
Program ended with exit code: 0
2-29
思路:用一个函数来判断是否是质数,在由此来决定输出与否。

include

using namespace std;
int primenumber(int);
int main()
{
for(int i=2;i<=100;i++)
//i只在循环内有效
{
if(primenumber(i))
cout <<i<<" ";//数与数之间的空格
}
return 0;
}
int primenumber(int m)
{
int k;
for(k=2;k<=m;k++)
if(m%k==0&&k!=1&&k!=m)
return 0;
return 1;
}
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 Program ended with exit code: 0
2-32

include

using namespace std;
int m=100;//全局
void compare(int,int);
int main ()
{
int n = 0;
do
{
cout <<"请输入一个数字"<<endl;
cin >>n;
compare(m,n);
}while (m!=n);
if(m==n)
cout <<"Bingo"<<endl;
return 0;
}
void compare(int p,int q)
{
if(p>q)
cout <<"大于所猜的数"<<endl;
if(p<q)
cout <<"小于所猜的数"<<endl;
}
请输入一个数字
80
大于所猜的数
请输入一个数字
180
小于所猜的数
请输入一个数字
100
Bingo
Program ended with exit code: 0
2-34
思路:用函数的递归来求组合数。

include

using namespace std;
int take(int ,int );
int main()
{
int k;
k=take(5,3);
cout<<"球的取法为"<<k;
return 0;
}
int take(int n,int k)
{
int m;
if(k>n)
return 0;
else if(nk||k0)
return 1;
else m=take(n-1,k)+take(n-1,k-1);
return m;
}
球的取法为10Program ended with exit code: 0
总结:我发现我之前求组合数不会,现在我知道可以用递归函数来求组合数。

posted @ 2018-03-23 23:22  枫眠  阅读(108)  评论(0编辑  收藏  举报