- 相关推荐
泰道控制系统设备硬件开发工程师笔试题
选择题
1:下述程序执行后的输出结果是( )。
#include
main()
{
int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&;a[1];
for (x=0;x<;3;x++)
y+=*(p+x+;
printf("%d ",y);
}
a.17
b.18
c.19
d.20
2:c 语句“ x*=y+2 ;”还可以写作
a.x=x*y+2;
b.x=2+y*x;
c.x=x*(y+2);
d.x=y+2*x;
3:定义宏将两个 float 类型变量中的数据交换,下列写法中最好的是
a.# define jh(a,b) t=a;a=b;b=t;
b.# define jh(a,b) {float t;t=a;a=b;b=t;}
c.# define jh(a,b) a=b;b=a;
d.# define jh(a,b,t) t=a;a=b;b=t;
4:下述程序执行后的输出结果是
#include
main()
{
int x=''f'';
printf("%c ",''a''+(x-''a''+1));
}
a.g
b.h
c.i
d.j
5:在某文件中,若全局变量与局部变量同名,则
a.视为同一个变量
b.变量作用域不确定
c.不允许
d.允许
6:常数的书写格式决定了常数的类型和值, 0x1011 是
a.8 进制整型常量
b.字符常量
c.16 进制整型常数
d.2 进制整型常数
7:设double * p[6];则
a.p是指向double型变量的指针
b.p是double型数组
c.p是指针数组,其元素是指向double型变量的指针
d.p是数组指针,指向double型数组
8:对于do-while语句,错误的说法是
a.先执行循环体后判断循环条件
b.循环体至少要执行一次
c.循环体有可能一次也不执行
d.循环体中可以包含若干条语句
9:求一个双精度实数的绝对值,应该调用函数
a.sqrt
b.pow
c.abs
d.fabs
10:以下叙述中不正确的是
a.在不同的函数中可以使用相同名字的变量
b.函数中的形式参数是局部变量
c.在一个函数内定义的变量只在本函数范围内有效
d.在一个函数内的复合语句中定义的变量在本函数范围内有效
11:设有定义“int a=3, b,*p=&;a;”,则下列语句中使 b不为3的语句是
a.b=* &;a;
b.b=* p;
c.b=a;
d.b=*a;
12:下列程序的运行结果是( )
main( )
{ int a[][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int (*p)[4],i=2,j=1;
p=a;
printf(″%d ″,*(*(p+i)+j));
}
a.9
b.11
c.17
d.19
13:数据-35.78在文本文件中占用的字节个数是
a.4
b.5
c.6
d.8
14:下列说法中错误的是
a.c语言中循环嵌套的层数没有限定
b.c语言中的内部函数只能在本文件中被调用
c.用typedef语句定义的数据类型名称必须是大写字母
d.c语言中的continue语句,可以通过改变程序的结构而省略
简答题
15:已知:无序数组,折半查找,各元素值唯一。函数原型是:binary_seach(int array[], int ivalue, int icount),array是数组,在里面用折半查找的方法找等于ivalue的值,找到返回1否则0,icount是元素个数。
16:写一个方法,在java,c/c++源代码中,检查花括弧(是“(”与 “)”,“{”与“}”)是否匹配,若不匹配,则输出不匹配花括弧所在的行与列。
17:输入一个五位以内的正整数,(1)判断它是一个几位数;(2)请按序输出其各位数字;(3)逆序输出其各位数字。
如输入:56439,输出:5位数
5,6,4,3,9
9,3,4,6,5
18:下面的代码有什么问题?
char *_strdup( const char *strsource )
{
static char str[max_str_len];
strcpy(str, strsource);
return str;
}
19:输入一字符串,检查是否回文 (回文是指正反序相同,如,level),若是则输出“yes”,否则输出“no”。
20:阅读下列程序段,简述其主要功能。
#include
void main()
{
file*fpd1, *fpd2;
char ch;
fpd1=fopen(“d1.dat”,“r”) ;
fpd2=fopen(“d2.dat”,“w”) ;
while(fscanf(fpd1,“%c”,&;ch)!=eof)
if (ch>;=''a''&;&; ch <;=''z'' ‖ ch>;=''a''&;&; ch<;=''z'')
fprintf(fpd2,“%c”,ch);
fclose(fpd1);
fclose(fpd);
}
21:试将下列递归过程改写为非递归过程。
void test(int &;sum)
{ int x;
scanf(x);
if(x=0) sum=0 else {test(sum); sum+=x;}
printf(sum);
}
22:对给定记录的序号k(1
23:write a program to remove all trailing blanks and tabs from each line of input, and to delete entirely blank lines.
24:int func(int a)
{
int b;
switch(a)
{
case 1: 30;
case 2: 20;
case 3: 16;
default: 0
}
return b;
}
则func(1)=?
25:write a function reverse(s) that reverses the character string s . use it to write a program that reverses its input a line at a time.
【泰道控制系统设备硬件开发工程师笔试题】相关文章:
硬件工程师的面试试题03-17
星网锐捷硬件开发的笔试题目11-21
迈瑞笔试题目硬件研发工程师11-21
测试开发工程师笔试题09-25
网易web开发工程师的笔试题分享11-21
泰鼎笔试题分享11-21
泰科流体笔试 笔经分享11-21
联发科硬件笔试题07-19
华为硬件笔试题考点分析11-18
大唐移动测试工程师笔经,笔试题目分享11-21