2019年c语言经典面试题目


Posted in 面试题 onAugust 17, 2016

    作为IT行业人士需要掌握的最基本的计算机语言—c语言,如今的地位只高不低,c语言掌握程度的高低往往在面试的时候可以完全表现出来,而有些问题是大家平时似乎是知道的,但却不能完整准确地回答上来的,小编当年也遇到了很多此类问题,所以今天大家带来精心整理的C语言经典面试题 ,希望对大家有所帮助。


1.在下面程序的底画线处填上适当的字句,使该程序执行结果为60。

# include

class base{int X;

public∶

void int (int initX){X=initX; }

int Getnum() {return X+7; }

void main()

{_______

_______

cout<<test.Getnum();

}

2.下列程序的输出结果是。

#include

void SB(char ch) {

switch(ch) {

case 'A': case 'a':

cout<<"well !"; break;

case 'B': case 'b'

cout<<"good !"; break;

case 'C': case 'c':

cout<<"pass ! "; break

default:

cout<<"bad! "; break;

)

cout<<endl;

}

void main() {

char a[6] ="Abcaf'

for(int i=0; a[i]; i++) SB(a[i]);}

3.在下列程序的空格处填上适当的字句,使输出为:0,8,5。

# include

# include

class Magic{

double x;

public∶

Magic(double d=0.00)∶x(fabs(d)){}

Magic _______{return Magic(sqrt(x*x+c.x*c.x));}

_______<<(ostream & os,Magic c){return os<<c.x;}

};

void main()

{Magic ma;

cout<<ma<<’,’<<Magic(-8)<<’,’<<ma+Magic(-3)+Magic(-4);

}


关键字

问题一:static关键字的作用?

答:

Static的用途主要有两个,一是用于修饰存储类型使之成为静态存储类型,二是用于修饰链接属性使之成为内部链接属性。

1.静态存储类型:

在函数内定义的静态局部变量,该变量存在内存的静态区,所以即使该函数运行结束,静态变量的值不会被销毁,函数下次运行时能仍用到这个值。

在函数外定义的静态变量——静态全局变量,该变量的作用域只能在定义该变量的文件中,不能被其他文件通过extern引用。

2. 内部链接属性

静态函数只能在声明它的源文件中使用。

问题二:const关键字的作用?

答:

1.声明常变量,使得指定的变量不能被修改。

const int a = 5;/*a的值一直为5,不能被改变*/

const int b; b = 10;/*b的值被赋值为10后,不能被改变*/

const int *ptr; /*ptr为指向整型常量的指针,ptr的值可以修改,但不能修改其所指向的值*/

int *const ptr;/*ptr为指向整型的常量指针,ptr的值不能修改,但可以修改其所指向的值*/

const int *const ptr;/*ptr为指向整型常量的常量指针,ptr及其指向的值都不能修改*/

2.修饰函数形参,使得形参在函数内不能被修改,表示输入参数。

如int fun(const int a);或int fun(const char *str);

3.修饰函数返回值,使得函数的返回值不能被修改。

const char *getstr(void);使用:const *str= getstr();

const int getint(void); 使用:const int a =getint();

问题三:volatile关键字的作用?

答:

volatile指定的关键字可能被系统、硬件、进程/线程改变,强制编译器每次从内存中取得该变量的值,而不是从被优化后的寄存器中读取。例子:硬件时钟;多线程中被多个任务共享的变量等。

问题四:extern关键字的作用?

答:

1.用于修饰变量或函数,表明该变量或函数都是在别的文件中定义的,提示编译器在其他文件中寻找定义。

extern int a;

extern int *p;

extern int array[];

extern void fun(void);

其中,在函数的声明带有关键字extern,仅仅是暗示这个函数可能在别的源文件中定义,没有其他作用。如:

头文件A:A_MODULE.h中包含

extern int func(int a, int b);

源文件A: A_MODULE.c中

#include “A_MODULE.h”

int func(int a, int b)

{

returna+b;

}

此时,展开头文件A_MODULE.h后,为

extern int func(int a, int b);/*虽然暗示可能在别的源文件中定义,但又在本文件中定义,所以extern并没有起到什么作用,但也不会产生错误*/

int func(int a, int b)

{

returna+b;

}

而源文件B:B_MODULE.c中,

#include “A_MODULE.h”

int ret = func(10,5);/

展开头文件A_MODULE.h后,为

extern int func(int a, int b);/*暗示在别的源文件中定义,所以在下面使用func(5,10)时,在链接的时候到别的目标文件中寻找定义*/

int ret = func(10,5);



Tags in this post...

面试题 相关文章推荐
六道php面试题附答案
Jun 05 面试题
上海奥佳笔试题面试题
Nov 16 面试题
Oracle中delete,truncate和drop的区别
May 05 面试题
北京RT科技有限公司.net工程师面试题
Feb 15 面试题
RIP版本1跟版本2的区别
Dec 30 面试题
C#面试题
May 06 面试题
Linux的主要特性
Oct 06 面试题
linux系统都有哪些运行级别
Mar 26 面试题
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
Mar 30 面试题
Java中各种基本数据类型的默认值都是什么
Dec 22 面试题
Java中的异常处理机制的简单原理和应用
Apr 27 面试题
四种会话跟踪技术
May 20 面试题
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
Dec 07 #面试题
请写出char *p与"零值"比较的if语句
Sep 24 #面试题
iostream与iostream.h的区别
Jan 16 #面试题
经典c++面试题六
Jan 18 #面试题
在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern "C"
Aug 09 #面试题
下面关于"联合"的题目的输出是什么
Aug 06 #面试题
"引用"与指针的区别是什么
Sep 07 #面试题
You might like
修改PHP的memory_limit限制的方法分享
2012/02/21 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
ThinkPHP 5.1 跨域配置方法
2019/10/11 PHP
JavaScript 空位补零实现代码
2010/02/26 Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
2010/05/07 Javascript
input按钮的事件处理大全
2010/12/10 Javascript
javascript监听鼠标滚轮事件浅析
2014/06/05 Javascript
javascript刷新父页面的各种方法汇总
2014/09/03 Javascript
JavaScript按值删除数组元素的方法
2015/04/24 Javascript
JQuery复制DOM节点的方法
2015/06/11 Javascript
js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问
2015/09/14 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
2016/09/06 Javascript
使用JS读取XML文件的方法
2016/11/25 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
React Router基础使用
2017/01/17 Javascript
JavaScript判断浏览器和hack滚动条的写法
2017/07/23 Javascript
浅谈关于iview表单验证的问题
2018/09/29 Javascript
JavaScript对象的特性与实践应用深入详解
2018/12/30 Javascript
Javascript Worker子线程代码实例
2020/02/20 Javascript
JS hasOwnProperty()方法检测一个属性是否是对象的自有属性的方法
2021/01/29 Javascript
JS获取一个字符串中指定字符串第n次出现的位置
2021/02/10 Javascript
Python 2/3下处理cjk编码的zip文件的方法
2019/04/26 Python
Python3中函数参数传递方式实例详解
2019/05/05 Python
对于Python深浅拷贝的理解
2019/07/29 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
Python面向对象中类(class)的简单理解与用法分析
2020/02/21 Python
利用python实现逐步回归
2020/02/24 Python
澳大利亚首屈一指的在线购物目的地:Kogan.com
2017/02/02 全球购物
GUESS西班牙官方网上商城:美国服饰品牌
2017/03/15 全球购物
家庭户外服装:Hawkshead
2017/11/02 全球购物
美国廉价机票预订网站:Cheapfaremart
2018/04/28 全球购物
什么是重载?CTS、CLS和CLR分别做何解释
2012/05/06 面试题
中专生毕业个人鉴定
2014/02/26 职场文书
个人培训自我鉴定
2014/03/28 职场文书
《我是什么》教学反思
2016/02/16 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers