我要投稿 投诉建议

C语言笔试题目

时间:2020-12-23 14:14:04 笔试题目 我要投稿

C语言笔试题目

  C语言是现今社会重要的编程语言之一。C语言笔试问题有哪些呢?我们来看看吧。

C语言笔试题目

  C语言笔试题目:

  1.Ethternet链接到Internet用到以下那个协议? D

  A.HDLC;B.ARP;C.UDP;D.TCP;E.ID

  2.属于网络层协议的是:( B C)

  A.TCP;B.IP;C.ICMP;D.X.25

  3.Windows消息调度机制是:(C)

  A.指令队列;B.指令堆栈;C.消息队列;D.消息堆栈;

  4.Windows下的内存是如何管理的?

  分页管理

  5.谈谈IA32下的分页机制

  小页(4K)两级分页模式,大页(4M)一级

  6.给两个变量,如何找出一个带环单链表中是什么地方出现环的?

  一个递增一,一个递增二,他们指向同一个接点时就是环出现的地方

  7.请问以下代码有什么问题:

  1).

  int main()

  {

  char a;

  char *str=&a;

  strcpy(str,"hello");

  printf(str);

  return 0;

  }

  答;没有为str分配内存空间,将会发生异常

  问题出在将一个字符串复制进一个字符变量指针所指地址。虽然可以正确输出结果,但因为越界进行内在读写而导致程序崩溃。

  Strcpy的在库函数string.h中.程序的主要错误在于越界进行内存读写导致程序崩溃//

  2).

  char* s="AAA";

  printf("%s",s);

  s[0]='B';

  printf("%s",s);

  有什么错?

  答: "AAA"是字符串常量。s是指针,指向这个字符串常量,所以声明s的时候就有问题。

  cosnt char* s="AAA";

  然后又因为是常量,所以对是s[0]的赋值操作是不合法的。

  8. 什么是预编译,何时需要预编译:

  答: 就是指程序执行前的一些预处理工作,主要指#表示的.

  何时需要预编译?

  1)、总是使用不经常改动的大型代码体。

  2)、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。

  9. 下述三个有什么区别?

  char * const p;

  char const * p

  const char *p

  解答:

  char * const p; //常量指针,p的值不可以修改

  char const * p;//指向常量的指针,指向的常量值不可以改

  const char *p; //和char const *p

  10、请找出下面代码中的所有错误 (题目不错,值得一看)

  说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba”

  #include"string.h"

  main()

  {

  char*src="hello,world";

  char* dest=NULL;

  int len=strlen(src);

  dest=(char*)malloc(len);

  char* d=dest;

  char* s=src[len];

  while(len--!=0)

  d++=s--;

  printf("%s",dest);

  return 0;

  }

  答:

  方法1:一共有4个错误;

  int main()

  {

  char* src = "hello,world";

  int len = strlen(src);

  char* dest = (char*)malloc(len+1);//要为分配一个空间    char* d = dest;

  char* s = &src[len-1]; //指向最后一个字符

  while( len-- != 0 )

  *d++=*s--;

  *d = 0; //尾部要加’\0’

  printf("%sn",dest);

  free(dest); // 使用完,应当释放空间,以免造成内存汇泄露

  dest = NULL;   //防止产生野指针

  return 0;

  }

  方法2: (方法一需要额外的存储空间,效率不高.) 不错的想法

  #include

  #include

  main()

  {

  char str[]="hello,world";

  int len=strlen(str);

  char t;

  for(int i=0; i

  {

  t=str[i];

  str[i]=str[len-i-1]; //小心一点

  str[len-i-1]=t;

  }

  printf("%s",str);

  return 0;

  }

  11.对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现?

  c用宏定义,c++用inline

  12.直接链接两个信令点的一组链路称作什么?

  PPP点到点连接

  13.接入网用的是什么接口?

  V5接口

  14.voip都用了那些协议?

  H.323协议簇、SIP协议、Skype协议、H.248和MGCP协议

  15.软件测试都有那些种类?

  黑盒:针对系统功能的测试

  白盒:测试函数功能,各函数接口

  16.确定模块的功能和模块的接口是在软件设计的那个队段完成的?

  概要设计阶段

  17.

  unsigned char *p1;

  unsigned long *p2;

  p1=(unsigned char *)0x801000;

  p2=(unsigned long *)0x810000;

  请问p1+5= ;

  p2+5= ;

  答案:0x801005(相当于加上5位) 0x810014(相当于加上20位);

  18、关键字const有什么含意?

  答 :1)表示常量不可以修改的`变量。

  2)可以修饰参数,作为输入参数.

  3)修饰函数,防止以外的改动.

  4)修饰类的成员函数,不改变类中的数据成员.

  19、关键字volatile有什么含意?并举出三个不同的例子?

  答: 提示编译器对象的值可能在编译器未监测到的情况下改变。

  例子: 硬件时钟;多线程中被多个任务共享的变量等

  20. int (*s[10])(int) 表示的是什么啊

  int (*s[10])(int) 函数指针数组,每个指针指向一个int func(int param)的函数。

  21.有以下表达式:

  int a=248; b=4;int const c=21;const int *d=&a;

  int *const e=&b;int const *f const =&a;

  请问下列表达式哪些会被编译器禁止?为什么?

  答:*c=32;d=&b;*d=43;e=34;e=&a;f=0x321f;

  *c 这是个什么东东,禁止

  *d 说了是const, 禁止

  e = &a 说了是const 禁止

  const *f const =&a; 禁止

  22.交换两个变量的值,不使用第三个变量。即a=3,b=5,交换之后a=5,b=3;

  答:有两种解法, 一种用算术算法, 一种用^(异或)

  a = a + b;

  b = a - b;

  a = a - b;

  or

  a = a^b;// 只能对int,char..

  b = a^b;

  a = a^b;

  or

  a ^= b ^= a;

  23.c和c++中的struct有什么不同?

  答: c和c++中struct的主要区别是c中的struct不可以含有成员函数,而c++中的struct可以。c++中struct和class的主要区别在于默认的存取权限不同,struct默认为public,而class默认为private.

  24.#include

  #include

  void getmemory(char *p)

  {

  p=(char *) malloc(100);

  }

  int main( )

  {

  char *str=NULL;

  getmemory(str);

  strcpy(p,"hello world");

  printf("%s/n",str);

  free(str);

  return 0;

  }

  答: 程序崩溃,getmemory中的malloc 不能返回动态内存, free()对str操作很危险

  25.char szstr[10];

  strcpy(szstr,"0123456789");

  产生什么结果?为什么?

  答;正常输出,长度不一样,会造成非法的OS,覆盖别的内容.

  26.列举几种进程的同步机制,并比较其优缺点。

  答:原子操作

  信号量机制

  自旋锁

  管程,会合,分布式系统

  27.进程之间通信的途径

  答 共享存储系统

  消息传递系统

  管道:以文件系统为基础

【C语言笔试题目】相关文章:

C语言笔试题目及答案05-07

华为c语言笔试题07-23

有趣的C语言笔试题06-09

计算机二级C语言笔试题目05-15

关于C语言游戏开发笔试题06-19

中兴通讯C++/C笔试题06-20

it笔试题目07-07

会计笔试常见笔试题目06-20

联想C++笔试题05-07