华为c语言笔试

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

华为C语言笔试题

标签:笔试题目 时间:2021-04-30
【yjbys.com - 笔试题目】

  一、判断题(对的.写t,错的写f并说明原因,每小题4分,共20分)

  1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )

  2、int (*ptr) (),则ptr是一维数组的名字。( )

  3、指针在任何情况下都可进行>, <, >=, <=, = =运算。( )

  4、switch(c) 语句中c可以是int, long, char, float, unsigned int 类型。( )

  5、#define print(x) printf("the no, "#x",is ")

  二、填空题(共30分)

  1、在windows下,写出运行结果,每空2分,共10分。

  char str[ ]= "hello";

  char *p=str;

  int n=10;

  sizeof(str)=( )

  sizeof(p)=( )

  sizeof(n)=( )

  void func(char str[100])

  { }

  sizeof(str)=( )

  2、void setmemory(char **p, int num)

  { *p=(char *) malloc(num);}

  void test(void)

  { char *str=null;

  getmemory(str,100);

华为笔试题(C语言)

标签:笔试题目 时间:2021-04-25
【yjbys.com - 笔试题目】

一、判断题(对的`写T,错的写F并说明原因,每小题4分,共20分)

1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )

2、int (*ptr) (),则ptr是一维数组的名字。( )

3、指针在任何情况下都可进行>, <, >=, <=, = =运算。( )

4、switch(c) 语句中c可以是int, long, char, float, unsigned int 类型。( )

5、#define print(x) printf("the no, "#x",is ")

二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。

char str[ ]= "Hello";

char *p=str;

int n=10;

sizeof(str)=( )

sizeof(p)=( )

sizeof(n)=( )

void func(char str[100])

{ }

sizeof(str)=( )

2、void setmemory(char **p, int num)

{ *p=(char *) malloc(num);}

void test(void)

{ char *str=NULL;

getmemory(&str,100);

strcpy(str,"hello");

printf(str);

}

运行test函数有什么结果?( )10分

华为C语言笔试题目分享

标签:综合指导 时间:2021-03-18
【yjbys.com - 综合指导】

  华为C语言笔试题目分享:

  一、判断

  1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。()

  2、int(*ptr)(),则ptr是一维数组的名字。()

  3、指针在任何情况下都可进行>,<,>=,<=,==运算。()< p="">

  4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()

  5、#defineprint(x)printf("theno,"#x",is")

  二、填空

  1、在windows下,写出运行结果,每空2分,共10分。

  charstr[]="Hello";

  char*p=str;

  intn=10;

  sizeof(str)=()

  sizeof(p)=()

  sizeof(n)=()

  voidfunc(charstr[100])

  {}

  sizeof(str)=()

  2、voidsetmemory(char**p,intnum)

  {*p=(char*)malloc(num);}

  voidtest(void)

  {char*str=NULL;

  getmemory(&str,100);

  strcpy(str,"hello");

  printf(str);

  }

  运行

  test函数有什么结果?()

华为笔试题及分析目(C语言篇)

标签:面试笔试 时间:2021-02-11
【yjbys.com - 面试笔试】

华为笔试题及分析目(C语言篇)

一、判断题(对的写T,错的'写F并说明原因,每小题4分,共20分)

1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )

2、int (*ptr) (),则ptr是一维数组的名字。( )

3、指针在任何情况下都可进行>, <, >=, <=, = =运算。( )

4、switch(c) 语句中c可以是int, long, char, float, unsigned int 类型。( )

5、#define print(x) printf("the no, "#x",is ")

二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。

char str[ ]= "Hello";

char *p=str;

int n=10;

sizeof(str)=( )

sizeof(p)=( )

sizeof(n)=( )

void func(char str[100])

{ }

sizeof(str)=( )

2、void setmemory(char **p, int num)

{ *p=(char *) malloc(num);}

void test(void)

{ char *str=NULL;

getmemory(&str,100);

strcpy(str,"hello");

printf(str);

}

运行test函数有什么结果?( )10分

华为的最近的C语言笔试题

标签:综合指导 时间:2021-02-11
【yjbys.com - 综合指导】

一、判断题(对的写T,错的.写F并说明原因,每小题4分,共20分)

1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )

2、int (*ptr) (),则ptr是一维数组的名字。( )

3、指针在任何情况下都可进行>, <, >=, <=, = =运算。( )

4、switch(c) 语句中c可以是int, long, char, float, unsigned int 类型。( )

5、#define print(x) printf("the no, "#x",is ")

二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。

char str[ ]= "Hello";

char *p=str;

int n=10;

sizeof(str)=( )

sizeof(p)=( )

sizeof(n)=( )

void func(char str[100])

{ }

sizeof(str)=( )

2、void setmemory(char **p, int num)

{ *p=(char *) malloc(num);}

void test(void)

{ char *str=NULL;

getmemory(&str,100);

strcpy(str,"hello");

printf(str);

2012年华为C语言笔试题

标签:笔试题目 时间:2021-01-15
【yjbys.com - 笔试题目】

  各位朋友们,如果想要知道2012年华为C语言主要考查的,那么,敬请关注下文:

  一、判断题(对的写T,错的'写F并说明原因,每小题4分,共20分)

  1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。()

  2、int(*ptr)(),则ptr是一维数组的名字。()

  3、指针在任何情况下都可进行>,<,>=,<=,==运算。()

  4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()

  5、#defineprint(x)printf("theno,"#x",is")

  二、填空题(共30分)

  1、在windows下,写出运行结果,每空2分,共10分。

  charstr[]="Hello";

  char*p=str;

  intn=10;

  sizeof(str)=()

  sizeof(p)=()

  sizeof(n)=()

  voidfunc(charstr[100])

  {}

  sizeof(str)=()

  2、voidsetmemory(char**p,intnum)

  {*p=(char*)malloc(num);}

  voidtest(void)

  {char*str=NULL;

  getmemory(&str,100);

华为最新C语言笔试题目

标签:笔试题目 时间:2020-12-14
【yjbys.com - 笔试题目】

  一、判断

  1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。()

  2、int(*ptr)(),则ptr是一维数组的名字。()

  3、指针在任何情况下都可进行>,<,>=,<=,==运算。()

  4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()

  5、#defineprint(x)printf("theno,"#x",is")

  二、填空

  1、在windows下,写出运行结果,每空2分,共10分。

  charstr[]="Hello";

  char*p=str;

  intn=10;

  sizeof(str)=()

  sizeof(p)=()

  sizeof(n)=()

  voidfunc(charstr[100])

  {}

  sizeof(str)=()

  2、voidsetmemory(char**p,intnum)

  {*p=(char*)malloc(num);}

  voidtest(void)

  {char*str=NULL;

  getmemory(&str,100);

  strcpy(str,"hello");

  printf(str);

  }

  运行

  test函数有什么结果?()

华为C语言类笔试题目

标签:笔试题目 时间:2020-12-08
【yjbys.com - 笔试题目】

一、判断题(对的写T,错的`写F并说明原因,每小题4分,共20分)

  1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。()

  2、int(*ptr)(),则ptr是一维数组的名字。()

  3、指针在任何情况下都可进行>,<,>=,<=,==运算。()

  4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()

  5、#defineprint(x)printf("theno,"#x",is")

  二、填空题(共30分)

  1、在windows下,写出运行结果,每空2分,共10分。

  charstr[]="Hello";

  char*p=str;

  intn=10;

  sizeof(str)=()

  sizeof(p)=()

  sizeof(n)=()

  voidfunc(charstr[100])

  {}

  sizeof(str)=()

  2、voidsetmemory(char**p,intnum)

  {*p=(char*)malloc(num);}

  voidtest(void)

  {char*str=NULL;

  getmemory(&str,100);

  strcpy(str,"hello");

华为c语言笔试面试题题库

标签:华为认证 时间:2020-11-09
【yjbys.com - 华为认证】

  你知道什么是华为认证吗?华为认证涉及到什么程序语言呢?下面yjbys小编就为大家揭晓关于华为认证的笔试面试题库及答案,希望对大家有所帮助!

  1、局部变量能否和全局变量重名

  答:能,局部会屏蔽全局。要用全局变量,需要使用"::"

  局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。

  2、如何引用一个已经定义过的全局变量

  答:extern

  可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个变写错了,那么在编译期间会报错,如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在连接期间报错。

  3、全局变量可不可以定义在可被多个.C文件包含的头文件中 为什么

  答:可以,在不同的C文件中以static形式来声明同名全局变量。

  可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错

  4、语句for( ;1 ;)有什么问题 它是什么意思

  答:和while(1)相同。

  5、do……while和while……do有什么区别

华为招聘-C语言笔试试题

标签:笔试题目 时间:2020-11-07
【yjbys.com - 笔试题目】

一、判断题(对的写T,错的写F并说明原因,每小题4分,共20分)
1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。(     )
2、int (*ptr) (),则ptr是一维数组的'名字。(     )
3、指针在任何情况下都可进行>,<,>=,<=,==运算。(     )
4、switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。(   )
5、#define print(x)  printf("the no, "#x",is ")
 
二、填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。
char str[ ]= "Hello";
char *p=str;
int n=10;
sizeof(str)=(      )
sizeof(p)=(       )
sizeof(n)=(       )
void func(char str[100])
{    }
sizeof(str)=(     )
 
2、void setmemory(char **p, int num)
{ *p=(char *) malloc(num);}
void test(void)
{  char *str=NULL;
   getmemory(&str,100);
   strcpy(str,"hello");
   printf(str);
}
运行test函数有什么结果?(                                )10分
 
3、设int arr[]={6,7,8,9,10};
     int *ptr=arr;
   *(ptr++)+=123;
 printf("%d,%d",*ptr,*(++ptr));
(                                   ) 10分
 
二、编程题(第一小题20,第二小题30分)
1、  不使用库函数,编写函数int strcmp(char  *source, char *dest)
相等返回0,不等返回-1;
 2、  写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
五、 阅读程序题(每个小题5分,共20分)
1.阅读以下程序,概括地写出程序的功能。
#i nclude
double Exp(double x)
{ double sum=1.0;
double term=x;
double i=1 ;
while (term>=1.0E-8)
{ sum+=term ;
i++;
term=term*x/i ;
}
return sum ;
}
void main()
{ double s;
s=Exp(1.0)+Exp(2.0);
cout.precision(8);
cout<<"s="<<
}
2. 阅读程序,写出程序执行时输出结果。
#i nclude
const int SIZE=10;
class stack
{ char stck[SIZE];
int top;
public:
void init();
void push(char ch);
char pop();
};
void stack::init()
{ top=0; }
void stack::push(char ch)
{ if(top==SIZE)
 { cout<<"Stack is full.\n";
return ;
 }
stck[top++]=ch;
}
char stack::pop()
{ if(top==0)
   { cout<<"Stack is empty.\n";
   return 0;
}
return stck[--top];
}
void main()
{ stack s1, s2;
 s1.init();
 s2.init();
 s1.push('a');
 s1.push('b');
 s1.push('c');
 s2.push('x');
 s2.push('y');
 s2.push('z');
 for(int i=0; i<3; i++)
cout<<"Pop s1:"<<
 for(i=0; i<3; i++)
cout<<"Pop s2:"<<
}
程序结果:
3.阅读程序,写出程序运行时输出结果。
#i nclude
class Tdate
{ public:
Tdate();
Tdate(int d);
Tdate(int m, int d);
Tdate(int m, int d, int y);
protected:
int month;
int day;
int year;
};
Tdate::Tdate()
{ month=4;
   day=15;
   year=1995;
cout<<<"/" <<<"/" <<
}
Tdate::Tdate(int d)
{ month=4;
   day=d;
  year=1996;
cout<<<"/" <<<"/" <<
}
Tdate::Tdate(int m, int d)
{ month=m;
   day=d;
   year=1997;
cout<<<"/" <<<"/" <<
}
Tdate::Tdate(int m, int d, int y)
{ month=m;
   day=d;
   year=y;
cout<<<"/" <<<"/" <<
}
void main()
{ Tdate aday;
Tdate bday(10);
Tdate cday(2,12);
Tdate dday(1,2,1998);
}
运行结果:
4.阅读程序,写出程序运行时输出结果。
#i nclude
#i nclude
class shape
{ public:
shape(double x, double y):xCoord(x), yCoord(y){}
virtual double Area()const {return 0.0; }
protected:
double xCoord, yCoord;
};
class AA :public shape
{ public:
AA(double x, double y, double r): shape(x,y), rad(r){}
virtual double Area()const { return 3.0 * rad * rad; }
protected:
double rad;
};
class BB :public shape
{ public:
BB(double x1, double y1, double x2, double y2)
:shape(x1, y1), x2Coord(x2), y2Coord(y2){ }
virtual double Area()const;
protected:
double x2Coord, y2Coord;
};
double BB:Area()const
{ return fabs((xCoord-x2Coord)* (yCoord - y2Coord));
//库函数fabs(double t)求得t的绝对值
}
void fun(const shape& sp)
{ cout<<
}
void main()
{ AA aa(2.0, 5.0, 4.0);
fun(aa);
BB bb(2.0, 8.0, 12.0, 17.0);
fun(bb);
}
运行结果:
六、 编写程序题(每小题10分,共20分)
1.编写一个函数int Judge(int *pArray, int n),判断一个n×n二维整数数组pArray 是否为“魔方阵”,若是返回1,否则返回0。所谓魔方阵就是将1到n2的各个数字组成的方阵,它的每一行、每一列以及两个对角线上数字之和均相等。例如,3×3的中,A是魔方阵,而B不是魔方阵。然后在主程序中调用Judge函数判断数组A是否为魔方阵。
参考程序
#i nclude
int Judge(int *pArray, int n)
{ int s1, s2, s3,s4,sum=0;
int *p=pArray;
for(int i=1; i<= n*n; i++)
{ int Found=0; //为0,不在方阵中;
for(int j=0; j
if(p[j]==i)
{ Found=1; //为1,在方阵中
break;
}
if(Found==0) return 0; // 值为 i 的元素不在数组中,显然不是魔方阵
}
for( i=1; i<=n*n; i++)
sum=sum+i;
sum=sum / n; // 各行、各列、对角线元素应当得到的和
s3=0;
s4=0;
for( i=0; i
{ s1=0, s2=0;
p=pArray;
for(int j=0; j
{ s1=s1+p[i*n+j]; //第i行的元素和
 s2=s2+p[j*n+i]; //第i列的元素和
}
if ( s1!=sum)
return 0;
if ( s2!=sum)
return 0;
s3=s3+pArray[i*n+i];     // 对角线一元素和
s4=s4+pArray[i*n+(n-1-i)]; // 对角线二元素和
}
if(s3!=sum)
return 0;
if(s4 != sum)
return 0;
return 1;
}
void main()
{ int Array[3][3]={{ 8, 1, 6},{ 3, 5, 7},{ 4, 9, 2}};
当 x 输入值为9999时,函数返回值为多少?
int fun ( unsigned int x )
{ int count = 0;
while(x)
{
x = x & (x-1);
count++;
}
return count;
}
答案:此函数是在计算 x 中含有1的个数,所以返回值为8。
if(Judge((int*)Array, 3))
cout<<"Yes, it's a magic array"<
else
cout<<"No, it isn't a magic array"<
}
/*********************************
* 两个超大数相乘算法
*********************************/
#i nclude
void main()
{
int a[30],b[30],c[60];
int i,j;
/* 给乘数和被乘数赋值,并把结果赋零 */
for (i=0;i<30;i++)
{
a[i]=i%10;
b[i]=i%10;
c[2*i]=0;
c[2*i+1]=0;
}
/* 给每位结果赋值,这里应该考虑清楚为什么这么写
还有这里的位的值的最大限度应该是-128 -- +127
所以就算是10*10也可以满足存进去一个char类型里 */
for(i=0;i<30;i++)
for(j=0;j<30;j++)
c[i+j]+=a[i]*b[j];
/* 这里把每个位>10的数进位和把余数重新赋值给这一位 */
for(i=0;i<59;i++)
{
c[i+1]+=c[i]/10;
c[i]=c[i]%10;
}
/* 打印出来 */
for(i=0;i<30;i++)
printf("%d",a[30-i-1]);
printf("\n");
for(i=0;i<30;i++)
printf("%d",b[30-i-1]);
printf("\n");
for(i=0;i<60;i++)
printf("%d",c[60-i-1]);
printf("\n");
}