C++实验一

实验总结

1.实现程序的重复运行可以用while循环实现

2.程序中有多个判断语句时switch语句比if else更简洁。

3.不同的函数在不同的语言中所属的函数库不同,例如sqrt函数。

实验过程

2-28实现一个简单的菜单程序,运行时显示“Menu:”A(dd) D(elete) S(ort) Q(uit),Select one:“提示用户输入,A表示增加,D表示删除,S表示排序,Q表示退出。输入A、D、S时分别提示”数据已经增加、删除、排序。“输入Q时程序结束。

if else版

#include<iostream>
using namespace std;
int main()
{
cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:";
char a;
cin>>a;
while(a!='Q') 
{
if(a=='A')
  {
      cout<<"Data has added"<<endl;
      cin>>a;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"<<a<<endl;
  }
else if(a=='D')
  {
      cout<<"Data has deleted"<<endl;
      cin>>a;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"<<a<<endl;
  }
else if(a=='S')
  {
      cout<<"Data has Sorted"<<endl;
      cin>>a;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"<<a<<endl;
  }
else
  {
   cout<<"no such chioce,please select again"<<endl;
   cin>>a;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"<<a<<endl;
  }
}
  return 0;
  } 

运行截图

switch版

 

#include<iostream>
using namespace std;
int main()
{
cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:";
char a;
cin>>a;
while(a!='Q')
{
switch(a)
{
case 'A':
  {
      cout<<"Data has added"<<endl;
  }break;
case 'D':
  {
      cout<<"Data has deleted"<<endl;
  }break;
case 'S':
  {
      cout<<"Data has Sorted"<<endl;
  }break;
default:
  {
   cout<<"no such chioce,please select again"<<endl;
  }break;
}
cin>>a;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"<<a<<endl;
}
  return 0;
  } 

 

运行截图

2-32在程序中定义一个整型变量,赋予1-100的值。要求用户猜这个数,比较两个数的大小,把结果提示给用户,直到猜对为止。

while版

 

#include<iostream>
using namespace std;
int main()
{
    int number=79;
    int guessnumber;
    cout<<"your guess number is:";
    cin>>guessnumber;
    while(guessnumber!=number)
    {
        if(guessnumber>number)
       {
        cout<<"bigger than the number"<<endl;
        cin>>guessnumber;
        cout<<"your guess number is:"<<guessnumber<<endl;
       }
        else if(guessnumber<number)
       {
        cout<<"lower than the number"<<endl;
        cin>>guessnumber;
            cout<<"your guess number is:"<<guessnumber<<endl;
       }
    }
    cout<<"congratulations.you guess it";
return 0;
    
}

 

运行截图

 

do while版

 

#include<iostream>
using namespace std;
int main()
{
    int number=79;
    int guessnumber;
    cout<<"your guess number is:";
    cin>>guessnumber;
   do
    {
        if(guessnumber>number)
       {
        cout<<"bigger than the number"<<endl;
        cin>>guessnumber;
        cout<<"your guess number is:"<<guessnumber<<endl;
       }
        else if(guessnumber<number)
       {
        cout<<"lower than the number"<<endl;
        cin>>guessnumber;
        cout<<"your guess number is:"<<guessnumber<<endl;
       }
    }while(guessnumber!=number);
    cout<<"congratulations.you guess it";
return 0;
    
}

 

运行截图

 

2-34口袋中有红、黄、白、蓝、黑五种颜色的球若干个。每次从口袋中取出三个不同颜色的球,问有多少种取法

#include<iostream>
using namespace std;
int main()
{
    int a,b;
    cin>>a>>b;
    int m=1,n=1;
    for(int j=1;j<=b;j++)
    {
    m=m*a;
    a--;    
    }
    for(int i=1;i<=b;i++)
    {
    n=n*i;    
    }
    cout<<m/n<<endl;
    return 0;
} 

运行截图

2-29 用穷举法找出1-100间的质数并显示出来。

while版

 

#include<iostream>
using namespace std;
int main()
{
int i=1;
while(i<=100)
{
    int j;
    for(j=2;j<=i;j++)
    {
        if(i%j==0)
        break;
    }
    if(i==j)
    cout<<i<<endl;
i++;
}

return 0;    
}

 

运行截图

do while 版

 

#include<iostream>
using namespace std;
int main()
{
int i=1;
do 
{
    int j;
    for(j=2;j<=i;j++)
    {
        if(i%j==0)
        break;
    }
    if(i==j)
    cout<<i<<endl;
i++;
} while(i<=100) ;
return 0;    
}

 

For 版

 

#include<iostream>
using namespace std;
int main()
{
int i;
for(i=1;i<=100;i++)
{
    int j;
    for(j=2;j<=i;j++)
    {
        if(i%j==0)
        break;
    }
    if(i==j)
    cout<<i<<endl;
}

return 0;    
}

 

posted @ 2019-03-13 20:11  敲代码了吗  阅读(306)  评论(4编辑  收藏  举报