经典10道c/c++语言经典笔试题(含全部所有参考答案) 1. 下面这段代码的输出是多少(在32位机上). char *p; char *q[20]; char *m[20][20]; int (*n)[10]; struct MyStruct { char dda; double dda1; int type ; }; MyStruct k; printf("%d %d %d %d %d",sizeof(p),sizeof(q),sizeof(m),sizeof(n),sizeof(…
剑指Offer--网易校招内推笔试题+模拟题知识点总结 前言 2016.8.2 19:00网易校招内推笔试开始进行.前天晚上利用大约1小时时间完成了测评(这个必须做,关切到你能否参与面试).上午利用2小时时间做了下模拟题,模拟题中编程题占用时间比较多,可以先在自己电脑中的IDE编程测试.待测试完成后再将代码拷贝至OJ,运行所给测试案例.考察的知识点范围比较广泛,设计操作系统,Linux.java多线程.网络编程等.模拟题主要考查知识点如下(可能存在遗漏某些知识点的情况): 1.求给出叶子节点时哈…
题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 利用深度优先搜索 #-*- coding:utf-8 -*- class DFS: ''' num:用于存储最后执行次数 n:用于存储最后达到的字符串的长度 flag:当达到输入字符串的长度时,flag置为1 ''' def __init__(self,n): self.num=0 self.n=n self.flag=0 def fun(self,s,m): self.fun_1(s,m) self.fun_2(…
题目描述:2018春招-今日头条笔试题5题(后附大佬答案-c++版) 解题思路: 要想得到输入的数字列中存在相隔为k的数,可以将输入的数字加上k,然后判断其在不在输入的数字列中即可. #-*- coding:utf-8 -*- class Fun: def __init__(self,string,k): self.string=string self.k=int(k) self._set=set() def fun(self): l=set() #用于存储,已经比较的数,防止重复比较 for…
1.C语言中,全局变量的存储类别是() A.extern B.void C.int   D.static 2.静态变量: (1)static 外部变量===>在函数外定义,只能在本文件中使用 (2)static 局部变量===>在函数内定义,未赋初值时默认0或'\0',不能被其他函数调用,函数调用期间只赋值一次 3.int a; char b; scanf("%d%c",&a, &b); 当int与char一起输入时,不能带空格,否则空格赋值给b 4.非法的…
1.以下选择中,正确的赋值语句是(C) A.a=1,b=2 B.j++ C.a=b=5; D.y=(int)x 解析:选项A.B.D都无分号 变量 = 表达式;//赋值语句是一定带分号的 int a=b=c=5;//本语句错误 { int a,b,c; a = b = c = 5; }//正确赋值语句 2.运算符优先级: !.算术.关系.&&.||.按位.逻辑.?:.赋值.逗号 3.假设所有变量均为整型,表达式a=2,b=5,a>b?a++:b++,a+b的值是(8) 解析:首先保证…
1.obj文件是:(二进制文件) 2.函数func(float x){printf("%f",x+x);}的类型是() A.void B.int类型 C.无法确定 3.若有定义:int a[2][3];则对a数组的第i行第j列元素地址的正确引用是(C.D),     对a数组的第i行第j列元素值的正确引用是(A.B) A.*(a[i]+j) B.*(*(a+i)+j) C.(a[i]+j) D.*(a+i)+j 4.关系运算符==与>=的优先级相同(错误) 解析:> >…
点击阅读原文 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365UL) [此处对原文有改动]我在这想看到几件事情:1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的.3). 意识到这个表达式将使一个16位机的整型数溢…
1.下面的代码输出什么?为什么? void foo(void) { unsigned int a = 6; int b = -20; (a+b > 6)?puts(">6"):puts("<=6"); } 答案:输出值">6" 解析:a+b在这里做了隐式的转换,把int转化为unsigned int.编译器会把b当做一个很大的正数. 2.下面的代码有什么问题,为什么? void foo(void) { char strin…
1.一个人上台阶可以一次上1个,2个,或者3个,问这个人上32层的台阶,总共有几种走法? 思路:先建立数学模型,设3步的走 i 次,2步的走 j 次, 1步的走 k 次,上了3*i + 2*j + 1*k = n个台阶.总共走 i + j + k 次, 等于把n个台阶的长度先划分成 i + j + k 个段落, 然后分别填下i个3, j 个2, k个1.这样,当划分成 i + j + k 个段落时, 根据排列组合知识,所有填充方法有 (i + j + k )!/ ( i!*j!*k!) 种,程序…