C++ 常用练习小例子

这篇具有很好参考价值的文章主要介绍了C++ 常用练习小例子。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

C++ 常用练习小例子

1、判断一个数是奇数还是偶数

#include <iostream>
using namespace std;
 
int main()
{
    int n;
 
    cout << "输入一个整数: ";
    cin >> n;
 
    if ( n % 2 == 0)
        cout << n << " 为偶数。";
    else
        cout << n << " 为奇数。";
 
    return 0;
}

2、判断输入年份是否为闰年

不是整百的年份只要被4整除的就是闰年,整百的年份必须得被400整除才是闰年。

#include <iostream>
using namespace std;
 
int main()
{
    int year;
 
    cout << "输入年份: ";
    cin >> year;
 
    if (year % 4 == 0)
    {
        if (year % 100 == 0)
        {
            // // 这里如果被 400 整除是闰年
            if (year % 400 == 0)
                cout << year << " 是闰年";
            else
                cout << year << " 不是闰年";
        }
        else
            cout << year << " 是闰年";
    }
    else
        cout << year << " 不是闰年";
 
    return 0;
}

3、九九乘法表

#include<iostream>
using namespace std;

int main()
{
    for (int i = 1; i < 10; i++)
    {
        for (int j = 1; j <= i; j++)
        {
            cout << j << "x" << i << "=" << j*i << "\t" ;
        }
        cout << endl;
    }

    return 0;    
}

4、求两个整数的最大公约数和最小公倍数

最大公约数:也称最大公因数、最大公因子,指两个或多个整数共有约数中最大的一个。

最小公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数。

辗转相除法求最大公约数算法

两整数a和b

①a/b得余数r(0<=r)

②若 r= 0,算法结束;b 即为答案。

③互换:置 a←b,b←r,并返回第①步。

求出最大公因数后,最小公倍数求法就比较简单了,用a*b/gcd(a,b)即可。

辗转相除法求最大公约数源码如下:

#include <iostream>
using namespace std;
// 求最大公约数
int gcd(int a, int b)
{
	int r;
	// 辗转相除法 直到a%b==0
	// 返回b,b就是最大公因数
	while (a % b != 0)
	{
		r = a % b;
		a = b;
		b = r;
	}
	return b;
}
int main()
{
	cout << "请输入两个整数:" ;
	int a, b;
	cin >> a >> b;
	cout << "最大公约数:" << gcd(a, b) << endl;
	cout << "最小公倍数数:" << a*b/gcd(a, b) << endl;
	return 0;
}

辗转相除法求最大公约数算法,使用递归写法:

核心:

若 r 是 a ÷ b 的余数,且r不为0, 则gcd(a,b) = gcd(b,r)

辗转相除法求最大公约数使用递归写法源码如下:

#include <iostream>
using namespace std;
// 辗转相除法求求最大公约数递归写法 
int gcd(int a, int b)
{
	if (a % b == 0)
	{
		return b;
	}
	else
	{
		return gcd(b, a % b);
	}
}
int main()
{
	cout << "请输入两个整数:" ;
	int a, b;
	cin >> a >> b;
	cout << "最大公约数:" << gcd(a, b) << endl;
	cout << "最小公倍数数:" << a*b/gcd(a, b) << endl;
	return 0;
}

5、将一个正整数分解质因数

算法:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。

(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

源码如下:文章来源地址https://www.toymoban.com/news/detail-433995.html

#include<iostream>
using namespace std;
int main()
{
	int mun;
	cout << "请输入一个正整数" << endl;
	cin >> mun;
	cout << mun << "=";
	for (int i = 2; i <= mun; i++)
	{
		while (i != mun)
		{
			if (mun % i == 0)
			{
				cout << i << "*";
				mun = mun / i;
			}
			else
			{
				break;
			}
		}
	}
	cout << mun;
	return 0;
}

6、斐波那契数列

斐波那契(fibonacci)数列下一个数字是前两个数字的总和,例如:0,1,1,2,3,5,8,13,21等。斐波那契数列的前两个数字是:0和1。

不使用递归实现斐波那契数列,源码如下:

#include <iostream>  
using namespace std;  
int main() {  
    int n1=0,n2=1,n3,i,number;    
    cout<<"输入元素的项数(>=2): ";    
    cin>>number;    
    cout<<n1<<" "<<n2<<" "; //输出第1项0和第2项 1 
    //循环从2开始    
    for(i=2;i<number;++i) 
    {    
        n3=n1+n2;    
        cout<<n3<<" ";    
        n1=n2;    
        n2=n3;    
    }    
    return 0;  
}

用递归实现斐波那契数列,源码如下:

#include<iostream>    
using namespace std;      
void printFibonacci(int n){    
    static int n1=0, n2=1, n3;    
    if(n>0){    
         n3 = n1 + n2;    
         n1 = n2;    
         n2 = n3;    
         cout<<n3<<" ";    
         printFibonacci(n-1);    
    }    
}    
int main(){    
    int n;    
    cout<<"输入元素的项数(>=2): ";    
    cin>>n;    
    cout<<"0 "<<"1 "; //输出第1项0和第2项 1  
    printFibonacci(n-2); //n-2,因为已经打印了2个数字  
    return 0;  
}

7、用1、2、3、4个数字能组成多少个互异的三位数

用1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?并具体列出来。

源码如下:

#include <iostream>
using namespace std;
int main() {
	int i,j,k,a=0;
	for (i=1;i<=4;i++) {
		for (j=1;j<=4;j++) {
			for (k=1;k<=4;k++) {
				if(i!=j&&i!=k&&j!=k) {
					a++;
					cout<<i*100+j*10+k<<" ";
				}
			}
		}
	}
	cout<<endl<<a<<"个"<<endl;
}

到了这里,关于C++ 常用练习小例子的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++ //练习 2.33 利用本节定义的变量,判断下列语句的运行结果。

    练习 2.33 利用本节定义的变量,判断下列语句的运行结果。 环境:Linux Ubuntu(云服务器) 工具:vim   解释 a合法 b合法 c合法 d非法 e非法 g非法

    2024年01月23日
    浏览(52)
  • 判断一个数是否是素数(Java版)

    目录 素数的定义 求解素数 素数判定法1: 遍历从2到n-1的所有数字,判断是否有可以被n整除的数,如果没有,则为素数。 优化法2: 判定的范围改为[2 -,n/2]。当 in/2 时,则判定为素数。 优化法3: 在Java中判定素数的范围也可以到sqrt(n),(对n开平方)。对应的函数为:Math.sqrt(n

    2024年02月16日
    浏览(71)
  • 【C语言】判断一个数是否为素数

    目录 判断一个数是否为素数 方法1  方法2    2.1 2.2 进阶:输出区间长度内的素数 “ 素数和质数没有区别 ,素数又叫质数,质数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。比1大但不是素数的数称为合数,1和0既非素数也非合数。” 所谓素数

    2024年02月04日
    浏览(76)
  • 判断一个数是否为质数4种方法

    首先理解什么是质数: 素数就是质素,只能被 1 和 它本身整除 的数字。 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数 最小的质数为2; 判断一个数是否为素数,要在2~i-1的数字去试除。如果i被整除,就说明i不是素数。如果2~i-1之间的数字都不能

    2024年02月05日
    浏览(62)
  • python_输入任意一个数,判断是否是素数

    看了一下其他答案要不是格式不对run不出来,要不就是输入项验证不全,希望答案对大家有用。 

    2023年04月09日
    浏览(52)
  • Java 判断一个数是否是回文数(parlindrome)

    回文数 :从左往右读和从右往左读完全相同的数,如121、12321是回文数,12345不是。 思路 :分别获取到原数字的每一位,反过来组成一个新的数,和原数字比较,若相同则是回文数。 代码 : 关键 : %10获取最后一位,之后将数字/10来去掉这一位,如123%10,得到最后一位3,之

    2024年04月12日
    浏览(55)
  • java判断字符串是否包含英文,以及英文个数

    在Java中,可以使用正则表达式或字符遍历的方式来判断字符串是否包含英文字符,并统计英文字符的个数。 使用正则表达式判断字符串是否包含英文字符: 这里的正则表达式 “.[a-zA-Z]+.” 表示匹配包含至少一个英文字符的字符串。containsEnglish 的值为 true 表示字符串包含英

    2024年02月13日
    浏览(88)
  • C语言--输入一个数判断是否为素数(多种方法)

     需要解决这个问题,首先我们要明白 --------什么是素数? (质数)素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。 举个例子:4  可以 由2*2=4  和1*4 得到,不符合素数的条件,所以不是素数。                   5  只能由1*5 得到,符合素数的

    2024年01月25日
    浏览(54)
  • 超级详细用C语言判断一个数是否是素数

    先上代码: #include stdio.h int main() {         int n,i;     printf(\\\"请输入一个数: \\\");     scanf(\\\"%d\\\",n);     for(i=2;in;i++){         if(n%i==0){             break;         }     }     if(n==i){         printf(\\\"是素数\\\");     }     else         printf(\\\"不是素数\\\"); } 理解: 素数

    2024年02月08日
    浏览(93)
  • Python 练习实例希望这些例子可以帮助您

    以下是几个 Python 练习实例: 1. 打印 \\\"Hello, World!\\\"  ```python print(\\\"Hello, World!\\\") ``` 2. 计算两个数的和 ```python num1 = int(input(\\\"输入第一个数: \\\")) num2 = int(input(\\\"输入第二个数: \\\")) sum = num1 + num2 print(\\\"两个数的和为: \\\", sum) ``` 3. 判断一个数是奇数还是偶数 ```python num = int(input(\\\"输入一个整

    2024年02月02日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包