- 8
- 0
- 约1.58千字
- 约 3页
- 2017-06-07 发布于重庆
- 举报
c语言实现截断二进制指数避退算法
/********************************
writor; liuyong
time ; 2014.3.11
Hubei University
*********************************/
#includestdio.h
#includestdlib.h
#includetime.h
#define CONTENTION_PERIOD 51.20 //以太网中争用期时间 2T(单位为微秒)
int GetRand(int min, int max) //得到min到 max
{
// SYSTEMTIME t;
// GetSystemTime(t); //取系统时间,格林威治时间之间的一个随机数
// srand(t.wMilliseconds);
int r=rand()%(max-min+1)+min;
return r;
}
int TwoPowerK(int k) //二的k次幂
{
int a=2;
int f=1;
while(k--)
{
f*=a;
}
return f;
}
int Resend(int i) //第i次重传操作,计算重传退避时间,等待后重传
//(具休实现未定义,仅用于演示,显示退避时间)
{
int r,MAX;
double BackTime;
printf(开始退避操作!);
if(i=10)
MAX=TwoPowerK(i)-1;
if(i10)
{
printf(重传次数超过10,从10截止。\n);
MAX=TwoPowerK(10)-1;
}
printf(随机数范围:0到%d\n,MAX);
r=GetRand(0,MAX);
printf(得到的随机数r为:%d\n,r);
BackTime=r*CONTENTION_PERIOD;
printf(退避时间为:51.2*BackTime=%f微秒\n,BackTime);
printf(退避完成,开始重传!\n);
return 0;
}
void main()
{
int k=0; //用以表示重传的次数
int p; //用于自己设置发生碰撞的概率
printf(***截断二进制退避指数算法演示***\n);
printf(每次传送发生碰撞的概率为p%,请输入p的值,范围为0到100之间的整数:);
scanf(%d,p);
while(1)
{
if(GetRand(1,100)=p) //如果发生碰撞,其概率为p%
{
k++;
if(k=16) //最大重传送次数为16
{
printf(***发生碰撞!,准备进行第%d次重传!***\n,k);
Resend(k);
continue;
}
if(k16)
{
printf(重传16次仍未成功,丢弃本帧,向高层报告!\n);
break;
}
}
if(GetRand(1,100)p) //如果没有发生碰撞,其概率为1-p%
{
printf(本次未发生碰撞,传送成功!!共重传%d次。\n,k);
break;
}
}
}
您可能关注的文档
- C语言中函数参数入栈的顺序.doc
- 高考物理选择题专项训练1.doc
- 高考生物模拟训练2.doc
- 高考生物考点1.doc
- 高考生物经典易混易错考点汇总.doc
- 高考生物主要考点.doc
- 高考第一轮单元训练题认识现代汉语普通话的字音.doc
- 高考第一轮复习教案201345.doc
- 高考经济生活常见计算题及其解题方法.doc
- 高考综合复习牛顿运动定律专题复习一.doc
- 传统文化在小学语文教学中的应用与探索论文.docx
- 小学科学教育中培养学生环保意识的实践研究:以环保实验为例论文.docx
- 高中生在线教育资源使用对历史人物形象塑造的影响研究论文.docx
- 基于核心素养的初中数学教学创新模式探究与实践论文.docx
- 初中生艺术社团活动对学生艺术表现力的培养策略论文.docx
- 小学体育课堂团队游戏对学生协作能力培养的实证分析论文.docx
- 高中地理教学:校园绿化与空气质量改善的生态环境效应研究论文.docx
- 初中生参与本地水系重金属污染监测的环保意识与行为研究论文.docx
- 小学生参与校园绿化建设中的社会责任感培养论文.docx
- 高中化学教学:校园周边文具店化学实验用品价格与质量评估论文.docx
最近下载
- 2026中国建设银行远程智能银行中心客服代表社会招聘200人(广州20人)参考考试题库附答案解析.docx VIP
- 儿童身高管理.pptx VIP
- 2026中国建设银行远程智能银行中心客服代表社会招聘200人(广州20人)参考考试试题附答案解析.docx VIP
- 2026至未来5年中国冲压端子市场数据分析及竞争策略研究报告.docx
- 《电梯触摸屏操控终端技术要求》.docx VIP
- 上海大学继续教育市场营销网课答案更新版.pdf VIP
- 2026中国建设银行远程智能银行中心客服代表社会招聘200人(广州20人)备考考试试题及答案解析.docx VIP
- 2026中国建设银行远程智能银行中心客服代表社会招聘200人(广州20人)考试备考题库附答案解析.docx VIP
- 2021 年全国一级建造师考试执业资格考试法规-白金卷.docx VIP
- 中国燃料电池汽车产业发展白皮书(2025年).docx
原创力文档

文档评论(0)