C++常用的数据处理

本文介绍了C++中如何实现小数的四舍五入,以及如何生成指定范围内的随机数和定制随机字符串。通过示例代码展示了如何使用`myround`函数进行四舍五入,以及如何利用`getRangeNumber`获取随机整数。同时,提供了两种方式创建包含数字、大写字母、小写字母和特殊字符的随机字符串。这些功能对于编程实践非常实用。
摘要由CSDN通过智能技术生成

小数的4舍5入

#inlcude <stdio.h>
#include <stdlib.h>
#include <math.h>

double myround(double x)
{
	double y;
	if(x-floor(x)<0.5)
	{
		printf("%f floor is %f\n",x,floor(x));
		y=floor(x);
	}
	else
	{
		printf("%f ceil is %f\n",x,ceil(x));
		y=ceil(x);
	}
	return y;
}

随机数

#include <time>
#include <cstdlib>
int main()
{
	time_t tm = time(NULL);//得到系统时间
	srand((unsigned int)tm);//随机种子只需要设置一次即可
}

获取随机数,指定范围

int getRangeNumber(int a)
{
	int num=rand()%a+1
	return num;
}

获取指定的随机随机字符串

void getRandString(char* pRandBuf,int len)
{
	srand(time(0));//随机数种子放到外面就行
	int flag;
	for(int i=0;i<len-1;i++)
	{
		flag=rand()%4;
		char buf[]="`~!#$%^&*()-=_+";
		switch(flag)
		{
			case 0:
				pRandBuf[i]=rand()%10+'0';//数字
				break;
			case 1:
				pRandBuf[i]=rand()%26+'A';//大写字母
				break;
			case 2:
				pRandBuf[i]=rand()%26+'a';//小写字母
				break;
			case 3:
				pRandBuf[i]=buf[rand()%strlen(buf)];//自定义的特殊字符
				break;
			default:
				break;
		}
	}
}

C++有字符串类型,我们可以不用使用字符数组

重载随机字符串函数

void getRandString(std::string& RandBuf, int len)
{
	srand(time(0));//随机数种子放到外面就行
	int flag;
	for (int i = 0; i < len ; i++)
	{
		flag = rand() % 4;
		char buf[] = "`~!#$%^&*()-=_+";
		switch (flag)
		{
		case 0:
			RandBuf.push_back(rand() % 10 + '0');//数字
			break;
		case 1:
			RandBuf.push_back(rand() % 26 + 'A');//大写字母
			break;
		case 2:
			RandBuf.push_back(rand() % 26 + 'a');//小写字母
			break;
		case 3:
			RandBuf.push_back(buf[rand() % strlen(buf)]);//自定义的特殊字符
			break;
		default:
			break;
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值