SIEMENS山东省菏泽市 西门子代理商——西门子华北一级总代理
6测试代码
主函数部分:
int main(){ stData *pList = NULL; //环形链表指针 stData *pHead = NULL; //环形链表中的数据头指针 stData *pTail = NULL; //环形链表中的数据尾指针
init_list(&pList, LIST_LEN); //初始化一个长度为 LIST_LEN的环形链表 (LIST_LEN=5) pHead = pTail = pList;
int i = 0; int ret = -1; for(i=0;i<15;i++) { //printf("mian--->i: %d \r\n", i); ret = add_data2list(&pHead, &pTail, data[i]); if(0 == ret) { float res; calc_list_ave(pHead, &res); printf("--->i: %d (%.2f)\r\n", i, res); } } release_list(&pList);
return 0;}
测试结果:
--->i: 4 (20.02)--->i: 5 (19.82)
--->i: 6 (19.76)
--->i: 7 (19.84)
--->i: 8 (19.88)
--->i: 9 (19.88)
--->i: 10 (20.00)
--->i: 11 (20.00)
--->i: 12 (20.04)
--->i: 13 (20.04)
--->i: 14 (20.04)
--------------------------------
Process exited after 0.01616 seconds with return value 0
请按任意键继续. . .
可以看到,测试程序有一个包含15个数的序列,并通过for循环依次将数据放入到环形链表中,在前4次循环(0~3)中,环形链表没有存满,不对链表中的数据处理,因此没有显示出打印信息,在第5次循环以及之后,环形链表始终是满的状态,因此可以一直对链表中数据进行处理,这里是求取平均值。
展开全文
相关产品