C++:库函数 tolower和toupper的调用

用for循环输出20个0--99之间的随机数。要求每输出5个数换一行。求详解,谢谢!~~... 用for循环输出20个0--99之间的随机数。要求每输出5个数换一行。求详解,谢谢!~~ 展开
 我来答
匿名用户
2013-04-12
展开全部
分析:
先生成随机数,然后再循环输出,在输出过程中,判断已经输出的个数为5的倍数的时候,额外再输出一个换行符即可。

代码:
#include <iostream>
#include <ctime>
#include <iomanip>
using namespace std;

// 生成等待排序的数据
bool Create_Random(int Min, int Max, int Cnt, int *pOut);
// 输出
void Print_Data(const char *pInfo, int *pData, int Cnt);

int main()
{
int iCount = 0; // 记录个数
cout<<"请输入记录个数: ";
cin>>iCount; // 动态确定随机数的数量
int *pUnSortData = new int[iCount];
cout<<endl;

srand((unsigned int)time(0));
Create_Random(0, 99, iCount, pUnSortData); // 随机数的范围
Print_Data("原始数据:\n", pUnSortData, iCount);

delete []pUnSortData;
return 0;
}

bool Create_Random(int Min, int Max, int Cnt, int *pOut)
{
// 要取得[a,b)的随机整数,使用(rand() % (b-a)) + a
// 要取得[a,b]的随机整数,使用(rand() % (b-a+1))+ a
// 要取得(a,b]的随机整数,使用(rand() % (b-a))+ a + 1

if (pOut == NULL)
return false;

for (int i=0; i<Cnt; ++i)
{
pOut[i] = (rand() % (Max - Min + 1)) + Min;
}

return true;
}

void Print_Data(const char *pInfo, int *pData, int Cnt)
{
cout<<pInfo;
cout.flags(ios::right);
for (int i=0; i<Cnt; ++i)
{
cout<<setw(4)<<pData[i];

if ((i+1) % 5 == 0) // 控制换行
cout<<endl;
}
cout<<endl;
}
运行结果:
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式