【正文】
。 B)p=q?! ?4) 有以下程序C main() { int a=7,b=8,*p,*q,*r?! ?6) 設(shè)有定義:int n=0,*p=amp。 } 程序運行后的輸出結(jié)果是 A) Ab B) aa C) Aa D) Bb (8) , 以下選項中,正確運用指針變量的程序段是D A) int *i=NULL?! C) max (int x,int y) D) int max(int x,int y) { int z。 c=‘\0xab’。 B) w=p。 (17) 有以下程序D 以下是引用片段: void fun(char *c,int d) { *c=*c+1。 C) scanf(%d%d%d,a,b,d)。} main() { int x=1,y=2。 a=*p+b。 p=amp。 a=p1==amp。a。} { char a,b。putchar(a)。j。 } 二、填空題: (1) 有以下程序 以下是引用片段: void f( int y,int *x) {y=y+*x。 printf(“%d%d\n”,*p,*q)。 } (5) 以下函數(shù)用來求出兩整數(shù)之和,并通過形參將結(jié)果傳回,請?zhí)羁铡? t=*y。 } 【8】 =s。 printf(“%d”,++(*n))。 } main() { int x=3,y=5,*p=amp。*y=*x。等價的語句是B A) I= *P。b=39。} sub3(char* a,char*b) {char c。 } 輸出結(jié)果是 A) 50,30 B) 30,J50 C) 80,20 D) 80,20 (29) 若有定義和語句:D int **pp,*p,a=10,b=20。把變量r的值賦給指針變量p D) 語句*p=r。 s=amp。 fun(x,y)。 D) i=**p。 B) scanf(%d%d%d,amp。則以下非法的賦值語句是D A) p=q。b。a。} 該函數(shù)的返回值是 A) 不確定的值 B) 形參p中存放的值 C) 形參p所指存儲單元中的值 D) 形參p的地址值 (11) 下列函數(shù)定義中,會出現(xiàn)編譯錯誤的是B A) max(int x, int y,int *z) B) int max(int x,y) { *z=xy ? x:y。 p2=amp?!) scanf(“%d”,a) 。 C) int a=10,*b=amp。n2,*q=amp。b=39?! 程序運行后的輸出結(jié)果是 A) 8,7,8,7 B) 7,8,7,8 C) 8,7,7,8 D) 7,8,8,7 (5) 設(shè)有定義:int a,*pA=amp。 } main () { char c1=A, c2=a, *p1, *p2。 L=‘\0’。 …… } 程序在執(zhí)行了c=amp。 p=amp。printf(“%d,%d,%d”,*p,*q,*r)。則能正確從鍵盤讀入三個整數(shù)分別賦給變量a、b、c的語句是A A) scanf(%d%d%d,amp。j。