博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++第二次作业
阅读量:6673 次
发布时间:2019-06-25

本文共 2647 字,大约阅读时间需要 8 分钟。

2-28

第一问:

#include <iostream>

using namespace std;
int main()
{
char a;
cout<<"Menu:A(dd)D(elect) S(ort).Select one:"<<endl;
cin>>a;
while (a!='Q')
{
if (a=='A')
{
cout<<"数据已经增加"<<endl;
}
if (a=='D')
{
cout<<"数据已经删除"<<endl;
}
if (a=='S')
{
cout<<"数据已经排列"<<endl;
}}
cin>>a;
}
return 0;
}

运行结果截图

第二问:

#include <iostream>

using namespace std;
int main()
{
char a;
cout<<"Menu:A(dd)D(elect) S(ort).Select one:"<<endl;
cin>>a;
while (a!='Q')
{
switch(a)
{
case'A':
{
cout<<"数据已经增加"<<endl;break;
}
case'D':
{
cout<<"数据已经删除"<<endl;break;
}
case'S':
{
cout<<"数据已经排序"<<endl;break;
}
cin>>a;
}
return 0;
}

 运行结果截图

 

 

 

2-29

使用while

#include <iostream>

using namespace std;
int main()
{
int i,j,m,n;
i=2;
while (i<=100)
{
m=1,n=i/2;j=2;
while (j<=n)
{
if(i%j==0)
{m=0;break;}
j++;
}
if(m)
cout<<i<<" ";
i++;
}
return 0;
}

运行结果截图

使用do.....while

#include 
using namespace std;int main(){int a,b,c,d;a=2;do{c=1;d=a/2;b=2;while (b<=d){if(a%b==0){c=0;break;}b++;}if(c)cout<
<<" ";a++;}while(a<=100);return 0;}

  

运行结果截图

使用for循环语句

#include <iostream>

using namespace std;
void main()
{
int a,b,c,d;
for(a=2;a<=100;a++)
{
c=1;d=a/2;
for(b=2;b<=d;b++)
{
if(a%b==0)
{
c=0;
break;
}
}
if (c)
cout<<i<<" ";
}
}

运行结果截图

2-32

用while 语句

#include <iostream>

using namespace std;
int main()
{
int a=10;
int n;
while (1)
{
cout<<"请输入一个数字:"<<endl;
cin>>n;
if (a==n)
{cout<<"答对了"<<endl;
break;
}
else if(a<n)
{
cout<<"数据偏大。"<<endl;
}
else if(a>n)
{
cout<<"数据偏小。"<<endl;
}
}
return 0;
}

运行结果截图

使用do...while

#include <iostream>

using namespace std;
int main()
{
int a=10;
int n;
cout<<"请输入一个数字:"<<endl;
cin>>n;
do
{
if(n!=a)
{
if(n<a)
{
cout<<"偏小"<<endl;
}
else
{
cout<<"偏大"<<endl;
}
}
else
{
cout<<"答对了"<<endl;break;
}
cin>>n;
}
while(1);
return 0;
}

运行结果截图

2-34

#include <iostream>

using namespace std;

int main()
{
enum color{red,yellow,blue,white,black};//申明枚举类型
color pri;//定义变量
int i,j,k,n=0,loop;
for(i=red;i<=black;i++)
{
for(j=red;j<=black;j++)
{
if(i!=j)
{
for(k=red;k<=black;k++)//前两个球颜色不同才看第三个
{
if(k!=i&&k!=j)//三球颜色都不同
{
n=n+1;//种类增加
cout<<setw(3)<<n;
for(loop=1;loop<=3;loop++)
{
switch(loop)
{
case 1:pri=color(i);break;
case 2:pri=color(j);break;
case 3:pri=color(k);break;
default:break;
}
switch(pri)
{
case red:cout<<setw(8)<<"red";break;
case yellow:cout<<setw(8)<<"yellow";break;
case blue:cout<<setw(8)<<"blue";break;
case white:cout<<setw(8)<<"white";break;
case black:cout<<setw(8)<<"black";break;
default :break;
}
}
cout<<endl;
}
}
}
}
}
cout<<"total:"<<n<<endl;
return 0;
}

运行结果截图

感悟:

每一种题目不单单只有一种解法,像这几题都可以运用whie或do..while语句,结束一个循环应该注意break所摆放的位置,否则容易造成死循环。研究数据较小时可以使用枚举法,但是数据较大时则需要分类处理。

 

转载于:https://www.cnblogs.com/yyq828/p/8646874.html

你可能感兴趣的文章
将Jetty做为内嵌的服务器使用
查看>>
1.1 DHCP服务的介绍和安装
查看>>
计算机安全篇1
查看>>
drawable 如何单个设置边界
查看>>
Nachos File System
查看>>
tomcat远程调试、普通java程序远程调试
查看>>
python day11
查看>>
office 2013-word选项配置参数
查看>>
Hadoop调试源代码
查看>>
Hanoi塔算法c语言实现
查看>>
ecshop新会员注册邮件提醒管理员
查看>>
mysqldump实现mysql备份小脚本
查看>>
JQuery--实用技巧总结
查看>>
语言,编程语言
查看>>
Redis事务处理
查看>>
C# []、List、Array、ArrayList 区别及应用
查看>>
继续说一下js对数组的处理---删除某个指定元素的方法
查看>>
data truncated for column at row 1原因
查看>>
java 关键字
查看>>
linux io过程自顶向下分析
查看>>