
C语言笔试或面试一般会问到什么问题
既然是面试,一定要提前准备,最好准备一套自我介绍,包括对IT行业的看法之类,面试官经常会问这些问题。
由于c语言是程序员工作语种的其中1个,所以对于程序员这个工种,还是有一些具体的注意事项:第一、基础很重要,不要生疏了。
不管应聘什么开发岗位,基础永远是最重要的。
IT业不停地在炒作新概念,昨天是SOA,今天是云计算。
我们永远不知道明天流行什么,但是只要有踏实的基础,辅以较好的学习能力,要跟上步伐也不会太难。
所以绝大多数公司都会特别看重应聘人员的基础能力,比如编程语言本身的特性、基本的算法和数据结构、进程间通信等等,毕竟这些具体技术问题有客观的答案,而且在各具体行业都是相通的。
工作三年以上的人,往往都习惯了“拷贝+修改”式的工作,用不到的基础知识基本上都忘掉了,一到应聘的时候就难免眼高手低,总是抓不住机会。
而事实上,技术基础即便是遗忘了,也是可以很快捡起来的。
如果求职者确实忘了很多基础知识,那么参加面试的前夜,花点时间把大学里的课本再翻出来看看吧。
似乎很土的方法,但确实是有效的。
第二、要关注技术前沿。
不管做任何工作,如果只顾着低头做事,而不晓得抬头看天。
那么不管做多久,自身的水平总是停留在毕业时的水平;如果基础又忘记了太多,那还不如毕业生。
关注技术前沿,并不是要求跟进每一个新技术,而只需关注目前主流媒体经常宣传的一些新技术、新思想。
关注这些技术前沿的动向,并能与自己从事的工作联系起来作一些深入思考,那么这是向面试官宣扬求职者的学习能力的一种好办法。
第三、小公司比较看重知识的广度,大公司更看重知识的深度。
如果求职业想去一些小公司工作,那么由于他们人少,分工没那么细,所以用人单位大多喜欢知识面广的应聘者——求职者会听到更多的“怎么做”。
对于应聘这样的公司,求职者可以着重培养知识的广度,比如做网站后台开发,最好也能js、css、apache、mysql都懂一些,能独自搭建一套完整的网站,这样去很多小公司难度都不太大。
但是由于个人的精力总是有限的,所以要注意不要铺得太开,重点还是在后台开发本身。
而大公司由于分工比较明细,所以往往更喜欢考量重点知识面的深度——求职者会听到更多的“为什么”。
所以平常解决问题时,不要光搜索一把解决了就完了,还需要仔细研究各种问题的来龙去脉,并能分析总结,将这些收获系统化、理论化。
当然,广度和深度的需求不是绝对的,一个优秀的开发人员应该对至少一到两个专业领域有着深入的了解,并熟悉其他相关领域,也就是所谓的一专多能。
第四、良好的简历设计可以为你的应聘加分。
社会应聘的简历往往比校园应聘的简历写得随意,因为有工作经验的人往往认为面试官会更看重他的工作经验,而不是简历格式。
其实不然。
大多数简历只会出现在面试官面前10秒到1分钟不等。
这个短短的时间内,如何让求职者脱颖而出
这个方面有很多的攻略,我只说重点建议,不解释原因。
一是简历要突出优势,而不是描述经历。
比如出身名校、就职过名企、参与过著名项目、拿过大奖,这些比较客观的优势要重点突出。
如果求职者没有UI的功底,那么简单地放大加粗也可以达到效果。
当然有些公司只接受文本型简历,那就设法加一些特殊符号吧。
二是技术简历减少模糊化的语句,最好能数字化。
例如项目代码量,维护的数据量,网站的访问量,请求平均耗时等等。
三是简历要能结合应聘岗位做一些匹配的修改。
撇开招聘网站通用的简历不谈,如果求职者明确对一个特定公司的特定岗位投出简历,那么求职者有必要把跟对应岗位无关的内容弱化,并强化跟其业务相关的内容。
如果实在行业差别太大,那么表达几句对其行业的见解和兴趣也是可以的。
第五、要有积极的沟通意识。
优秀的面试官会激励应聘者讲他原先工作的内容,并从而评估出应聘者的能力水平。
但隔行如隔山,绝大多数面试官会慢慢将问题引向自己熟悉的领域——这往往又是应聘者不太熟悉的领域。
这就要求应聘者能积极分析面试官的兴趣点,并将自己相近的特长表现出来。
如果跟面试官有了意见冲突,也尽量不要再同一个问题上纠缠。
那也许是故意制造的陷阱——看看求职者的团队意识。
应聘者需要明白的是,在面试场合中不要妄图“战胜”面试官,即便是碰上一个期望“战胜”应聘者的面试官。
第六、要有良好的表达能力。
没有哪个面试官喜欢啰啰嗦嗦说了半天还是没说到点子上的应聘者,所以要尽量简明扼要地回答问题,除非面试官确实表现出对具体细节的兴趣。
回答问题时注意面试官的情绪变化,一旦他表现出任何想打断的意愿,立即一句话结束这个话题。
有些比较复杂的问题,可以先思考十到二十秒钟,因为一旦开口就没有思考的时间,话多的人不容易收住话题。
跟学校考试不一样,大多数主观性问题并不要求应聘者一二三四说得滴水不漏,能说到大部分关键点就是可以的了。
另外注意,各种技术术语不要搞混了。
搞不清楚的理论概念,不如不说。
免得面试官听到个术语就拉出来穷追猛打,把自己问挂。
第七、自信。
大多数做技术的,平时都信心满满,一到应聘的时候却总觉得自己不懂的东西还太多。
回答问题时声音太小,或者畏畏缩缩用很多“可能”“也许”“大概”。
这个不一定影响求职者的录用,但是不自信的表现无疑会影响在跟HR谈薪水时候的议价能力。
所以,无论如何,应聘的时候表现得轻松镇定一些,还是很有好处的。
当然,自信和自大之间往往只有一线之差。
千万小心,不要过度地表现自信搞成了自大,因为HR往往对这一点非常敏感。
如果求职者只是要谨慎地表现自信的话,只要回答问题时面带微笑就够了。
最后需要特别提醒的是,以上种种其实只不过是应聘时的技巧和注意点而已。
职业规划需要有长远的眼光和坚持不懈的学习。
台上一分钟,台下十年功。
真正的实力还是要在平时工作和学习中进行积累。
C语言考试技巧
一.特点和注意事项 1、填空题 (1)上机填空题一般包含2个(或3个)空。
(2)要填空的位置用___、___、___表示。
(3)考生在考试时应删除标识___、___、___后填入相应的符号。
特别要注意的是:只能在要填空的位置上进行修改,不要添行、删除、合并或分解,不要改动程序行的顺序,更不要自己另编程序。
2.改错题 (1)上机改错题中有2个(或3个)错误需要修改。
(2)试题中用“\\\/******found******\\\/”来提示在下一行(或下面第二行)有错。
(3)错误的性质基本分为语法错误和逻辑错误,也有些试题要求把语句添加在下划线处。
(4)特别要注意的是:只能在出错的行上进行修 二.做题技巧 以下是对上机考试改错题的做题方法和总结,改错题的错误主要分为以下几类: 一般情况,错误主要分为语法错误和逻辑错误。
先检查语法错误,编译程序后发现没有错误及警告,说明没有语法错误,只有逻辑错误;逻辑错误必须根据程序的功能及预期结果来考查。
因此,对于程序改错题,应先编译查找其中的语法错误,通过编译器的提示容易找到错误的地方及原因,然后再寻找逻辑错误。
修改了语法错误后再次编译,直到修改完所有的语法错误。
而查找逻辑错误时,需要运行程序根据结果来检查。
1、if或while语句 若错误行是if或者while语句,则要注意以下点: 1)首先判断是否正确书写if或while关键字; 2)然后看有没有用小括号把整个表达式括起来,若没有则加上小括号; 3)若条件表达式中有指针变量而且没有指针运算符时,则加上指针运算符; 4)若if条件表达式中只有一个等于号即数学等号(=),则要改写成两个等于号即逻辑等号(==); 若if条件表达式为其他的比较运算符,则一般是进行逆转或加一个等于号; 2、for语句 若错误行是for语句,则要注意以下几点: 1)首先判断for有没有书写正确; 2)然后看for中的表达式是不是用分号(;)隔开,若不是则改为分号。
3、记住是分号(;),不是逗号(,)
再者,分析for中的三个表达式,是否符合题意; 第一个表达式表示起始条件, 第二个表达式表示终止条件, 第三个表达式表示循环变量的变化。
4、return语句 若错误行为return语句,则要注意以下几点: 1)首先看是不是正确书写return关键字; 2)然后看是不是缺少分号,若是则加上分号即可; 3)再者判断return后的变量或表达式是否正确; 这种错误需要根据题意来分析,分析返回变量或表达式的值和类型。
5、赋值语句 若错误行是赋值语句,则要看赋值是否正确,然后看赋值运算符是否写正确。
6、定义语句 若错误行是定义语句,则要注意: 1)首先分析变量类型是否符合; 2)然后分析赋初值是否正确,求和初值赋0,求积初值赋1; 3)若以上均不是,则看是不是少定义了某个变量或少了花括号; 7、关键字拼写错误。
如:main-mian(错误) printf - pirntf (错误) Return- return(错误) while- While (错误) 8、表达式错误问题 表达式错误占的份量最多,并且没有统一的改法,我们只能通过题目要求来分析并修改), 1)若错误行中有整数1除以某个表达式或变量时,必须把整数1改为1.0;若变量或表达式是整型时,则只能进行强制类型转换。
2)变量必须先赋值,后才参与运算,没有赋值就不能参与运算;例如,long k;k*=num%10; 3)运算符书写错误,例如,把\\\/写成\\\\(num\\\\=10);,==写成=。
4)丢失括号() 9、字符串类问题 1)若错误行中有字符串结束符,则特别要要注意结束符有没有写错(‘\\\\0’不要写成\\\\0”)。
2)新组建的字符串一定要加结束标识符(‘\\\\0’); 3)要区分清楚字符‘o’和数字‘0’。
4)字符串复制、比较必须使用用字符串处理函数(strcpy或strcmp)实现,不能用赋值语句或关系运算符。
10、指针类问题 若错误行中有指针变量,并且该变量名之前没有指针运算符,则般都是加上指针运算符;即注意p和*p的区别; 11、函数首部类问题: 若错误行是函数首部,则要注意: 1)首先看该行最后有没有分号,若有则删掉分号;若中间有分号则要改为逗号; 2)形参和实参类型不一致问题 ① 若实参是个地址或数组名或指针变量名,则对应的形参肯定是指针或数组; ②若实参是二维数组名,则对应的形参应该是指针数组或是二维数组; ③若后面用到形参时有指针运算符,则该形参应为指针类型; ④若形参是二维数组或指向M 个元素的指针变量,则该二维的长度必须与main中对于数组的第二维的长度相同。
3)函数类型不一致问题 ①若函数中没有return语句,则函数类型为void; ②若函数中有ret urn语句,则函数的类型必须与rerun后的变量类型一致; 记住,调用函数的类型与main中的该函数的类型一致
12、语法错误问题: 1)语句缺少分号。
若错误号中语句没有以分号结束则加上分号; 2)变量名不一致。
C语言是区分大小写的,若错误行中有大写字母一般都改为小写字母; 3)若错误行中有一条横线,则必须将横线删除再填空。
填空题中亦是如此。
13、逻辑错误问题: 这种题型主要是表达式错误,占的题量比较多而且没有统一的做题方法,需要我们具体问题具体分析。
对于逻辑错误,可按下列步骤查找: ①先读试题,看清题目的功能要求。
②通读程序,看懂程序中算法的实现方法。
③细看程序,发现常见错误点。
14、书写错误问题: 特别注意我们的注释部分,注释是以\\\/*开始,以*\\\/结尾,不能有多余的,有也只能在\\\/*和*\\\/里面。
注意,比如“\\\/***注释部分*****\\\/*\\\/”是错误的
二、编程时容易犯的错误 1.书写标识符时,忽略了大小写的区别 C语言认为大些字母和小写字母时两个不同的字符,如在编译程序过程中,系统会把a和认为时两个不同的变量名。
习惯上,符号常量名用大写表示,变量名用小写表示,以增加程序的可能性。
2.忽略了变量的类型,进行了不合法的运算 3.忽略了“=”与“= =”的区别;C语言中,“=”是赋值运算符,“= =”是关系运算符 4.忘记加分号 考生应特别注意这种情况,分号是C语言中不可缺少的一部分,语句末尾必须有分号,但有时候千万不能加; 5.输入变量时忘记加地址运算符“&”,而在不应加“&”的位置加了地址运算符 (1)忘记加“&”的情况。
如int a,b; scanf(“%d%d”,a,b); 此时,无法正确给a和b读入数据。
scanf函数的作用是:按照a、b在内存中所分配的地址将a、b的值存进去。
“&a”指a在内存中的地址,因此正确的书写格式为scanf(“%d%d”,&a,&b);。
(2)多加“&”的情况。
如int str[ ]; scanf(“%s”,&str); C语言编译程序对数组名的处理是:数组名代表数组的起始地址,scanf函数中的输入项是字符数组名,因此不必再加地址符&,应该去掉。
6.输入数据的方式余要求格式(通配符)不符。
例如:scanf(“%d,%d”,&a,&b); C规定:如果在“格式控制”字符串中,除了格式说明以外还有其他字符,则在输入数据时应输入与这些字符相同的字符。
下面输入是合法的:3,4 此时不用逗号而用空格或其他字符是不对的,如:3 4(中间为空格)3:4(中间为冒号); 三、相关概念 (1)素数:定义是除了能被1和自身整除外,不存在其他任何能整除该数的自然数。
因此,在判断一个数是否为素数时,只要有除了1和本身能整除它,还有一个数能整除它,就判定此数不是素数。
(2)判断一个年份是否为闰年:如果年份能被4 整除但是不能被100整除,或者能被400整除,这两种情况满足之一都是闰年。
(3)利用选择法进行从小到大的排序。
选择法的思路为:把第一个元素与其后面的元素比较,如果比后面的大,则交换,比较完所有的元素后,第一个位置的元素是最小的元素;在把第二个元素与其后面的元素进行比较,结果是除了第一个元素外,第二个元素是最小的元素;以此类推。
(4)数的按位分离算法是:对10取模求个位上的数字,整除10后再对10取模求十位上的数字,整除100后再对10取模求百位上的数字。
(5)最大公约数的算法是:(1)若n>m,则用n除以m求余数r;(2)若r=0,则m为最大公约数,若r≠0,则将r赋值于m,m赋值于n,继续用n除以m求余数r;(3)直到r=0,m为最大公约数。
根据算法判断每一条语句是否正确。
(6)求最小公倍数的算法:等于两个数的乘积除以它们的最大公约数。
(7)矩阵时以行为外循环,列为内循环,可以同时计算周边元素的和。
计算机c语言好通过吗
考试时要注意什么
1. 数据结构中最基本的,栈(先进后出),队列(先进先出),二叉树,要知道二叉树的遍历,这个每年都考。
2.数据库中的基础知识,考一两道,主要是关系数据库的概念,什么m对n,DBMS之类的。
3.软件设计里的基础知识,什么高耦合什么的,具体什么忘了,你查查。
4.记得还考那些http,ftp,邮件协议SMTP、POP3这些,好像每年都有着一道,你看看,很简单,几下就好了。
目前能想到的就这些了,希望对你有帮助。
哦,填空题前5到跟选择题的前10道考的是一样的知识点,所以上面的这些知识点对前5到填空题同样有用~~~~~~~~~~~~~
2020年全国计算机等级考试二级C语言必考知识点总结【完美版】
C语言最重要的知识点总体上必须清楚的:1)程序结构是三种:顺序结构、选择结构(分支结构)、循环结构。
2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。
3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.4)bit是位是指为0或者1。
byte是指字节,一个字节=八个位.概念常考到的:1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。
C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、definePI3.1415926;这个写法是错误的,一定不能出现分号。
3、每个C语言程序中main函数是有且只有一个。
4、在函数中不可以再定义函数。
5、算法:可以没有输入,但是一定要有输出。
6、break可用于循环结构和switch语句。
7、逗号运算符的级别最低,赋值的级别倒数第二。
第一章C语言的基础知识第一节、对C语言的基础认识1、C语言编写的程序称为源程序,又称为编译单位。
2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。
3、一个C语言程序有且只有一个main函数,是程序运行的起点。
第二节、熟悉vc++1、VC是软件,用来运行写的C语言程序。
2、每个C语言程序写完后,都是先编译,后链接,最后运行。
(.c---.obj---.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。
(常考
)第三节、标识符1、标识符(必考内容):合法的要求是由字母,数字,下划



