AI文库-您身边的智能助手,如没有想要的内容请与本站万能的AI助手联系。

c软件开发笔试题目

时间: 热度:°C 加入收藏 我要投稿 点赞()

c软件开发笔试题目

  C++代码· C++设计成静态类型、和C同样高效且可移植的多用途程序设计语言。下面就由第一范文网小编为大家介绍一下c++软件开发笔试题目的文章,欢迎阅读。

  c++软件开发笔试题目篇1

  1、(4分)用变量a给出下面的定义

  a) 一个整型数;

  b)一个指向整型数的指针;

  c)一个指向指针的指针,它指向的指针是指向一个整型数;

  d)一个有10个整型的数组;

  e)一个有10个指针的数组,该指针是指向一个整型数;

  f)一个指向有10个整型数数组的指针;

  g)一个指向函数的指针,该函数有一个整型参数并返回一个整型数;

  h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数

  答案:

  a)int a

  b)int *a;

  c)int a;

  d)int a[10];

  e)int *a [10];

  f) int (*a)[10]

  g)int (*a)(int)

  h) int( *a[10])(int)

  2、(4分)请写出以下语句的输出结果:

  Int i=43;

  Int j=5;

  Double f=25.45181;

  a) printf(“i=%d,j=%d,f=%3.2f”,i,j,f);

  b) printf(“i=%x,j=%06d,i/j=%d”,i,j,i/j);

  答案:

  A)i=43,j=5,f=25.45

  (说明:本来应该输出最小3位有效数字,25.5,但是由于限定了2位小数,所以强制有2位小数,有效数字的个数就起不到强制作用了。如果是%3.1,则输出为25.5)

  B)i=2B ,j=000005,i/j=8

  (%x显示的是一个无符号的0x 16进制的整数,%06d输出的是6位数,不够6位数,前面补0,i/j两个整数相除,只取商的整数值)

  3、(2分)请完成以下宏定义:

  a)用预处理指令#define 声明一个常数,用以表明1年中有多少个秒(忽略闰年问题) b)写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个

  答案:

  a)#define SECONDS (365*24*60*60)UL

  b) #define MIN(a,b) ((A)<(B)?(A):(B))

  扩展:MAX宏 #define MAX ((A)>(B)?(A):(B))

  ABS宏 #define ABS (((X)>0)?(X):(-(X)))

  4、(6分)以下为32为windows下的c++程序,请计算:

  a)

  char str=”hello”;

  char *p=str;

  请计算:

  sizeof(str)=6

  sizeof(p)=4

  strlen(p)=5

  答案:6,字符串数组以\0(空格为结尾,所以str数组空间大小为5+1)

  4,计算的是指针的长度。

  5,strlen函数区的字符指针str的长度,不包括空字符。

  b)

  void func(char str[100])

  {

  Void *p=malloc(100);

  }

  请计算:

  sizeof(str)=100,:表示在内存中预分配的内存大小。

  sizeof (p)=4

  c)

  int a[3]={1,2,3};

  int b=sizeof(a)/sizeof(a[0]); sizeof(a)求的是数组的大小。

  请计算:

  b=3,对的。

  5、(2分) 设有定义:int n=0,*p=&n,q=&p; 则以下选项中,正确的赋值语句是(d) a)p=1; b)*q=2; c)q=p; d)*p=5;

  (c)改成q=&p; 才对。

  6、(2分)const关键字的用途?(至少说明两种)

  答案:

  (1)可以定义 const 常量

  (2)const 可以修饰函数的参数、返回值,甚至函数的定义体。被const 修饰的东 西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。

  (3)const可以用来修饰指针变量,控制指针变量的存取规则。

  c++软件开发笔试题目篇2

  1、(2分)typedef的c语言中频繁用以声明一个已经存在的数据类型的同义词。也可以用以预处理器做类似的事情。例如:

  #define dps struct s*

  Typedef struct s * tps;

  以上两种情况的意图都是要定义dps和tps作为一个指向结构s指针。哪种方法更好一些呢?(如果有的话)为什么? 考虑安全性还是用typedef好,宏定义在编译时是不检查的,只是简单替换,而typedef编译时要检查的 typedef,而且typedef,define并非等价,如#define string1 char *

  typedef char *string2;第二种才能达到预想效果, string1 a,b;

  得到的b是char

  define是做替换的,typedef 则是重新定义一种数据类型的。可以向int型一样使用的。

  #define FIND(struct,e) (size_t) &(((struct*)0)->e)

  typedef是语句( 以';'结尾)

  Typedef。它在自己的作用域内给一个已经存在的类型一个别名

221381
领取福利

微信扫码领取福利

微信扫码分享