C++简单程序设计-2

四、实验结论

1.

①函数声明和函数定义各自的作用,二者的区别;

函数声明

int  fun(int a, int b);

 

函数定义:

int  fun(int a,int b)
{  
    int  c;
    c=a+b;
    return c;   
}    

函数声明就像函数定义的头部,当需要调用函数时,如果函数定义用在函数调用的前面,执行到调用的部分就无法调用,会报错,这时就需要在函数调用前加个函数声明,或者先写函数定义后写函数调用。

② 什么是形参?什么是实参?函数参数和返回值在函数中起到什么作用?

形参全称为“形式参数”是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传递的参数。

实参全称为“实际参数”是在调用时传递给函数的参数,即传递给被调用函数的值。

函数参数为在函数运算或函数调用中传递的参数。

函数返回值为函数执行完以后return的结果。

③函数参数传递过程中,值传递和引用传递区别是什么?

值传递仅仅传递的是值

引用传递,传递的是内存地址,修改后会改变内存地址对应储存的值。

2.

(1)习题2-28

①用if...else语句进行判断

 

#include <iostream>
using namespace std; 
int main() 

    char x;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:";
    while(x!='Q')
    { 
      cin>>x;
      if(x=='A')
           cout<<"数据已经增加"<<endl;
       else if(x=='D')
           cout<<"数据已经删除"<<endl;
       else if(x=='S')
           cout<<"数据已经排除"<<endl;
   }
    return 0; 
}

 

 

 

②用switch语句

 

#include <iostream>
using namespace std;  
int main()  
{  
    char x;
    cout<<"Menu:A(dd) D(elete) S(ort) Q(uit),Select one:"; 
    while(x!='Q')
    {
        cin>>x;
        switch(x)
        {
            case 'A':
                cout<<"数据已经增加"<<endl;break;
            case 'B':
                cout<<"数据已经删除"<<endl;break;
            case 'S':
                cout<<"数据已经排除"<<endl;break; 
        }
    }
    return 0; 
} 

 

 

(2)习题2-29

质数为在大于1的自然数中,除了1和它本身以外不再有其他因数的数。

则质数首先应该大于1,然后用从2到这个数-1的所有数去除这个数,若都不能整除,则这个数为质数。

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

  

 

(3)习题2-32

 

#include <iostream>
#include<cstdlib> 
#include<ctime>
using namespace std; 
int main()
{
    srand(time(0));
    int a=rand()%100;
    int s;
    int count=0;
    while(1)
    {
        cout<<"请输入你要猜的数"; 
        cin>>s;
        if(s>a)
        {
            cout<<"偏大了"<<endl;
            count++;
         }
        else if(s<a)
        {
            cout<<"偏小了"<<endl;
            count++;
        }
        else
        {
            count++;
            cout<<"猜对了!¡"<<endl;
            break; 
        }
    }
    return 0;
}

 

(4)习题 2-34

#include <iostream>
#include<iomanip>
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++;
                        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;
                            }
                        }
                        cout<<endl;
                    }
                }
            }
        }
    }
    return 0;
}

 

 

五、实验总结与体会

c++中,想要输出控制字符长度,需要用到stew()函数,同时添加#include<iomanip>头文件。

第四题中,color(i)是强制类型转换,使pri的值为i。

想要生成一个随机数,需要用到srand和rand函数,同时添加#include<cstdlib>和 #include<ctime>头文件

例如:

#include <iostream>

#include<cstdlib>

#include<ctime>

int main()

{

  srand(time(0));

  int a=rand()%100;

  return 0;

}

其中a即为一个1~100的随机整数。

 

posted @ 2018-03-22 09:14  MINt超  阅读(266)  评论(2编辑  收藏  举报