请教下, 假设我每个小时收到随机个数的数,如何取出没小时最后那个数 比如一天8小时,我每个小时都收到很多数,比如9点内收到10次数,21,30,40...39。10点又收到20个数,51,40,66...22.没个小时的个数是随机的,我想把每个小时最后那个数取出来,比如9点就是39.10点就是22,依次类推,请问该怎么办啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 方法太多了最方便的就是使用容器用Vector,建立8个容器vector<int> vec,每小时分配一个,每次都把数字push_back进去vec.end()就能获取最后一个数 用个结构体就好, 每次把新接收到的数据放置进去,覆盖之前的struct _LastData{ bool bValid; //有效标志 int iData; //数据}LastData[24]; //0~23小时最后数据//放入接收到的数据iVal 和接收到的时刻小时iHourBOOL PutVal(int iVal, int iHour){ if(iHour >=0 && iHour < 24)//0~24小时内 { LastData[iHour].iData = iVal; //存入数据 LastData[iHour].bValid = true; //置有效标志 return TRUE; } return FALSE;} tiger9991 你好 你说的方法有没简单的例子啊! #include <windows.h>#include <iostream>#include <vector>using namespace std;int Func(int nInput){ int i = 0; SYSTEMTIME st; int nHourArray[] = {8, 9, 10, 11, 12, 13, 14, 15}; int nArrayLength = sizeof(nHourArray) / sizeof(int); vector< vector<int> > vecHour(nArrayLength); GetSystemTime(&st); for (i = 0; i < nArrayLength; i++) { if (st.wHour == nHourArray[i]) { vecHour[i].push_back(nInput); } } for (i = 0; i < nArrayLength; i++) { cout << "Hour=" << nHourArray[i] << "The last number=" << vecHour[i].back(); } return 0;} 求救!下拉菜单溢出框体! 明天填报高考志愿,不知道我这样选对没.. 多语言切换问题 如何用OnNewWindow2()实现新打开的网页在同一网页中显示?80分求助,急急急 请问控制台程序能够用上定时器吗 实在不解 大大帮我 如何得到ListCtrl的列的个数 获取远程主机信息 我的问题怎么这么难解决,难道是分少了,我现在给100,不够再给…… 我的英语太差,有人劝我放弃vc++改学c#,因为c#有中文版。这样的选择有理吗? listcontrol如何显示每行的索引? 一个奇怪的多线程程序性能问题。
最方便的就是使用容器
用Vector,建立8个容器vector<int> vec,每小时分配一个,每次都把数字push_back进去vec.end()就能获取最后一个数
{
bool bValid; //有效标志
int iData; //数据
}LastData[24]; //0~23小时最后数据//放入接收到的数据iVal 和接收到的时刻小时iHour
BOOL PutVal(int iVal, int iHour)
{
if(iHour >=0 && iHour < 24)//0~24小时内
{
LastData[iHour].iData = iVal; //存入数据
LastData[iHour].bValid = true; //置有效标志
return TRUE;
}
return FALSE;
}
#include <iostream>
#include <vector>
using namespace std;
int Func(int nInput)
{
int i = 0;
SYSTEMTIME st; int nHourArray[] = {8, 9, 10, 11, 12, 13, 14, 15};
int nArrayLength = sizeof(nHourArray) / sizeof(int);
vector< vector<int> > vecHour(nArrayLength); GetSystemTime(&st); for (i = 0; i < nArrayLength; i++)
{
if (st.wHour == nHourArray[i])
{
vecHour[i].push_back(nInput);
}
} for (i = 0; i < nArrayLength; i++)
{
cout << "Hour=" << nHourArray[i] << "The last number=" << vecHour[i].back();
} return 0;
}