- 相關(guān)推薦
嵌入式C語言筆試題及答案(通用7套)
無論在學(xué)習(xí)或是工作中,我們最少不了的就是試題了,試題可以幫助參考者清楚地認(rèn)識(shí)自己的知識(shí)掌握程度。一份好的試題都是什么樣子的呢?下面是小編幫大家整理的嵌入式C語言筆試題及答案,供大家參考借鑒,希望可以幫助到有需要的朋友。

嵌入式C語言筆試題及答案 1
1: 第1題請(qǐng)編寫函數(shù)fun,其功能使:將兩個(gè)兩位正整數(shù)a b合并形成一個(gè)整數(shù)放在c中。合并的方式使:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的百位和個(gè)位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上。
答案:
void fun(int a,int b,long *c)
{*c=(b/10)*1000+(a/10)*100+(b%10)*10+a%10;}
2: 第2題請(qǐng)編寫一個(gè)函數(shù)fun,它的功能使:計(jì)算n門課程的平均分,計(jì)算結(jié)果作為函數(shù)值返回。
答案:
float fun(float *a,int n)
{float ave=0.0;
int i;
for(i=0;i
ave+=a;
ave/=n;
return ave;}
3: 第3題假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫函數(shù)fun,它的功能使:將字符串尾部的*號(hào)全部刪除,前面和中間的*號(hào)不刪除。
答案:
void fun(char *a)
{int i=0;
char *p,*q;
p=q=a;
while(*p)
p++;
p--;
while(*p==‘*’)
p--;
while(q<=p)
{a=*q;
i++;
q++;}
a=‘’;}
4: 第4題請(qǐng)編寫函數(shù)fun,其功能是:將兩個(gè)兩位數(shù)的.正整數(shù)a b合并形成一個(gè)整數(shù)放在c中,合并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c的個(gè)位和百位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上。
答案:
void fun(int a,int b,long *c)
{c=(b/10)*1000+(a%10)*100+(b%10)*10+a/10;}
5: 第5題 n名學(xué)生的成績(jī)已在主函數(shù)中放入一個(gè)帶頭節(jié)點(diǎn)的鏈表結(jié)構(gòu)中,h指向鏈表的頭節(jié)點(diǎn)。請(qǐng)編寫函數(shù)fun,它的功能是:求出平均分,由函數(shù)值返回。
答案:
double fun(strec *h)
{double aver=0.0;
while(h!=null)
{aver+=h->s;
hy=h->next;}
aver/=n;
return aver;}
6: 第6題請(qǐng)編寫函數(shù)fun,計(jì)算并輸出給定10個(gè)數(shù)的方差。
答案:
double fun(double x[10])
{int i,j;
double s=0.0,s1=0.0;
for(i=0;i<10;i++)
s1+=x;
s1/=10;
for(j=0;j<10;j++)
s+=(x[j]-s1)*(x[j]-s1);
s/=10;
s=pow(s,0.5);
return s;}
7: 第7題請(qǐng)編寫函數(shù)fun,其功能是:將兩個(gè)兩位數(shù)的正整數(shù)a b合并形成一個(gè)整數(shù)放在c 中。合并的方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的千位和十位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的個(gè)位和百位上。
答案:
void fun(int a,int b,long *c)
{*c=(a/10)*1000+(a%10)*10+(b%10)*100+b/10;}
嵌入式C語言筆試題及答案 2
1. c#中錯(cuò)誤處理機(jī)制有哪些
CLR提供的結(jié)構(gòu)化錯(cuò)誤處理機(jī)制,用try..catch..finally 捕獲
2. public/protect/private/internal修飾符的區(qū)別
public:任何類和成員都可以訪問
protect:該類和派生類能訪問
private:只能該類訪問
internal:只能在包含它的程序集中訪問
3. 大量數(shù)據(jù)(如3000萬條數(shù)據(jù))并發(fā)處理時(shí),有哪幾種機(jī)制
存儲(chǔ)過程或事務(wù).取得最大標(biāo)識(shí)的時(shí)候同時(shí)更新,注意主鍵不是自增量方式.這種方法并發(fā)的時(shí)候是不會(huì)重復(fù)主鍵的.,
取得最大標(biāo)識(shí)要有一個(gè)存儲(chǔ)過程來獲取.
4. String/StringBuilder的異同
string是一個(gè)不可變的數(shù)據(jù)類型,一旦對(duì)字符串對(duì)象進(jìn)行了初始化,該字符串對(duì)象就不能改變了。修改字符串內(nèi)容的方法
和運(yùn)算符實(shí)際上是創(chuàng)建一個(gè)新的字符串.
stringbuilder分配好內(nèi)存,對(duì)字符串的修改就在賦予stringbuilder實(shí)例的存儲(chǔ)單元中進(jìn)行.
舉例:
string的確是不能修改的:
string str = "a";
str = "b"http://str是被賦值了"b"沒錯(cuò),但是str里面原來的string值"a"并沒有被修改。
string str = "a";
string str1 = str;
str += "b";//此時(shí)str = "ab",str1 = "a";
StringBuilder str = new StringBuilder( "a" );
StringBuilder str1 = str;
str.Append( "b" );
str.ToString()和str1.ToString()都是"ab"。
5. 解釋string str=null/string str=""
str=null,聲明而不分內(nèi)存空間,str=""聲明而分內(nèi)存空間
6. 什么是單例模式,寫個(gè)運(yùn)用單例模式的類
Singleton模式包含的角色只有一個(gè),就是Singleton。Singleton擁有一個(gè)私有構(gòu)造函數(shù),確保用戶無法通過new直接
實(shí)例它
// Singleton pattern -- Structural example
using System;
// "Singleton"
class Singleton
{
// Fields
private static Singleton instance;
// Constructor
protected Singleton() {}
// Methods
public static Singleton Instance()
{
// Uses "Lazy initialization"
if( instance == null )
instance = new Singleton();
return instance;
}
}
/**////
/// Client test
///
public class Client
{
public static void Main()
{
// Constructor is protected -- cannot use new
Singleton s1 = Singleton.Instance();
Singleton s2 = Singleton.Instance();
if( s1 == s2 )
Console.WriteLine( "The same instance" );
}
}
7. ASP.NET頁面間傳遞有哪幾種方式
QueryString, response.Redirect(), session, server.Transfer
8. 解釋重載/覆蓋
9. Web Services的含義/UDDI的含義
Web服務(wù)是利用SOAP在HTTP上執(zhí)行遠(yuǎn)程方法調(diào)用的一種新方法。
UDDI的含義:統(tǒng)一描述發(fā)現(xiàn)和集成(UDDI)提供一種發(fā)布和查找服務(wù)描述的方法。
10.虛函數(shù)/抽象函數(shù)各自的定義
虛函數(shù):由virtual聲明,它允許在派生類中被重寫,要重寫方法,必須先聲名為virtual
public class myclass
{
public virtual int myint()
{
函數(shù)體;
}
}
class myclass1:myclass
{
public override int myint()
{
函數(shù)體1;
}
}
抽象類、抽象函數(shù):由abstract聲明,在抽象類中可以定義抽象方法,抽象方法基本沒有執(zhí)行代碼,派生類必須重寫它,提供其執(zhí)行代碼
public abstract class myclass
{
public abstract int myint();
}
public class myclass1:myclass
{
public override int myint()
{
函數(shù)體;
}
}
嵌入式C語言筆試題及答案 3
1.C語言編譯程序的功能是()。
A.執(zhí)行一個(gè)C語言編寫的源程序
B.把C源程序翻譯成ASCII碼
C.把C源程序翻譯成機(jī)器代碼
D.把C源程序與系統(tǒng)提供的庫函數(shù)組合成一個(gè)二進(jìn)制執(zhí)行文件
【答案】C
【解析】編譯程序的功能是將“高級(jí)語言”翻譯為“機(jī)器語言”。每條C語言語句,經(jīng)過編譯最終都將轉(zhuǎn)換成二進(jìn)制的機(jī)器指令。答案選擇C選項(xiàng)。
2.計(jì)算機(jī)高級(jí)語言程序的運(yùn)行方法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘述中正確的是()。
A. C語言程序僅可以編譯執(zhí)行
B. C語言程序僅可以解釋執(zhí)行
C. C語言程序既可以編譯執(zhí)行,又可以解釋執(zhí)行;
D.以上說法都不對(duì)
【答案】A
【解析】編譯執(zhí)行是指程序執(zhí)行前需要一個(gè)專門的編譯過程把程序編譯成機(jī)器語言的文件,再次運(yùn)行時(shí)不需要重新翻譯,執(zhí)行效率高;解釋執(zhí)行是指每個(gè)語句都是執(zhí)行的時(shí)候才翻譯,執(zhí)行效率低。用C語言編寫的程序必須經(jīng)過編譯器編譯后,轉(zhuǎn)換為二進(jìn)制的機(jī)器指令來運(yùn)行。答案選擇A選項(xiàng)。
3.以下敘述中錯(cuò)誤的是()。
A. C語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令
B. C程序經(jīng)過編譯、鏈接步驟之后才能形成一個(gè)真正可執(zhí)行的二進(jìn)制機(jī)器指令文件
C.用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個(gè)文本文件中
D. C語言源程序經(jīng)編譯后生成后綴為的目標(biāo)程序
【答案】A
【解析】A項(xiàng)錯(cuò)誤,注釋語句不會(huì)被翻譯成二進(jìn)制的機(jī)器指令。C源程序經(jīng)過C編譯程序編譯之后生成后綴為的二進(jìn)制文件(稱為目標(biāo)文件),然后由“鏈接程序”(Link)的軟件把文件與各種庫函數(shù)連接起來生成一個(gè)后綴為的可執(zhí)行文件。答案選擇A選項(xiàng)。
4.以下敘述中錯(cuò)誤的是()
A.C語言的可執(zhí)行程序是由一系列機(jī)器指令構(gòu)成的
B.用C語言編寫的源程序不能直接在計(jì)算機(jī)上運(yùn)行
C.通過編譯得到的二進(jìn)制目標(biāo)程序需要連接才可以運(yùn)行
D.在沒有安裝C語言集成開發(fā)環(huán)境的機(jī)器上不能運(yùn)行C源程序生成的exe文件
【答案】D
【解析】A項(xiàng)正確,C語言的可執(zhí)行程序是由一系列機(jī)器指令組成的;BC項(xiàng)正確,用C語言編寫的源程序必須經(jīng)過編譯,生成二進(jìn)制目標(biāo)代碼,再經(jīng)過連接才能運(yùn)行;D項(xiàng)錯(cuò)誤,C語言經(jīng)過編譯鏈接后的二進(jìn)制目標(biāo)代碼可以脫離C語言集成開發(fā)環(huán)境獨(dú)立運(yùn)行。答案選擇D選項(xiàng)。
5.以下敘述正確的是()。
A. C編譯程序把文件后綴為.c的源程序文件編譯成文件后綴為的二進(jìn)制文件
B. C編譯程序把文件后綴為.c的`源程序文件編譯成文件后綴為的可執(zhí)行文件
C. C編譯程序把文件后綴為的二進(jìn)制文件編譯成文件后綴為的可執(zhí)行文件
D.鏈接程序把文件后綴為.c的源程序文件鏈接成文件后綴為的可執(zhí)行文件
【答案】A
【解析】C編譯程序把文件后綴為C的源程序文件編譯成文件后綴為的二進(jìn)制文件,鏈接將一個(gè)或多個(gè)目標(biāo)文件與程序用到的庫文件連接起來,形成一個(gè)可以在操作系統(tǒng)直接運(yùn)行的執(zhí)行程序,故排除B、C、D項(xiàng),答案選擇A選項(xiàng)。
6.以下敘述中正確的是(A.在C語言程序中,main函數(shù)必須放在其他函數(shù)的最前面
B.每個(gè)后綴為.c的C語言源程序都可以單獨(dú)進(jìn)行編譯
C.在C語言程序中,只有main函數(shù)才可以單獨(dú)進(jìn)行編譯
D.每個(gè)后綴為.c的C語言源程序都應(yīng)該包含一個(gè)main函數(shù)
【答案】B
【解析】main函數(shù)可以在程序的任何位置。每一個(gè)可執(zhí)行的C程序都必須有一個(gè)且只能有一個(gè)主函數(shù)。后綴名為.c的C語言源程序都可以單獨(dú)進(jìn)行編譯。main函數(shù)只是讓執(zhí)行程序的系統(tǒng)知道該從哪里開始執(zhí)行程序(從主函數(shù)處執(zhí)行),其他有關(guān)這個(gè)程序的子函數(shù)是通過函數(shù)調(diào)用來實(shí)現(xiàn)其功能(不需main函數(shù))。答案選擇B選項(xiàng)。
7.以下敘述中錯(cuò)誤的是()。
A. C語言編寫的函數(shù)源程序,其文件名后綴可以是.c
B. C語言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件
C. C語言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行;
D.一個(gè)C語言程序只能有一個(gè)主函數(shù)
【答案】C
【解析】C源程序經(jīng)過C編譯程序編譯之后生成一個(gè)后綴為的二進(jìn)制文件(稱為目標(biāo)文件),然后由稱為“連接程序”(Link)的軟件,把此文件與C語言提供的各種庫函數(shù)連接起來生成一個(gè)后綴為的可執(zhí)行文件。只有含有main函數(shù)的經(jīng)過編譯鏈接才能執(zhí)行。答案選擇C選項(xiàng)。
8.以下敘述中錯(cuò)誤的是(A.一個(gè)C程序可以包含多個(gè)不同名的函數(shù)
B.一個(gè)C程序只能有一個(gè)主函數(shù)
C. C程序在書寫時(shí),有嚴(yán)格的縮進(jìn)要求,否則不能編譯通過
D. C程序的主函數(shù)必須用main作為函數(shù)名
【答案】C
【解析】一個(gè)C程序有且只有一個(gè)主函數(shù)main。一個(gè)C程序可以包含多個(gè)不同名字的子函數(shù)。C程序在書寫時(shí)沒有嚴(yán)格的縮進(jìn)要求。答案選擇C選項(xiàng)。
9.以下敘述中正確的是()。
A. C語言規(guī)定必須用main作為主函數(shù)名,程序?qū)拇碎_始執(zhí)行
B.可以在程序中由用戶指定任意一個(gè)函數(shù)作為主函數(shù),程序?qū)拇碎_始執(zhí)行
C. C語言程序?qū)脑闯绦蛑械谝粋(gè)函數(shù)開始執(zhí)行;
D. main的各種大小寫拼寫形式都可以作為主函數(shù)名,如:MAIN,Main等
【答案】A
【解析】用戶不能指定某函數(shù)為主函數(shù),C語言規(guī)定,程序從main函數(shù)開始執(zhí)行,從main函數(shù)退出,C語言函數(shù)名區(qū)別大小寫。答案選擇A選項(xiàng)。
10.下列敘述中錯(cuò)誤的是()。
A. C程序可以由一個(gè)或多個(gè)函數(shù)組成
B. C程序可以由多個(gè)程序文件組成
C.一個(gè)C語言程序只能實(shí)現(xiàn)一種算法
D.一個(gè)C函數(shù)可以單獨(dú)作為一個(gè)C程序文件存在
【答案】C
【解析】一個(gè)C程序可以有一個(gè)或多個(gè)程序文件,也可以有一個(gè)或多個(gè)函數(shù),所以一個(gè)C語言程序可以實(shí)現(xiàn)多種算法,答案選擇C選項(xiàng)。
嵌入式C語言筆試題及答案 4
1.下列敘述中正確的是()。
A.所有數(shù)據(jù)結(jié)構(gòu)必須有根結(jié)點(diǎn)
B.所有數(shù)據(jù)結(jié)構(gòu)必須有終端結(jié)點(diǎn)(即葉子結(jié)點(diǎn))
C.只有一個(gè)根結(jié)點(diǎn),且只有一個(gè)葉子結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)一定是線性結(jié)構(gòu)
D.沒有根結(jié)點(diǎn)或沒有葉子結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)一定是非線性結(jié)構(gòu)
【答案】D
【解析】D項(xiàng)正確,線性結(jié)構(gòu)的特點(diǎn)是:①集合中必存在“第一個(gè)元素"且惟一②集合中必存在“最后一個(gè)元素”且惟一;③除最后一個(gè)元素外,其他數(shù)據(jù)元素均有惟一的“后繼”,④除第一個(gè)元素外,其他數(shù)據(jù)元素均有惟一的“前驅(qū)”。所以沒有根結(jié)點(diǎn)或沒有葉子結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)一定是非線性結(jié)構(gòu)。AB兩項(xiàng)錯(cuò)誤,不是所有數(shù)據(jù)結(jié)構(gòu)都必須有根結(jié)點(diǎn)和葉子結(jié)點(diǎn);C項(xiàng)錯(cuò)誤,數(shù)據(jù)結(jié)構(gòu)中若有中間結(jié)點(diǎn)不滿足只有一個(gè)前件或者后件的條件,就不是線性結(jié)構(gòu)。答案選擇D選項(xiàng)。
2.以下敘述中錯(cuò)誤的是()。
A. C語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令
B. C程序經(jīng)過編譯、鏈接步驟之后才能形成一個(gè)真正可執(zhí)行的二進(jìn)制機(jī)器指令文件
C.用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個(gè)文本文件中
D. C語言源程序經(jīng)編譯后生成后綴為.obj的目標(biāo)程序
【答案】A
【解析】A項(xiàng)錯(cuò)誤,注釋語句不會(huì)被翻譯成二進(jìn)制的機(jī)器指令。C源程序經(jīng)過C編譯程序編譯之后生成后綴為.obj的二進(jìn)制文件(稱為目標(biāo)文件),然后由“鏈接程序”(Link)的軟件把.obj文件與各種庫函數(shù)連接起來生成一個(gè)后綴為.exe的可執(zhí)行文件。答案選擇A選項(xiàng)。
3. C語言主要是借助以下()功能來實(shí)現(xiàn)程序模塊化的。
A.定義函數(shù)
B.定義常量和外部變量
C.三種基本結(jié)構(gòu)語句
D.豐富的數(shù)據(jù)類型
【答案】A
【解析】C程序的模塊化主要通過函數(shù)來實(shí)現(xiàn)。C語言允許對(duì)函數(shù)單獨(dú)進(jìn)行編譯,從而可以實(shí)現(xiàn)模塊化。答案選擇A選項(xiàng)。
4.有以下程序段:
char ch;
int k;
ch='a';
k=12;
print("%c,%d,",h,ch,k);
printf("k=%d",k);
已知字符a的ASCII碼十進(jìn)制值為97,則執(zhí)行上述程序段后輸出的結(jié)果是()。
A.因變量類型與格式描述符的類型不匹配輸出無定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值
C.a,97,12k=12
D. a,97,k=12
【答案】D
【解析】字符變量的值是該字符的ASCII碼值,可以參與整型變量所允許的任何運(yùn)算。"ch='a",%c表示以字符格式輸出ch的.值,所以輸出為a;%d表示以十進(jìn)制代碼的形式輸出ch的值,為97;k沒有對(duì)應(yīng)的輸出格式,不輸出。在第二個(gè)語句中,首先輸出"k=",然后以十進(jìn)制代碼輸出k的值,為12。答案選擇D選項(xiàng)。
5.下列敘述中正確的是()。
A.棧是“先進(jìn)先出”的線性表
B.隊(duì)列是“先進(jìn)后出"的線性表
C.循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D.有序線性表既可以采用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
【答案】D
【解析】有序的線性表既可采用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。A項(xiàng)錯(cuò)誤,棧是“先進(jìn)后出"的線性表B項(xiàng)錯(cuò)誤,隊(duì)列是“先進(jìn)先出"的線性表;C項(xiàng)錯(cuò)誤,循環(huán)隊(duì)列是線性結(jié)構(gòu)的,有序的線性表既可采用順序存儲(chǔ)結(jié)構(gòu),也可采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
6.某二叉樹的中序序列為DCBAEFG,后序序列為DCBGFEA,則該二叉樹的深度(根結(jié)點(diǎn)在第1層)為()。
A. 5
B. 40
C.3
D. 2
【答案】B
【解析】二叉樹的后序序列為DCBGFEA,則A為根結(jié)點(diǎn)。中序序列為DCBAEFG,則DCB為左子樹結(jié)點(diǎn),EFG為右子樹結(jié)點(diǎn)。同理B為C父結(jié)點(diǎn),C為D父結(jié)點(diǎn)。根據(jù)分析,可畫出左子樹,同理E為F父結(jié)點(diǎn),F(xiàn)為G父結(jié)點(diǎn)。根據(jù)分析,可畫出右子樹,故二叉樹深度為4層。答案選擇B選項(xiàng)。
7.設(shè)有定義:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,則以下賦值語句中正確的是()。
A. s[0]=m[1];
B. s=m;
C.s.n=m.n;
D. s[2].x=m[2].x;
【答案】A
【解析】定義了結(jié)構(gòu)體類型數(shù)組s,長度為2,結(jié)構(gòu)體類型數(shù)組m,長度為2,并對(duì)數(shù)組m進(jìn)行了初始化。同類型的結(jié)構(gòu)體可以直接用變量名實(shí)現(xiàn)賦值,A項(xiàng)正確;數(shù)組名為數(shù)組首地址,地址常量之間不可以相互賦值,B項(xiàng)錯(cuò)誤;數(shù)組名為地址常量不是結(jié)構(gòu)體變量,不能引用成員,C項(xiàng)錯(cuò)誤;s[2]與m[2]數(shù)組越界,D項(xiàng)錯(cuò)誤。答案選擇A選項(xiàng)。
8.關(guān)于C語言標(biāo)識(shí)符,以下敘述錯(cuò)誤的是()。
A.標(biāo)識(shí)符可全部由數(shù)字組成
B.標(biāo)識(shí)符可全部由下劃線組成
C.標(biāo)識(shí)符可全部由小寫字母組成
D.標(biāo)識(shí)符可全部由大寫字母組成
【答案】A
【解析】C語言標(biāo)識(shí)符只能由字母、數(shù)字、下劃線構(gòu)成,且只能以字母、下劃線開頭,故答案選擇A選項(xiàng)。
9.以下程序段中的變量已定義為int類型,則
sum=pAd=5;
pAd=sum++,++pAd,pAd++;
printf("%d",pAd);
程序段的輸出結(jié)果是()。
A. 6
B. 4
C. 5
D. 7
【答案】D
【解析】自增和自減運(yùn)算符的兩種用法:前置運(yùn)算,運(yùn)算符放在變量之前,規(guī)則是先使變量的值增(或減)1,然后以變化后表達(dá)式的值參與其他運(yùn)算;后置運(yùn)算,運(yùn)算符放在變量之后,規(guī)則是變量先參與其他運(yùn)算,然后再使變量的值增(或減)1。執(zhí)行pAd=sum++,sum++是后置自增,執(zhí)行完后,pAd=5,sum=6。++pAd和pAd++語句中沒有其他運(yùn)算,即效果相同,pAd分別加1,兩句執(zhí)行完后,pAd7。答案選擇D選項(xiàng)。
10.設(shè)循環(huán)隊(duì)列為Q(1:m),其初始狀態(tài)為front=rear=m。經(jīng)過一系列入隊(duì)與退隊(duì)運(yùn)算后,front=20,rear=15,F(xiàn)要在該循環(huán)隊(duì)列中尋找最小值的元素,最壞情況下需要比較的次數(shù)為()。
A. 5
B. 6
C.m-5
D. m-6
【答案】D
【解析】循環(huán)隊(duì)列是隊(duì)列的一種順序存儲(chǔ)結(jié)構(gòu),用隊(duì)尾指針rear指向隊(duì)列中的隊(duì)尾元素,用隊(duì)首指針指向隊(duì)首元素的前一個(gè)位置,因此,從隊(duì)首指針front指向的后一個(gè)位置直到隊(duì)尾指針rear指向的位置之間所有的元素均為隊(duì)列中的元素,隊(duì)列初始狀態(tài)為front=rear=m,當(dāng)front=20,rear=15時(shí),隊(duì)列中有m-20+15=m-5個(gè)元素,最壞情況下需要比較次數(shù)為m-6次。答案選擇D選項(xiàng)。
嵌入式C語言筆試題及答案 5
(1)算法的時(shí)間復(fù)雜度是指_______。
A)執(zhí)行算法程序所需要的時(shí)間
B)算法程序的長度
C)算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù)
D)算法程序中的指令條數(shù)
答案:C
評(píng)析:所謂算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。
(2)下列敘述中正確的是________。
A)線性表是線性結(jié)構(gòu)B)棧與隊(duì)列是非線性結(jié)構(gòu)
C)線性鏈表是非線性結(jié)構(gòu)D)二叉樹是線性結(jié)構(gòu)
答案:A
評(píng)析:一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。線性表、棧與隊(duì)列、線性鏈表都是線性結(jié)構(gòu),而二叉樹是非線性結(jié)構(gòu)。
(3)下面關(guān)于完全二叉樹的敘述中,錯(cuò)誤的是_________。
A)除了最后一層外,每一層上的結(jié)點(diǎn)數(shù)均達(dá)到最大值
B)可能缺少若干個(gè)左右葉子結(jié)點(diǎn)
C)完全二叉樹一般不是滿二叉樹
D)具有結(jié)點(diǎn)的完全二叉樹的深度為[log2n]+1
答案:B
評(píng)析:滿二叉樹指除最后一層外每一層上所有結(jié)點(diǎn)都有兩個(gè)子結(jié)點(diǎn)的二叉樹。完全二叉樹指除最后一層外,每一層上的結(jié)點(diǎn)數(shù)均達(dá)到最大值,在最后一層上只缺少右邊的若干子結(jié)點(diǎn)(葉子結(jié)點(diǎn))的二叉樹。
C語言筆試題答案篇
(1)結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是_________。
A)程序的規(guī)模B)程序的易讀性
C)程序的執(zhí)行效率D)程序的可移植性
答案:B
評(píng)析:結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是結(jié)構(gòu)化程序清晰易讀,可理解性好,程序員能夠進(jìn)行逐步求精、程序證明和測(cè)試,以保證程序的'正確性。
(2)在軟件生命周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是________。
A)概要設(shè)計(jì)B)詳細(xì)設(shè)計(jì)C)可行性分析D)需求分析
答案:D
評(píng)析:需求分析是對(duì)待開發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)定義,即準(zhǔn)確地確定軟件系統(tǒng)的功能。編寫軟件規(guī)格說明書及初步的用戶手冊(cè),提交評(píng)審。
(3)數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是_________。
A)控制流B)加工C)數(shù)據(jù)存儲(chǔ)D)源和潭
答案:A
評(píng)析:數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程。數(shù)據(jù)流圖中的主要圖形元素有:加工(轉(zhuǎn)換)、數(shù)據(jù)流、存儲(chǔ)文件(數(shù)據(jù)源)、源和潭。
(4)軟件需求分析一般應(yīng)確定的是用戶對(duì)軟件的__________。
A)功能需求B)非功能需求C)性能需求D)功能需求和非功能需求
答案:D
評(píng)析:軟件需求分析中需要構(gòu)造一個(gè)完全的系統(tǒng)邏輯模型,理解用戶提出的每一功能與性能要求,是用戶明確自己的任務(wù)。因此,需求分析應(yīng)確定用戶對(duì)軟件的功能需求和非功能需求。
C語言筆試題答案篇
(1)下述關(guān)于數(shù)據(jù)庫系統(tǒng)的敘述中正確的是________。
A)數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余
B)數(shù)據(jù)庫系統(tǒng)避免了一切冗余
C)數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型的一致
D)數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)
答案:A
評(píng)析:由數(shù)據(jù)的共享自身又可極大地減少數(shù)據(jù)冗余性,不僅減少了不必要的存儲(chǔ)空間,更為重要的是可以避免數(shù)據(jù)的不一致性。所謂數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)的不同出現(xiàn)應(yīng)保持相同的值。
(2)關(guān)系表中的每一橫行稱為一個(gè)________。
A)元組B)字段C)屬性D)碼
答案:A
評(píng)析:在關(guān)系數(shù)據(jù)庫中,關(guān)系模型采用二維表來表示,簡(jiǎn)稱“表”。二維表是由表框架及表元組組成。在表框架中,按行可以存放數(shù)據(jù),每行數(shù)據(jù)稱為元組。
(3)數(shù)據(jù)庫設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是________。
A)概念設(shè)計(jì)和邏輯設(shè)計(jì)B)模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)
C)內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)D)結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)
答案:A
評(píng)析:數(shù)據(jù)庫設(shè)計(jì)可分為概念設(shè)計(jì)與邏輯設(shè)計(jì)。概念設(shè)計(jì)的目的是分析數(shù)據(jù)間內(nèi)在語義關(guān)聯(lián),在此基礎(chǔ)上建立一個(gè)數(shù)據(jù)的抽象模型。邏輯設(shè)計(jì)的主要工作是將ER圖轉(zhuǎn)換為指定的RDBMS中的關(guān)系模型。
(4)請(qǐng)讀程序:
#include
main
{
int a;float b,c;
scanf(“%2d%3P%4f’,&a,&b,&C);
printf(” a=%d,b=%ec。%f ”,a,b,C);
}
若運(yùn)行時(shí)從鍵盤上輸入9876543210l,則上面程序的輸出結(jié)果是________。
A)a=98,b=765,c=432 1
B)a=1 0,b=432,c=8765
C)a=98,b=765.000000,c=432 1.000000
D)a=98,b=765.0,c=432 1.0
答案:C
評(píng)析:scanf把用戶從鍵盤錄入的數(shù)字的第1、2位存入整型變量a;把第3、4、5位存入單精度實(shí)型變量b,把第6、7、8、9位存入單精度實(shí)型變量c,用戶錄入的第10位被scanf遺棄。這時(shí)變量a、b、c的值分別為:98、765.000000、4321.000000。
(5)一個(gè)良好的算法由下面的基本結(jié)構(gòu)組成,但不包括__________。
A)順序結(jié)構(gòu)B)選擇結(jié)構(gòu)C)循環(huán)結(jié)構(gòu)D)跳轉(zhuǎn)結(jié)構(gòu)
答案:D
評(píng)析:1966年,Bohra和Jacopini提出了以下三種基本結(jié)構(gòu),用這三種基本結(jié)構(gòu)作為表示一個(gè)良好算法的基本單元:1、順序結(jié)構(gòu);2、選擇結(jié)構(gòu);3、循環(huán)結(jié)構(gòu)。
(6)請(qǐng)選出以下程序的輸出結(jié)果________。
#include
sub(x,y,z)
int x,y,星符號(hào)z:
{星符號(hào)z變化,所以此次函數(shù)被調(diào)用后,a的值為y-x=-5,同理可知,在sub(7,a,&b)后,b的值發(fā)生變化,其值為-5-7=-12,在sub(a,b,&C)后,c的值發(fā)生變化,其值為-12-(-5)=-7。
(7)下面程序在屏幕上的輸出是________。
main
{
printf(”ab c”);
}
A)ab c B)a c C)abc D)ab c
答案:B
評(píng)析:c語言中允許使用一種特殊形式的字符常量,、就是以一個(gè)“”開頭的字符序列,這樣的字符稱為“轉(zhuǎn)義字符”。常用的轉(zhuǎn)義字符有: ,換行;,水平制表;,退格;,回車。
(8)若x是整型變量,pb是基類型為整型的指針變量,則正確的賦值表達(dá)式是_______。
A)pb=&x; B)pb=x; C)星符號(hào)pb=星符號(hào)、/)還包括自增自減運(yùn)算符(++、–),在c語言解析表達(dá)式時(shí),它總是進(jìn)行貪婪咀嚼,這樣,該表達(dá)式就被解析為i++ ++ +i,顯然該表達(dá)式不合c語言語法。
(10)若要用下面的程序片段使指針變量p指向一個(gè)存儲(chǔ)整型變量的動(dòng)態(tài)存儲(chǔ)單元
int星符號(hào)int) D)(int星符號(hào))
答案:D
評(píng)析:不論p是指向什么類型的指針變量,都可以通過強(qiáng)制類型轉(zhuǎn)換的方法使之類型一致,強(qiáng)制類型轉(zhuǎn)換的格式為(數(shù)據(jù)類型+)。
(11)下面程序輸出的結(jié)果是__________。
main
{
int i=5,J=9,x;
x=(I==j?i:(j=7));
printf(” %d,%d”,I,J);
}
A)5,7 B)5,5 C)語法錯(cuò)誤D)7,5
答案:A
評(píng)析:條件表達(dá)式的一般形式為:表達(dá)式I?表達(dá)式2:表達(dá)式3;先求解表達(dá)式1,若為真則求解表達(dá)式2;若表達(dá)式l的值為假,則求解表達(dá)式3。本題中先判斷i==j,不等,執(zhí)行j=7;然后執(zhí)行x=7。故本題為A。
嵌入式C語言筆試題及答案 6
1. 以下程序執(zhí)行后sum 的值是
main()
{ int i , sum;
for(i=1;i<6;i++) sum+=i;
printf("%d ",sum);
}
A)15
B)14
C) 不確定
D)0
你所選擇的答案是:C,正確答案是:C √
2. 當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳送的是
A) 數(shù)組的長度
B) 數(shù)組的首地址
C) 數(shù)組每一個(gè)元素的.地址
D) 數(shù)組每個(gè)元素中的值
你所選擇的答案是:B,正確答案是:B √
3. 以下只有在使用時(shí)才為該類型變量分配√
4. 以下程序的輸出結(jié)果是
main()
{ int i, x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++) printf("%d,",x[i][2-i]);
}
A) 1,5,9
B) 1,4,7
C) 3,5,7
D)3,6,9
你所選擇的答 案是:C,正確答案是:C √
5. 以下程序的輸出結(jié)果是
#define SQR(X) X*X
main()
{ int a=16, k=2, m=1;
a/=SQR(k+m)/SQR(k+m);
printf("d ",a);
}
A) 16
B) 2
C) 9
嵌入式C語言筆試題及答案 7
1.描述一下C#中索引器的實(shí)現(xiàn)過程,是否只能根據(jù)數(shù)字進(jìn)行索引?
可以用任意類型
C#中的索引器通常用于索引數(shù)組,樓上的THIS就是索引器了。
索引器不單能索引數(shù)字(數(shù)組下標(biāo)),還能索引一些HASHMAP的字符串,所以,通常來說,C#中類的索引器通常只有一個(gè),就是THIS,但也可以有無數(shù)個(gè),只要你的參數(shù)列表不同就可以了
索引器和返回值無關(guān)
class A
{
int[] i=new int[10];
publib int this[int v]
{
return i[v];
}
2.求以下表達(dá)式的值,寫出您想到的一種或幾種實(shí)現(xiàn)方法: 1-2+3-4+……+m
if(m%2 == 1){
S = (m + 1) / 2;
} else {
S = -m / 2;
}
int Num = this.TextBox1.Text.ToString() ;
int Sum = 0 ;
for (int i = 0 ; i < Num + 1 ; i++)
{
if((i%2) == 1)
{
Sum += i ;
}
else
{
Sum = Sum - I ;
}
}
System.Console.WriteLine(Sum.ToString());
System.Console.ReadLine() ;
3.
using System;
class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields(){}
}
class B:A
{
int x=1;
int y;
public B()
{
y=-1;
}
public override void PrintFields()
{
Console.WriteLine("x={0},y={1}",x,y);
}
}
當(dāng)使用new B()創(chuàng)建B的`實(shí)例時(shí),產(chǎn)生什么輸出? X=1,Y=0;x= 1 y = -1
4..什么叫應(yīng)用程序域?
應(yīng)用程序域可以理解為一種輕量級(jí)進(jìn)程。起到安全的作用。占用資源小。
5.CTS、CLS、CLR分別作何解釋?
CTS:通用語言系統(tǒng)。CLS:通用語言規(guī)范。CLR:公共語言運(yùn)行庫。
6.什么是裝箱和拆箱?
從值類型接口轉(zhuǎn)換到引用類型裝箱。從引用類型轉(zhuǎn)換到值類型拆箱。
7.什么是受管制的代碼?
unsafe:非托管代碼。不經(jīng)過CLR運(yùn)行。
8.什么是強(qiáng)類型系統(tǒng)?
RTTI:類型識(shí)別系統(tǒng)。
9.在.net中,配件的意思是?
程序集。(中間語言,源數(shù)據(jù),資源,裝配清單)
10.常用的調(diào)用WebService的方法有哪些?
1.使用WSDL.exe命令行工具。
2.使用VS.Net中的Add Web Reference菜單選項(xiàng)
【嵌入式C語言筆試題及答案】相關(guān)文章:
2017年嵌入式c語言筆試題及答案09-09
嵌入式C語言面試題(附答案)06-15
2016年嵌入式c語言面試題及答案05-05
嵌入式開發(fā)—C語言面試題11-07
2016年嵌入式面試C語言試題「精選」09-25
2016年嵌入式c語言筆試題08-16
華為C語言上機(jī)試題及答案07-01
2016年嵌入式軟件C語言筆試題10-02
計(jì)算機(jī)C語言試題及答案07-26