程序小白天天打卡(关于编程的一些经验)

本文介绍了一种使用C++实现阶乘计算的方法,并通过包含climits头文件来检查数值溢出,确保程序的健壮性和准确性。此外,文章还分享了一些编程时避免错误的好习惯。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2018/2/10
C++
今天听了一节纯理论课啊,主要是说明怎样实现代码的修改和更正,
1主要有几点
1.程序中的错误主要有编译时错误(compile_time error)和运行时错误(run_time error)
2.在程序中要养成良好的编程习惯
3.注意编写注释,但是不要写无意义的注释
4.编程时发现错误可以把疑问处注释
5.可以把程序成块处理,分区检查
6.不要轻易修改源码,三思后行
7.检查是否把所有头文件include起来
8.如果以上错误都没有发现,换一个编译环境和操作系统吧
2.学到的一点点知识
#include<climits>头文件可以检查输入的数据是否溢出,可以用这个方法来为一些程序增加检验数据是否溢出的功能
#include<iostream>
#include<climits>
#include<stdlib.h>
using namespace std;
class Factorial
{
public:
Factorial(unsigned short num);//默认构造
unsigned long getFactorial();//获得数的方法
bool inRange();              //判断语句
private:
unsigned short num;
};
/*默认构造*/
Factorial::Factorial(unsigned short num)
{
this->num = num;
}
unsigned long Factorial::getFactorial()//声明作用域
{
unsigned long sum = 1;
for (int i = 1; i <= num; i++)
{
sum *= i;
}
return sum;
}
bool Factorial::inRange()
{
unsigned long max = ULONG_MAX;//右值为long的最大值
//	cout << ULONG_MAX << endl;
for (int i = num; i >= 1; i--)
{
max /= i;
}
if (max < 1)
{
return false;
}
else
return true;
}
int main()
{
unsigned short num = 0;
cout << "请输入一个整数";
cin >> num;
Factorial fac(num);
if (fac.inRange())
{
cout << num << "的阶乘值为" << fac.getFactorial() << "\n\n";
}
else
{
cout << "您所输入的值太大\n\n";
}
system("pause");
}
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值