1(1)2-28 if else
#include<iostream>
using namespace std;
int main()
{
char a;
while(true)
{
cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:";
cin>>a;
if(a=='A')
{
cout<<"数据已经增加"<<endl;
}
else if(a=='D')
{
cout<<"数据已经删除"<<endl;
}
else if(a=='S')
{
cout<<"数据已经排序"<<endl;
}
else if(a=='Q')
{
break;
}
}
return 0;
}
1(2)switch
#include<iostream>
using namespace std;
int main()
{
char a;
while(true)
{
cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:";
cin>>a;
switch(a)
{
case 'A':cout<<"数据已经增加"<<endl;break;
case 'D':cout<<"数据已经删除"<<endl;break;
case 'S':cout<<"数据已经排序"<<endl;break;
case 'Q':cout<<"退出程序"<<endl;break;
}
if(a=='Q')
break;
}
return 0;
}
相比于if else语句,switch语句明显精简的多得多,但要注意break的使用方法。
2-29 do while
#include<iostream>
using namespace std;
#include <iomanip>
using std::setw;
int main()
{
int i=1,n,t;
do
{
n=i;
t=2;
do
{
if(n%t==0)
break;
else
t++;
}while(t<=n);
if(i==t)
{
cout<<i<<setw(5);
}
i++;
}while(i<=100);
return 0;
}
2-29 for
#include<iostream>
using namespace std;
#include <iomanip>
using std::setw;
int main()
{
int i,n,t;
for(i=1;i<=100;i++)
{
n=i;
for(t=2;t<=n;t++)
{
if(n%t==0)
break;
}
if(i==t)
cout<<i<<setw(9);
}
return 0;
}
2-29 while
#include<iostream>
using namespace std;
#include <iomanip>
using std::setw;
int main()
{
int i=1,n,t;
while(i<=100)
{
n=i;
t=2;
while(t<=n)
{
if(n%t==0)
break;
else
t++;
}
if(i==t)
{
cout<<i<<setw(5);
}
i++;
}
return 0;
}
while和dowhile的差别在于,dowhile总是会先进行一次循环,这也是两者最大的差别,需要切记。
2-32 do while
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
srand(int(time(0)));
int i=rand()%100+1;int n=0;
do
{
cout<<"你随便猜一个吧:";
cin>>n;
if(n>i)
cout<<"大了"<<endl;
if(n<i)
cout<<"小了"<<endl;
if(n==i)
{
cout<<"你真棒!"<<endl;
}
}while(n!=i);
return 0;
}
2-32 while
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
srand(int(time(0)));
int i=rand()%100+1;int n=0;
while(n!=i)
{
cout<<"你随便猜一个吧:";
cin>>n;
if(n>i)
cout<<"大了"<<endl;
if(n<i)
cout<<"小了"<<endl;
if(n==i)
{
cout<<"你真棒!"<<endl;
}
}
return 0;
}
使用srand和time语句可以使随机数字实现真正的随机!
2-34
#include<iostream>
#include <iomanip>
using std::setw;
using namespace std;
enum Colour{red,yellow,blue,white,black};
int main()
{
enum Colour colour;
int a1,a2,a3,i=0,t;
for(a1=red;a1<=black;a1++)
{
for(a2=red;a2<=black;a2++)
{
if(a1!=a2)
{
for(a3=red;a3<=black;a3++)
{
if(a3!=a1&&a3!=a2)
{
cout<<a1<<a2<<a3<<endl;
i++;
}
}
}
}
}
cout<<"一共有"<<i<<"种"<<endl;
return 0;
}
虽然60种完全被列举,但从未了解过枚举类型,导致我无法输出英文字符,只能输出数字,希望可以得到老师指点。