鹅厂2015实习生笔试题
2015-06-11 20:40
309 查看
1、一个商场进行抽奖活动,有两个奖项,A奖项抽中的概率是1/6,B奖项抽中的概率是5/6,用C语言编码实现这个抽奖程序。
2、在不使用sizeof()函数的情况下,取出本机的整形所占位数,如32位、64位等。
3、在某个C/S模型中,服务器最大的处理量是每秒10000次,设计一个算法,保证服务器可以正常运行。
#include <stdio.h> #include <time.h> #include <stdlib.h> //抽奖函数:1/6的概率返回true,5/6的概率返回false bool draw(){ int ran; srand( (unsigned)time(NULL) ); ran = rand() % 6; if(0 == ran) return true; else return false; } int main(){ char ret; if(draw()) ret = 'A'; else ret = 'B'; printf("抽奖结果为: %c\n", ret); return 0; }
2、在不使用sizeof()函数的情况下,取出本机的整形所占位数,如32位、64位等。
#include <stdio.h> int numOfInt(){ int num1; int num2 = 0; char *p1 = (char *)&num1; char *p2 = (char *)&num2; for(int num = 0; num < 8; ++num){ p1[num] = p2[num]; if(num1 == num2) return ++num; } return -1; } int main(){ printf("本台计算机整形所占位数为: %d\n", numOfInt() * 8); return 0; }
3、在某个C/S模型中,服务器最大的处理量是每秒10000次,设计一个算法,保证服务器可以正常运行。
#include <time.h> double Clock_Start = 0; double Clock_End = 0; int count = 0; bool client = false; void ProtectServer(){ while(1){ //是服务端一直运行 if(Clock_End >= 1000){ /*处理当前等待队列的所有请求*/ Clock_Start = clock(); //记录当前时间 count = 0; } if(client){ if(count < 10000){ count++; } else{ /*给服务器抛出满载异常*/ } } client = false; Clock_End = clock() = Clock_Start; } }
相关文章推荐
- Windows 7双击文件夹/分区总是新窗口打开的解决方法[转]
- POJ 2104 区间第K大值(划分树做法)
- ASP.NET使用RadioButton控件
- IP、TCP、UDP、ICMP头详解
- Ubuntu解决运行startx命令后出现登陆密码正确但无法进入桌面问题
- Training:搜索入门
- PostgreSQL表连接
- eclipse debug (调试) 学习心得
- Foundation框架基础知识
- Notes on Matrix Calculus
- Python 得到Twitter所有用户friends和followers
- 汇编指令简介
- java import的机制
- java中wait/notify机制
- T-SQL:zz检查文件夹下的文件大小
- 有户口的公司
- strcpy_s与strcpy对照
- Sobel边缘检测和边缘细化
- Android用观察者模式代替广播通知刷新界面
- 【BZOJ4008】【HNOI2015】亚瑟王 概率DP