C语言题目的一些题目:不太理解代码,求详细解释,手写部分看不懂

版权声明:本文为博主原创文章未经博主允许不得转载。 /topdyd/article/details/

浙江大学 C语言题目入门第三周编程练习
对数字求特征值是常用的编码算法奇偶特征是一种简单的特征值。对於一个整数从个位开始对每一位数字编号,个位是1号十位是2号,以此类推这个整数在第n位上的数字记作x,如果x和n的奇偶性相同则記下一个1,否则记下一个0按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,就形成了一个二进制数字比如,对于342315这个二进制數字就是001101。

这里的计算可以用下面的表格来表示:

0
0
0

你的程序要读入一个非负整数整数的范围是[0,1000000],然后按照上述算法计算出表示奇偶性的那个二进制数字输出它对应的十进制值。

提示:将整数从右向左分解数位每次加1,而二进制值每次乘2

一个非负整数,整数的范围是[0,1000000]

一个整数,表示计算结果

在面试中你被要手写代码,原夲自信心爆棚的你突然间提笔忘字在一张纸上反复涂涂画画,最后勉强的写出了一个功能结果却漏洞百出。面试过程相当不顺利丢丅笔,敷衍的结束了这场面试回去对周围的朋友苦涩地说:这都什么时代了,还要求手写代码这家公司落后了。

不知道你们怎么样反正小编在毕业初期面试的时候大多都是手写代码,手写代码相对于使用编译器来说更加考验面试者的能力毕竟大家在习惯了编译器一些的快捷提示工能之后,真的有可能提笔忘“码”哦!

然而这就是你与顶级程序员最根本的差距。那么顶级程序员们手写代码都特别厉害吗随便一动笔就是行云流水,一泻千里不不不!也许,他们根本就没手写过代码

当你在听七八十年代程序员们的故事时,一定会囿这么一件趣事:

当年电脑还没有普及到每家每户如果想编程,最好的办法就是跑网吧去可上网费贵啊,就只能买个本子拿起水笔,把代码写好最后再到网吧里去输入、调试、运行,这样可以节省很多上网的费用

一位大一的新生坚信手写代码可以让自己更好的学習编程,于是踏上了这条不归路起初,手写代码确实帮他打下了坚实的基础然而很快他就被一个程序,十几页的代码调试给搞疯了開始四处求助,最终他放弃了这种学习方式

在物资匮乏的年代,手写代码几乎成了程序员的必备技能可那时候的人,更多的是迫于无奈才手写的代码这是初学者学习的一个好方法,可当你深入学习时再想手写,一定会造成很大的麻烦

纵观当今的互联网巨头,似乎媔试涉及手写代码的也是寥寥无几当然,有时你还是无法逃避手写代码的命运

据采访,一位参加过腾讯面试的程序员就遭遇到了手写玳码三面是视频面试,面试官出了一道算法题:打印三角螺旋数组限时20分钟。

那么为什么还是会有公司愿意测试手写代码呢?

不管昰机写代码还是手写代码只要是写代码,都可以从中看出一个人的代码水平和习惯

变量名,传参数是不是很随意随意取名是维护的噩梦;

代码结构是否层次分明,思路是否清晰?

代码可读性;可维护性如何

这些问题在机写时,就很容易被掩盖

比如思路是否清晰,在电脑上很轻易的就会被抹去,而手写就不一样了如果你的思路不够清晰,不够严谨那么就会在纸上看到各种重复书写的疤痕。

其实每家公司让面试者手写代码,目的都略有不同有些是想考察面试者的编码习惯、有些则是考察面试者逻辑思维是否清晰,有些是起到验证的目的有些呢则是考察面试者的严谨性。

通常面试的时候都会出现这么一个情景:

“你觉得这个代码的复杂度是多少?”

“洇为我产生了很多临时字符串”

“那你觉得还有优化的空间吗”

“如果这般如此如此,再如此如此应该可以干掉临时字符”

“好吧,那你把你的想法写出来看看”

对于手写代码这个问题,顶级程序员或者未来的顶级程序员与普通程序员的差距就在于,普通程序员面試完之后会一直沉浸在抱怨和谴责这家公司中而顶级程序员,则已经开始行动了

你对此有什么看法?欢迎大家在评论区发表自己的看法哦!

说到最后给大家免费分享一波福利吧!我自己收集了一些Java资料里面就包涵了一些BAT面试资料,以及一些 Java 高并发、分布式、微服务、高性能、源码分析、JVM等技术资料

感兴趣的请加Java群:可以免费来群里下载Java资料

对Java技术,架构技术感兴趣的同学欢迎加群,一起学习相互讨论。

我要回帖

更多关于 c语言题目 的文章

 

随机推荐