- 相關(guān)推薦
2016年嵌入式面試C語言試題「精選」
第1題: 考查對(duì)volatile關(guān)鍵字的認(rèn)識(shí)
#include
static jmp_buf buf;
main()
{
volatile int b;
b =3;
if(setjmp(buf)!=0)
{
printf("%d ", b);
exit(0);
}
b=5;
longjmp(buf , 1);
}
請(qǐng)問, 這段程序的輸出是
(a) 3
(b) 5
(c) 0
(d) 以上均不是
第2題:考查類型轉(zhuǎn)換
main()
{
struct node
{
int a;
int b;
int c;
};
struct node s= { 3, 5,6 };
struct node *pt = &s;
printf("%d" , *(int*)pt);
}
這段程序的輸出是:
(a) 3
(b) 5
(c) 6
(d) 7
第3題:考查遞歸調(diào)用
int foo ( int x , int n)
{
int val;
val =1;
if (n>0)
{
if (n%2 == 1) val = val *x;
val = val * foo(x*x , n/2);
}
return val;
}
這段代碼對(duì)x和n完成什么樣的功能(操作)?
(a) x^n (x的n次冪)
(b) x*n(x與n的乘積)
(c) n^x(n的x次冪)
(d) 以上均不是
第4題:考查指針,這道題只適合于那些特別細(xì)心且對(duì)指針和數(shù)組有深入理解的人
main()
{
int a[5] = {1,2,3,4,5};
int *ptr = (int*)(&a+1);
printf("%d %d" , *(a+1), *(ptr-1));
}
這段程序的輸出是:
(a) 2 2
(b) 2 1
(c) 2 5
(d) 以上均不是
第5題:考查多維數(shù)組與指針
void foo(int [][3]);
main()
{
int a [3][3]= { { 1,2,3} , { 4,5,6},{7,8,9}};
foo(a);
printf("%d" , a[2][1]);
}
void foo(int b[][3])
{
++ b;
b[1][1] =9;
}
這段程序的輸出是:
(a) 8
(b) 9
(c) 7
(d)以上均不對(duì)
第6題:考查逗號(hào)表達(dá)式
main()
{
int a, b,c, d;
a=3;
b=5;
c=a,b;
d=(a,b);
printf("c=%d" ,c);
printf("d=%d" ,d);
}
這段程序的輸出是:
(a) c=3 d=3
(b) c=5 d=3
(c) c=3 d=5
(d) c=5 d=5
第7題:考查指針數(shù)組
main()
{
int a[][3] = { 1,2,3 ,4,5,6};
int (*ptr)[3] = a;
printf("%d %d ", (*ptr)[1], (*ptr)[2]);
++ptr;
printf("%d %d" , (*ptr)[1], (*ptr)[2]);
}
這段程序的輸出是:
(a) 2 3 5 6
(b) 2 3 4 5
(c) 4 5 0 0
(d) 以上均不對(duì)
第8題:考查函數(shù)指針
int *f1(void)
{
int x =10;
return(&x);
}
int *f2(void)
{
int*ptr;
*ptr =10;
return ptr;
}
int *f3(void)
{
int *ptr;
ptr=(int*) malloc(sizeof(int));
return ptr;
}
上面這3個(gè)函數(shù)哪一個(gè)最可能引起指針方面的問題
(a) 只有 f3
(b) 只有f1 and f3
(c) 只有f1 and f2
(d) f1 , f2 ,f3
【嵌入式面試C語言試題「」】相關(guān)文章:
嵌入式C/C++面試題201609-23
2016年嵌入式c語言筆試題04-29
2016年嵌入式軟件C語言筆試題09-08
華為c語言筆試面試題題庫08-16
嵌入式系統(tǒng)開發(fā)人員C語言測(cè)試題06-02
華為C語言上機(jī)試題及答案06-27
計(jì)算機(jī)C語言試題及答案07-17
2016年嵌入式面試題及答案10-05