一、实验内容

1、ex 2_28

(1) 用if...else判断

 #include<iostream>
using namespace std;
int main()
{
char i;
cout<<"Menu: A(dd) D(elect) S(ort) Q(uit), Select one:";
while(cin>>i)
{
if(i=='A')
cout<<"Data has been added."<<endl;
else if(i=='D')
cout<<"Data has been delected."<<endl;
else if(i=='S')
cout<<"Data has been sorted."<<endl;
else if(i=='Q') exit();
else
cout<<"Have no choice,please select another one."<<endl;
cout<<"Menu: A(dd) D(elect) S(ort) Q(uit), Select one:";
}
return ;
}

运行结果如下:

(2)用switch语句

 #include<iostream>
using namespace std;
int main()
{
char i;
cout<<"Menu: A(dd) D(elect) S(ort) Q(uit), Select one:";
while(cin>>i)
{
switch(i)
{
case 'A':cout<<"Data has been added."<<endl;break;
case 'D':cout<<"Data has been delected."<<endl;break;
case 'S':cout<<"Data has been sorted."<<endl;break;
case 'Q':exit();
default:cout<<"have no choice,please select another one."<<endl;
}
cout<<"Menu: A(dd) D(elect) S(ort) Q(uit), Select one:";
}
return ;
}

结果同上。

2、ex 2_29

(1)while循环

 #include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int i=,j,k=;
while(i<=)
{
j=;
while(j<=i)
{
if(i%j==) break;
j++;
}
if(i==j)
{
cout<<setw()<<i;
k++;
}
i++;
if(k%==) cout<<endl;
}
return ;
}

结果如下:

(2)do...while循环

 #include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int i=,j,k=;
do
{
j=;
do
{
if(i%j==) break;
j++;
}while(j<=i);
if(i==j)
{
cout<<setw()<<i;
k++;
}
i++;
if(k%==) cout<<endl;
}while(i<=);
return ;
}

(3)for循环

 #include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int i,j,k=;
for(i=;i<=;i++)
{
for(j=;j<=i;j++)
if(i%j==) break;
if(i==j)
{
cout<<setw()<<i;
k++;
}
if(k%==) cout<<endl;
}
return ;
}

3、ex 2_32

(1)while循环

 #include<iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(time());
int m=rand()%+,n; cout<<"Please write down the number you guess:";
while(cin>>n)
{
if(m<n)
cout<<"What you guess is bigger than the number."<<endl;
if(m>n)
cout<<"What you guess is smaller than the number."<<endl;
if(m==n)
{cout<<"Congratulation!"<<endl;break;}
cout<<"Please write down the number you guess:";
}
return ;
}

(2)do...while循环

 #include<iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(time());
int m=rand()%+,n; cout<<"Please write down the number you guess:";
do
{
cin>>n;
if(m<n)
cout<<"What you guess is bigger than the number."<<endl;
if(m>n)
cout<<"What you guess is smaller than the number."<<endl;
if(m==n)
{cout<<"Congratulation!"<<endl;break;}
cout<<"Please write down the number you guess:";
}while(m!=n);
return ;
}

效果如下:

 4、ex 2_34

 #include<iostream>
#include<iomanip>
using namespace std;
enum Balls{red,yellow,blue,white,black};
void Print(int a)
{
switch(a)
{
case :cout<<setw()<<"red";break;
case :cout<<setw()<<"yellow";break;
case :cout<<setw()<<"blue";break;
case :cout<<setw()<<"white";break;
case :cout<<setw()<<"black";break;
}
}
int main()
{
int n=,i,j,k;
for(i=red;i<=blue;i++)
{
for(j=i+;j<=white;j++)
{ for(k=j+;k<=black;k++)
{
Print(i);Print(j);Print(k);
cout<<endl;
n++;
}
}
}
cout<<"There are "<<n<<" ways in all."<<endl;
return ;
}

效果如下:

二、实验反思

1、注意"A"与'A'的区别,"A"表示字符串,'A'表示字符,比较的是ASCII码。

2、三种循环各具特点,用前应思考其作用,明显看出29题用for循环简洁。

3、生成随机数时,注意头文件cstdlib,ctime;设置域宽时,注意头文件iomanip。

4、使用枚举类型,返回球颜色时,我使用一个了函数将数字与颜色对应。

三、实验小评

https://www.cnblogs.com/fifi1224/p/10555549.html

https://www.cnblogs.com/yinyinzuinihai/p/10556280.html#4213197

https://www.cnblogs.com/sora5934/p/10562100.html

实验一 c++简单程序设计的更多相关文章

  1. 实验1:c++简单程序设计(1)

    //文中有格式错误请无视 //这个编辑器一言难尽 实验目的 1. 掌握c++中类c部分的编程知识: 数据类型,常量,变量,运算符,表达式,分支结构,循环结构 2. 掌握C++中数据输入和输出的基本方法 ...

  2. 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

  3. 160809209_李梦鑫_C语言程序设计实验3 循环结构程序设计

    <C语言程序设计>实验报告 学 号 160809209 姓 名 李梦鑫 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吉吉老师 实验地点 C05 ...

  4. 20145206《Java程序设计》实验二Java面向对象程序设计实验报告

    20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...

  5. 20145208 实验三 Java面向对象程序设计

    20145208 实验三 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步 ...

  6. 20162330 实验四 《Android程序设计》 实验报告

    2016-2017-2 实验报告目录: 1 2 3 4 5 20162330 实验四 <Android程序设计> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1623 ...

  7. 20162302 实验四《Android程序设计》实验报告

    实 验 报 告 课程:程序设计与数据结构 姓名:杨京典 班级:1623 学号:20162302 实验名称:Android程序设计 实验器材:装有Android Studio的联想拯救者80RQ 实验目 ...

  8. java实验四《Android程序设计》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:张士洋 学号:20165308 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:13:45 - 15:25 实验序号:08 ...

  9. 2017-2018-2 20165312 实验四《Android程序设计》实验报告

    2017-2018-2 20165312 实验四<Android程序设计>实验报告 一.安装Android Studio并进行Hello world测试和调试程序 安装Android St ...

随机推荐

  1. Effective Java 中文版

    始读于2014年8月2日10:15,整理完成于2014年8月20日23:14:42 一图一世界,<Effective Java >是Java领域大牛Joshua Bloch的获奖之作,去年 ...

  2. docker daemon文件/etc/docker/daemon.json配置

    On Linux The default location of the configuration file on Linux is /etc/docker/daemon.json. The --c ...

  3. Android Gson 操作

    JSON序列化后的数据不带类名与名命空间,所以这两个服务端跟客户端可以不对应,需要保证字段对应即可 Asp.net MVC端 using System; using System.Collection ...

  4. Thread.sleep() 和 Thread.yield() 区别

    1. Thread.yield(): api中解释: 暂停当前正在执行的线程对象,并执行其他线程. 注意:这里的其他也包含当前线程,所以会出现以下结果. public class Test exten ...

  5. An Introduction to Text Mining using Twitter Streaming

    Text mining is the application of natural language processing techniques and analytical methods to t ...

  6. [Elixir006]CSV(Comma-separated values)处理

    1. CSV文件格式是什么 CSV有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本).纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数 ...

  7. DotNetBar.MetroTilePanel 样式、加载数据、获取数据

    描述下:MetroTilePanel包含子集ItemContainer  子集下面又包含子集MetroTileItem  目前我用到的就是这三层 因为需求所以整个模块全部由代码实现 1.ItemCon ...

  8. asp.net 添加错误日志

    在开发程序中,错误日志很有必要.今天就把使用到的添加错误日志,记录下来,方便以后查看 利用的asp.net错误处理机制 Application_Error 贴出代码 protected void Ap ...

  9. 使用Emit实现给实体赋值

    Dapper.net的速度很快,最近看源码,原来他orm的实现是通过编写大量IL代码实现的. 使用DynamicMethod,自己编织一个给实体赋值的方法.这种写法效率很高,接近直接对属性赋值.比使用 ...

  10. c# in out ref关键字

    class in_out_ref { #region in 关键字 delegate void DContravariant<in A>(A argumen); static void o ...