携程2016校园招聘笔试题分析

1.
内存空间被分成不同区域,其中用函数
void* malloc(unsigned int size);

申请的内存在()

答案:C 编程语言中的 malloc  calloc 函数和 C++  new 运算符都是在动态存储区( heap )上申请内存空间


2.CPU输出数据的速度远远高于打印机的打印速度,为了解决这一矛盾,可采用()

缓冲技术

3.

编译和执行如下代码,系统将会输出什么?
1
2
3
4
5
6
7
#include<stdio.h>
int main()
{
     char c= '0' ;
     printf ( "%d %d" , sizeof (c), sizeof ( '0' ));
     return 0;
}
两个1
sizeof 运算符主要用于计算占用内存( stack 而不是 heap )的大小, char 占用一个字节。


4.表的主键特点中,说法主键的
A.每一列都必须非空
B.主键的每一列都必须唯一
C.一个表只能定义一个主键
D.主键可以定义在表级或列级不正确的是()
D D我不知道他想说明什么 其他项都是正确的


5.一位酒商有6桶葡萄酒和啤酒,容量分别为30升、32升、36升、38升、40升、62升。其中五桶装着葡萄酒,一桶装着啤酒。第一位顾客买走了两桶葡萄酒;第二位顾客所买的葡萄酒则是第一位顾客的两倍。请问,有多少升啤酒?

public class Charandchar {
     public static void main(String[] args) {
         // 一位酒商有6桶葡萄酒和啤酒,容量分别为30升、32升、36升、38升、40升、62升。
         // 其中五桶装着葡萄酒,一桶装着啤酒。
         // 第一位顾客买走了两桶葡萄酒;
         // 第二位顾客所买的葡萄酒则是第一位顾客的两倍。请问,有多少升啤酒?
         int bear[] =  new int [] {  30 32 36 38 40 62 };
         for ( int i =  0 ; i < bear.length; i++) {
             for ( int j = i +  1 ; j < bear.length; j++) {
                 int sum = bear[i] + bear[j];
                 // 统计剩下的4桶 如果存在其中3桶等于sum的两倍 那么可以 输出
                 // 这里应该统计最大的3个数的和
                 int num = Test(i, j, bear, sum);
                 if (num !=  0 ) {
                     System.out.println(num);
                 }
             }
         }
     }
     private static int Test( int i,  int j,  int [] bear,  int sum) {
         int sum_test[] =  new int [bear.length -  2 ];
         int count =  0 ;
         // 将剩下的4桶复制到sum_test数组
         for ( int k =  0 ; k < bear.length; k++) {
             if (k != i && k != j) {
                 sum_test[count++] = bear[k];
                 // System.out.print(bear[k] + " ");
             }
         }
         // 4桶中统计任意3桶的总和 如果存在这3桶的和==sum的两倍 返回
         for ( int l =  0 ; l < sum_test.length; l++) {
             int sum_three =  0 ;
             for ( int m =  0 ; m < sum_test.length; m++) {
                 if (l != m) {
                     sum_three += sum_test[m];
                 }
             }
             if (sum_three == sum *  2 ) {
                 // System.out.println(sum_three + "-" + sum + "-" + bear[i] +
                 // "-" + bear[j]);
                 return sum_test[l];
             }
         }
         return 0 ;
     }
}


程序输出40


7.冯诺依曼工作方式的基本特点是____
冯.诺依曼机工作方式的基本特点就是程序事先存放在存储器中,存储器按地址访问,逐条地取出指令来执行。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值