今天遇到的笔试题

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

1) 共有五个求sizeof的值的题目(其他三个都是常见面试题目都能见到的,写下面两个有点容易忽略的):
char *p = "hello"    sizeof(p) =?
char p[] = "hello"   sizeof(p) =?

2) 把一个数字字符串改成数字,如"12345" 改成数字1234,不可以使用C库函数

3) 用最高效率方法求 1-2+3-4+5...+n的值。

4) 程序改错和写成运行结果,程序大概如下:
int main()
{
    char* str = "123456789";

    char* pchar = str;
    long* plong = str;

    pchar++;
    plong++;

    printf("<%d> [%d] , %s/n", sizeof(char), sizeof(pchar), pchar );
    printf("<%d> [%d] , %s/n", sizeof(long), sizeof(plong), plong );

    return 0;
}

 

下面是我做的答案,仅供参考:

1) 共有五个求sizeof的值的题目(其他三个都是常见面试题目都能见到的,写下面两个有点容易忽略的):
char *p = "hello"    sizeof(p) = 4 // 这个我当时大意了写了个6
char p[] = "hello"   sizeof(p) = 6

2) 把一个数字字符串改成数字,如"12345" 改成数字1234,不考虑负数,不可以使用C库函数
// 应该还要加上int是否overflow和字符串是否是数字串的判断,
// 为了简洁,写一个核心。我完全没有想到可以用减法,我局限到用ascii去转换单个的数字了...
int StringToNumber(const char* string) {
  const char* p = string;
  int number = 0;
  while (*p != '/0') {
    number = number*10 + (*p-'0'); // 这句是核心,值得思考
    p++;
  }

  return number;
}

3) 用最高效率方法求 1-2+3-4+5-6+7...n的值。
// 这个比较简单,主要要注意的是分析下表达式的特点后再计算
int Calc(int n) {
  if ( n%2 == 0 )
    return (n/2) * (-1);
  else
    return ((n-1)/2) * (-1) + n;
}

4) 程序改错和写成运行结果,程序大概如下:
int main()
{
    char* str = "123456789";

    char* pchar = str;
    long* plong = str; //这里转换下(地球人都知道的,,,哎)改成:long* plong = (long*)str;

    pchar++;
    plong++;

    printf("<%d> [%d] , %s/n", sizeof(char), sizeof(pchar), pchar );
    printf("<%d> [%d] , %s/n", sizeof(long), sizeof(plong), plong );

    return 0;
}


这个题目还是考指针的长度。。。。
输出结果:
<1> [4] , 23456789
<4> [4] , 56789

BTW:我只是觉得第二题目出的不错。

程序员笔试题---国信证券 今天上午去了一趟国信证券的技术笔试,先整理如下今天的题目! 大致分为了c++,java,数据库还有部分的软件工程。 一、不定项选择题 1.数据库设计的时候,使用范式有何作用? A.容易扩展  B.减少数据冗余   C.提高性能   D.减少数据依赖 E.存储效率 解答:使用规范化的优点:数据库可更好的组织,减少数据冗余,确保数据库中数据的一致性,可使数据库设计更加具有灵活性,可更 阅读详情

相关推荐

想看看JAVA常用的笔试题吗?今天就让你看看这22道经典!

1. 下面哪些是Thread类的方法() A start() B run() C exit() D getPriority() 答案:ABD 解析:看Java API docs吧:http://docs.oracle.com/javase/7/docs/api/,exit()是System类的方法,如System.exit(0)。 2. 下面关于java.lang.Exception类的说法正确的是() A 继承自Throwable B Serialable .

Spring boot 566

找工作笔试面试那些事儿(7)---测试题答案

一、请填写BOOL  , float,  指针变量  与“零值”比较的 if  语句。  提示:这里“零值”可以是0 ,  0.0 , FALSE 或者“空指针”。例如 int  变量 n  与“零值” 比较的 if  语句为:          if ( n  ==  0 )           if ( n != 0 )  以此类推。    请写出 BOOL  flag  与“零

寒小阳 1万+

集合操作—今日头条2018笔试题

#include &lt;vector&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt; #include&lt;map&gt; using namespace std; int fun(vector&lt;int&gt; a, vector&lt;int&gt; b, double sum1, double sum2) { ...

u014253011的博客 797

今日头条笔试题(一)

车厢排序一列火车有n个车厢标记为1,2,3,4,5,6…n 现在因为某些原因,需要调整车厢的相对顺序 例如需要将车厢顺序调整为2,3,1,4,5,6…n 由于车厢庞大,且车厢只能停留在铁轨上,所以不能随心所欲的调整相对顺序现在只能利用两条并行的铁轨对车厢的顺序进行调整 例如 原序列为1,2的车厢 车厢1进入铁轨1停止 车厢2进入铁轨2,然后再开出 然后铁轨1上的车厢1再开出 这样可

Lamitry的博客 1万+

《算法竞赛入门经典》第6章数据结构基础书上例题(一)

再谈栈和队列 铁轨(Rails, ACM/ICPC CERC 1997, UVa 514) 题目描述 某城市有一个火车站。有n节车厢从A 方向驶入车站,按进站顺序编号为1~n。你的任务是判断是否能让它们按照某种特定的顺序进入B方向的铁轨并驶出车站。例如,出栈顺序(5,4,3,2,1)是可能的,但(5,4,1,2,3)是不可能的。 #include &lt;cstdio&gt; #inc...

beashaper_的博客 516

今天的Java笔试题

今天面试做了一套Java笔试题,下面是我根据记忆,对题目进行的测试,我是把几个题目综合在一起进行测试的:         TestB.java代码:import java.util.*;class Parant{       Parant()      {    System.out.println("parant");}static{    System.out.println("paran

首席技术执行官CTO(Chief Technology Officer)|技术总监--邓斌博客 1660

今天的淘宝笔试题

1.输出二叉树某一层结点(从左到右) 把输出二叉树第K层结点转换成:分别输出"以该二叉树根结点的左右子树为根的两棵子树"中第K-1层结点。 void PrintNodeAtLevel(Node *root , int level) { if(!root

iamfranter的专栏 1676

今天看到的mysql笔试题 exists代替in

最近看到的几个mysql面试题,是关于exist如何代替in 题目如下: 1.员工表employee,有2个字段salary , deptid ,查询所有数据,按照部门号从高到低,工资从低到高顺序输出 2.员工表employee,有2个字段salary , deptid ,查询各个部门中高于所有员工平均工资的人数:查询的结果列为: 部门,人数 3.员工表employee,有2个字段salary...

yb233yb的博客 1116

今天笔试题, mark一下.

[b]1. java阶乘算法[/b] [code="java"] //程序入口 public static void main(String args[]) { //定义变量sum用来保存阶乘的结果的和 long sum = 0; //定义变量i int i; //这是外循环,变量i的值从1向10递增, for(i=1;i...

Lullaby Us 133

分享今天面试碰到的真实的公司面试笔试题

class Super{ public Integer getLenght(){return new Integer(4);} public class Sub extends Super{ public Long getLenght(){ return new Long(5); } public void main(String[] args) { Super aSuper = new Super(); Sub sub = new Sub(); System.o

zhhhhhh1213的博客 699

今天遇到一道笔试题,请大家帮忙看一下,有遗漏的话留一下言,谢谢(补救)

写一个函数,要求参数是一个1000000以内的整数,并判断这个整数是不是素数。注意:代码要优化执行效率,执行时间不能超过32毫秒 第一种思路其实就是把数值和除了自己和1以外的所有的数值取余,并且计数中间不能被整除的,数量等于1~数值间的数字的数量那就是质数,但是这样太耗时 function fun(data){ var date=new Date().getMilliseconds() var data1=parseInt(data); if(data!=data1 || da

chen921190096的博客 1256

再现9月20号今天的百度笔试题

一  简答题 1、进程和线程有什么区别?(到处都在问这个问题) 2、简诉数据库的存储过程及其优点。(我实习的时候就是一直在写存储过程,所以) 3、全局static变量和普通全局变量区别?static局部变量和普通局部变量的区别?static函数和普通函数的区别? 二 算法与程序设计题 1、编码实现函数 void* memcpy(void* des, void* src, int le

世界很大我很小 3069

今天看到的xx的一道百度前端笔试题

以下是原文: JS的this真是好难理解啊,求高手指点 百度的前端面试题,代码如下: var a=5; function test(){ a=0; alert(a); alert(this.a); var a; alert(a); } test(); new test(); 在Chrome上run了一下,结果是 ...

weixin_33736832的博客 79

今天做错的笔试题StringBuffer引用传参

代码: public static void T3() { StringBuffer a=new StringBuffer("A"); StringBuffer b=new StringBuffer("B"); switchStr(a, b); System.out.println(a+","+b); } public static void switchStr(

一个情绪猿的脖克... 2932

今天发在群里的UC笔试题简要分析

题目如下:有一个长度为2n的数组{a1,a2,a3……an,b1,b2,b3……bn},希望排序后{a1,b1,a2,b2,a3,b3……an,bn},要求时间复杂度O(n),空间复杂度O(1)。 分析:这题的难度在于空间复杂度O(1)。 有些朋友可能会想只需要从0和n/2处依次取数轮流放入新数组就能完成排序,但是这样空间复杂度就需要O(n)了,所以新建数组是不可行的,要想保持空间复杂度O(1

腹黑の抖M兔子~ 1351

好久没写过博客,写一道今天笔试题

要求从str1字符串中找出str2字符串最后一次出现的位置,最简单应该是从后往前找,当时估计有点紧张没多想,结果可想而知,回来自己写了两种实现,从后往前和从前往后,前者简单就不贴代码了,后者突发奇想用了我最不擅长的递归来实现的,略微复杂,可读性较差,不过还是给写出来了,功能还算完善,支持类似ababa,中找aba,aabc中找ab,abcde中找de,后两种其实还算简单,考虑到就行,递归就是为第一

悬崖上的程序猿 462
上一篇: C/C++动态分配二维数组(在堆上分配二维数组内存)
下一篇: 自绘滚动条,滚动条模型,滚动条数据结构
fancylea
博客等级 码龄20年 52粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值