C++ 面向对象- -一些简单练习(九)

目录

1、求 sin 值

2、求素数(100~200)

3、判断素数

4、判断素数

5、阶乘

6、菱形

7、直角三角形

8、四边形

9、正三角形

10、排除被3整除的数(100~200)

11、问题求解

12、问题求解

13、字符串的复制(有点新意)

14、输入字符n位,输出其后n位

15、常函数指针


 

1、求 sin 值

#include 
#include 
using namespace std;
int main()
{
	double s ,t , x ;
	int n;
	cout << "please input x :" ;
	cin >> x ;
	t = x ;
	n = 1 ;
	s = x ;
	do
	{
		n = n +2 ;
		t = t*(-x*x) / ((float)(n)-1) /(float)(n) ;
		s = s +t ;
	 } while (fabs(t) >= 1e-7) ;   // " ; " 不能忘!!! 
	cout << "sin" << x << "=" << s << endl ; 
	return 0;
}

 

2、求素数(100~200)

#include 
#include 
#include 		//函数头文件 : setw / setprecision / dec / hex / oct / setfill 
using namespace std;
int main()
{
	int i , j , k , count ;
	for( i=100 ; i<=200 ; i++)
		{
			k = (int)sqrt(i);
			for( j = 2 ; j <= k ; j++)
			{
				if( i%j == 0)
					break ;
			}
			if( j>k )
			{
				cout << setw(5) <

 

3、判断素数

#include 
using namespace std;
int main()
{				//除了1和它本身外,不能被其他自然数(质数)整除,
				//换句话说就是该数除了1和它本身以外不再有其他的因数; 
	int n,i;
    cout << "n=?"<> n;
    for (i=2;i<=n-1;i++)
        if(n%i==0)
			break;
	if(i

 

4、判断素数

#include 
using namespace std ;
int main()
{						//所谓素数也就是我们所说的质数,就是指只能被1和它本身整除的数(1除外)
						//素数又称质数
						//100以内的质数有2,3,5,7,11,13,17,19,23,29,31,37,41,43,
						//    47,53,59,61,67,71,73,79,83,89,97,在100内共有25个质数。
	int a , i ;
	cout << "请输入一个大于3的数 :";
	cin >> a;
	for (i=2 ; i < a ; i++)
		if( a%i == 0)
		{ 
			cout << "该数不是素数!" <

 

5、阶乘

#include 
using namespace std ;
int main()
{
	int n ,i=1 ;
	long int s;
	cout << "输入需要求的阶乘项数 :" ;
	cin >> n ;
	if( n>0 ){
		s = 1 ;
		while (i <= n){
			s *= i ;
			i++ ;
		}
		cout << n << "的阶乘为 :" << s <

 

6、菱形

#include 
using namespace std;
int main()
{
	int n,i,j,n_u,n_l;
	cout << "Input the number of rows:";
	cin >> n;
	n_u=n/2+1;
	n_l=n/2;
	for(i=1; i<=n_u; i++)
	{
		for(j=1; j<=n_u-i; j++)
			cout << ' ';
		for(j=1; j<=2*i-1; j++)
			cout << '*';
		cout << endl;
	}
	for(i=n_l; i>=1; i--)
	{
		for(j=1; j<=n_l-i+1; j++)
			cout << ' ';
		for(j=1; j<=2*i-1; j++)
			cout << '*';
		cout << endl;
	}
}

 

7、直角三角形

#include 
using namespace std;
int main()
{
	int i , j ;
	for( i=1 ; i<=5 ; i++)
	{
		for( j=1 ; j<=2 * (5-i) ; j++)
				putchar(' ') ;
			for( j=1 ; j<=i ; j++)
			{
				putchar ('*') ;
				putchar (' ') ;
			}
		cout <

 

8、四边形

#include 
using namespace std;
int main()
{
	int i , j ,m , n ;
	cin >> n >> m ;
	cout << "作一个" << m << "行" << n << "列的四边形图形:" <

 

9、正三角形

#include 
using namespace std;
int main()
{
	int i ,j , n ;
	cin >> n;
	cout << "该图形行数: "<< n <

 

10、排除被3整除的数(100~200)

#include 
using namespace std;
int main()
{
	int i ;
	cout << "输出100~200之间的不能被3整除的数 :" <

 

11、问题求解

#include 
using namespace std;			//总人数不足1000人 
int main()						//3人一列余1人 	5人一列余2人 	7人一列余4人 	13人一列余6人 
{								//总士兵每7人一队,最后一名为队长,求队长编号 
	int i ;
	for(i=0 ; i<1000 ; i++)
	{
		if( i%3 ==1 && i%5 == 2 && i%7 == 4 && i%13 ==6 )
		{
			cout << "所求人数为: " << i << endl;
			break ;	
		}
	}
	cout << "队长的编号依次是 :" <

 

12、问题求解

#include 
using namespace std ;
int main()
{							//有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。
							//问笼中各有多少只鸡和兔?

	int a , b  ;
	for(a=0 ; a<50  ; a++)
		for(b=0 ; b<50 ;  b++)
		if(a+b == 35 && 2*a + 4*b == 94)
			cout << "鸡的数量是 :" << a <<'\t' << "兔的数量是 :" << b <

 

13、字符串的复制(有点新意)

#include 
using namespace std;
int main()
{
	char a[ ]="I am a student.",b[20];   	
	int i;
	for(i=0; *(a+i) != '\0'; i++)
        *(b+i) = *(a+i); 
	*(b+i) = '\0'; 
	cout << "string a is: " << a << endl; 
	cout << "string b is: "; 
	for(i=0; b[i] != '\0'; i++)
        cout << b[i];
	cout << endl;	
	return 0;
}

 

14、输入字符n位,输出其后n位

#include 
using namespace std;
int main()
{
	char c;
	//c=getchar();
	while((c=getchar())!='\n')
	{
		if((c>='a' && c<='z') || (c>='A' && c<='Z'))
		{
			if(c>='W' && c<='Z' || c>='w' && c<='z')
				c=c-22;
			else
				c=c+4;
		}
		cout << c;
	//	c=getchar();
	}
	cout << endl;
	return 0;
	
}

 

15、常函数指针

#include 
using namespace std;
int main()
{
	int max(int, int); 
	int (*p)(int, int);  
	int a, b, c; 
	p = max;
	cout << "please enter a and b: ";
	cin >> a >> b;
	c=(*p)(a, b);
	cout << a << '\t' << b << '\t' << "max= " << c << endl;
	return 0;
}

int max(int x,int y) 
{
	int z;
    if(x>y)  
		z=x;
    else
		z=y;
    return(z);
}

 

你可能感兴趣的:(C++面向对象)