嵌入式系統(tǒng)開人員C語言測試題函數問答填空_第1頁
嵌入式系統(tǒng)開人員C語言測試題函數問答填空_第2頁
嵌入式系統(tǒng)開人員C語言測試題函數問答填空_第3頁
嵌入式系統(tǒng)開人員C語言測試題函數問答填空_第4頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、5.2    填空題 (372)    設已定義char s = ""NameAddress"n"則字符串s所占的字節(jié)數是_。 (373)    若有定義語句:char s100,d100; int j=0, i=0;且s中已賦字符串,請?zhí)羁找詫崿F(xiàn)字符串拷貝。(注:不得使用逗號表達式) while(i)   dj = _; j+; dj=0; (374)    若想通過以下輸入語句使a中存放字符串"1234"

2、;,b中存放字符"5",則輸入數據的形式應該是_。 Char a10,b; Scanf("a=%sb=%c", a, %b); (375)    對于以下遞歸函數f,調用 f (3) 的返回值是_。 f(int n)     return(n>0) ? 2*f(n-1)+f(n-2) : -1); (376)    以下函數調用語句中含有_個實參。 func(exp1,exp2),(exp3,exp4,exp5); (377)   

3、; 下面程序的功能是在一個字符數組中查找一個指定的字符,若數組中含有該字符則輸出該字符在數組中第一次出現(xiàn)的位置(下標值);否則輸出-1。請完成下面程序。 #include <stdio.h> #include <string.h> main()     char c='a',t50;     int n,k,j;     gets(t);     n = _;     for (k=0;k<n;k+)

4、         if(_)j=k;break;         else j-=1;         printf("%d", j);    (378)    下面程序的功能是在三個字符串中找出最小的。請?zhí)羁铡?#include <stdio.h> #inculde <string.h>  m

5、ain()     char s20,str320;     int i;     for (i=0; i<3; i+) gets(stri);     strcpy(s, _);     if (strcmp(str2,s)<0) strcpy(s,str2);     printf("%sn", _); (379)    下面程序段的運行結果是_ ch

6、ar ch = "600" int a, s=0; for (a=0; cha>='0' && cha<='9' a+) s=10*s+cha-'0' printf("%d",s); (380)    下列程序段的輸出結果_。 int m; int f(int x)   static int k = 0; x-=k+; return x; m = f(f(3); printf("%d ", m); (381) 

7、   下列程序段的輸出是_。 # include  int f(int m)                           static int k=0;      int s=0;       

8、0;         for(; k<=m; k+) s+;     return s; void main( )   int s1, s2;    s1 = f(5);    s2 = f(3);    printf("%d %sn", s1, s2); (382)    補充下面程序: 函數     void f(char s , cha

9、r t )         int k=0;         while (sk = tk)   k+;      等價于:     void f(char *s, char *t)          while (_);     (383)    下程序段的

10、輸出是_。 #include  <stdio.h> void  fun() static int a = 5; a+; printf("a=%dn", a); main() for (int i=0; i<2; i+) fun();  5.3    問答與設計 (384)    指出下面的函數的錯誤。 int square(volatile int *ptr)      return *ptr * *ptr;  (385)

11、60;   什么是遞歸(recursion)?怎樣使用遞歸? (386)    什么時候說明函數? (387)    為什么要說明函數原型? (388)    一個函數可以有多少個參數? (389)    什么是內部函數? (390)    如果一個函數沒有返回值,是否需要加入return語句? (391)    說明為什么要禁止函數直接或間接調用自己? (392)  

12、0; exit()和return有什么不同? (393)    怎樣把數組作為參數傳遞給函數? (394)    在程序退出main()函數之后,還有可能執(zhí)行一部分代碼嗎? (395)    什么時候用一條switch語句比用多條if語句更好? (396)    switch語句必須包含default分支嗎? (397)    switch語句的最后一個分支可以不要break語句嗎? (398)    空循環(huán)(nul

13、l loops)和無窮循環(huán)(infinite loops)有什么區(qū)別? (399)    continue和break有什么區(qū)別? (400)    什么是重復處理(iterative processing)? (401)    在C語言中表示真和假的最好方法是什么? (402)    請修改以下代碼: include studio.h main /* this program prints the number of weeks in a year. /* (  

14、   int s     s:=52;     print(There are s weeks in a year"); (403)    函數名可以作實參嗎?如果可以,請舉例說明;如果不可以,請說明原因。 (404)    如何定義和說明可變參數的函數? (405)    如將求3次方函數a=pow(a,3.0);改為a=a*a*a;能夠優(yōu)化代碼,說明原因。 (406)    寫函數h

15、toi( s ),把由十六進制數字組成的字符串(前面可能包含0 x或0 X)轉換成等價的整數值。字符串中允許的數字為: 0 9,a f、以及A F。 (407)    重寫squeeze(s1, s2)函數,把字符串s1中與字符串s2中字符匹配的各個字符都刪除掉。 (408)    編寫函數any(s1, s2),它把字符串s2中任一字符在字符串s1中的第一次出現(xiàn)的位置作為結果返回。如果s1中沒有包含s2中的字符,那么返回-1。 (409)    編寫一個函數setbits(x, p, n, y),返回對

16、x做如下處理得到的值: x從第p位開始的n位被置為y的最右邊n位的值,其余各位保持不變。 (410)    編寫一個函數invert(x, p, n),返回對x做如下處理得到的值: x從第p位開始的n位被求反(即,1變成0,0變成1),其余各位保持不變。 (411)    編寫一個函數rightrot (x, n),返回將x向右循環(huán)移動n位所得到的值。 (412)    在求反碼時,表達式x &= ( x - 1 )用于把x最右邊的值為1的位刪除掉。請解釋一下這樣做的道理。用這一方法重寫b i t

17、 c o u n t函數,使之執(zhí)行得更快一點。 (413)    使用條件表達式重寫用于將大寫字母轉換成小寫字母的函數low e r。 (414)    編寫函數escape (s, t),將字符串t拷貝到字符串s中,并在拷貝過程中將諸如換行符與制表符等等字符轉換成諸如 n與 t等換碼序列。使用s w i t c h語句。再編寫一個具有相反功能的函數,在拷貝過程中將換碼序列轉換成實際字符。 (415)    寫函數expand(s1, s2),將字符串s 1中諸如a-z一類的速記等號在字符串s 2中擴展成

18、等價的完整列表a b c.x y z。允許處理大小寫字母和數字,并可以處理諸如a - b - c與a - z 0 - 9與- a -z等情況。正確安排好前導與尾隨的"-" (416)    修改i t o a函數使之改為接收三個變元。第三個變元是最小域寬。為了保證轉換得的數(即字符串表示的數)有足夠的寬度,在必要時應在數的左邊補上一定的空格。 (417)    編寫一個函數ungets(s),用于把整個字符串推回到輸入中。ungets函數要使用buf與bufp嗎?它可否僅使用ungetch函數? (418)    定義宏swap(t, x, y),用于交換t類型的兩個變元(使用分程序結構)。 (419)    請比較一下值調用與引用調用的相同點和不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論