首頁考試吧論壇Exam8視線考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托?荚
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級
零起點(diǎn)德語
等級考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱計算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報 關(guān) 員
外 銷 員
價格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報檢員
法律顧問
管理咨詢
企業(yè)培訓(xùn)
社會工作者
銀行從業(yè)
教師資格
營養(yǎng)師
保險從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務(wù)
期貨考試
國際商務(wù)
心理咨詢
營 銷 師
司法考試
國際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會計從業(yè)資格
基金從業(yè)資格
統(tǒng)計從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計師
會計職稱
法律顧問
ACCA考試
注冊會計師
資產(chǎn)評估師
審計師考試
高級會計師
注冊稅務(wù)師
國際內(nèi)審師
理財規(guī)劃師
美國注冊會計師
一級建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價師
二級建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價工程師
注冊測繪師
質(zhì)量工程師
巖土工程師
造價員考試
注冊計量師
環(huán)保工程師
化工工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
監(jiān)理工程師
房地產(chǎn)估價
土地估價師
安全評價師
房地產(chǎn)經(jīng)紀(jì)人
投資項目管理師
環(huán)境影響評價師
土地登記代理人
繽紛校園 實(shí)用文檔 英語學(xué)習(xí) 作文大全 求職招聘 論文下載 訪談|游戲
計算機(jī)等級考試
您現(xiàn)在的位置: 考試吧 > 計算機(jī)等級考試 > 計算機(jī)二級 > C語言 > 模擬試題 > 正文

2013年計算機(jī)二級C單選押密試題及答案(3)

 

  二、填空題

  1.下列程序的輸出結(jié)果是 GDABC 。

  #include

  main( )

  {char b[30],*chp;

  strcpy(&b[0],"GH");

  strcpy(&b[1],"DEF");

  strcpy(&b[2],"ABC");

  printf("%s\n",B);

  }

  2.下列程序的字符串中各單詞之間有一個空格,則程序的輸出結(jié)果是 How does she 。

  #include

  main( )

  {char strl[ ]="How do you do",*p1=strl;

  strcpy (strl+strlen(strl)/2,"es she");

  printf("%s\n",pl);

  }

  3.若有如下圖所示五個連續(xù)的int類型的存儲單元并賦值如下圖,a[0]的地址小于a[4]的地址。p和s是基類型為int的指針變量。請對以下問題進(jìn)行填空。

  a[0] a[1] a[2] a[3] a[4]

  2233445566

  (1)若p已指向存儲單元a[1]。通過指針p給s賦值,使s指向最后一個存儲單元a[4]的語句是 s=p+3 。

  (2)若指針s指向存儲單元a[2],p指向存儲單元a[0],表達(dá)式s-p的值是 2 。

  4.以下程序的功能是:將無符號八進(jìn)制數(shù)字構(gòu)成的字符串轉(zhuǎn)換為十進(jìn)制整數(shù)。例如,輸入的字符串為:556,則輸出十進(jìn)制整數(shù)366。請?zhí)羁铡?/P>

  #include

  main()

  {char *p, s[6];

  int n;

  p=s;

  gets (p);

  n=*p-'0';

  while( *(++p) !='\0') n=n*8+*p-'0';

  printf("%d\n", n);

  }

  5.設(shè)有以下程序:

  main()

  {int a, b, k=4, m=6, *p1=&k, *p2=&m;

  a=(pl= =&m);

  b=(*p1)/(*p2)+7;

  printf("a=%d\n", a);

  printf("b=%d\n",

  B);

  }

  執(zhí)行該程序后,a的值為 0 ,b的值為 7 。

  6.下列程序的輸出結(jié)果是 0 。

  void fun(int *n)

  {while((*n)--);

  printf("%d", ++(*n));

  }

  main()

  {int a=100;

  fun (&a);

  }

  7.以下程序的輸出結(jié)果是 10 。

  main()

  {int arr[ ]={30, 25, 20, 15, 10, 5}, *p=arr;

  p++;

  printf("%d\n", *(p+3));

  }

  8.若有以下定義,則不移動指針p,且通過指針p引用值為98的數(shù)組元素的表達(dá)式是 *(p+5) 。

  int w[10]={23,54,10,33,47,98,72,80,61}, *p=w;

  9.以下函數(shù)把b字符串連接到a字符串的后面,并返回a中新字符串的長度。請?zhí)羁铡?/P>

  strlen (char a[ ], char b[ ])

  {int num=0, n=0;

  while (*(a+num)!= '\0' ) num++;

  while (b[n]){*(a+num)=b[n]; num++; n++ ;}

  return(num);

  }

  10.函數(shù)void fun(float *sn,int n)的功能是:根據(jù)以下公式計算S,計算結(jié)果通過形參指針sn傳回;n通過形參傳入,n的值大于等于0。請?zhí)羁铡?/P>

  void fun(float *sn, int n)

  {float s=0.0, w, f= -1.0;

  int i=0;

  for(i=0; i<=n; i++)

  {f= -1 *f;

  w=f/ (2*i+1);

  s+=w;

  }

  *sn = s;

  }

  11.下面函數(shù)用來求出兩個整數(shù)之和,并通過形參傳回兩數(shù)相加之和值,請?zhí)羁铡?/P>

  int add(int x,int y, int * z)

  { *z =x+y;}

  12.以下fun函數(shù)的功能是:累加數(shù)組元素中的值。n為數(shù)組中元素的個數(shù)。累加的和值放入x所指的存儲單元中。請?zhí)羁铡?/P>

  fun(int b[ ],int n,int *x)

  {int k,r=0;

  for(k=0;k

  *x =r;

  }

  13.以下函數(shù)的功能是:把兩個整型指針變量所指的存儲單元中的內(nèi)容進(jìn)行交換。請?zhí)羁铡?/P>

  exchange(int *x,int *y)

  {int t;

  t=*y; *y= *x ; *x= t ;

  }

  14.以下程序的輸出是 49 。

  main()

  {int a[10]={19,23,44,17,37,28,49,36},*p;

  p=a;

  printf(“%d\n”,(p+=3)[3]);

  }

  15.下面程序的輸出結(jié)果是 024 。

  #define MAX 3

  int a[MAX];

  main()

  {fun1();fun2(a);printf(“\n”);}

  fun1()

  {int k,t=0;

  for(k=0;k

  }

  fun2(int b[])

  {int k;

  for(k=0;k

  }

  16.下面程序的輸出結(jié)果是 ABCDCD 。

  char b[]=“ABCD”;

  main()

  {char *chp;

  for(chp=b; *chp; chp+=2) printf(“%s”, chp);

  printf(“\n”);

  }

  17.以下程序的功能是:從鍵盤上輸入一行字符,存入一個字符數(shù)組中,然后輸出該字符串,請?zhí)羁铡?/P>

  #include

  main()

  {char str[81],*sptr;

  int i;

  for(i=0;i<80;i++)

  {str[i]=getchar();

  if(str[i]==‘\n’) break;

  }

  str[i]= '\0' ;

  sptr=str;

  while(*sptr) putchar( *sptr++ );

  }

  18.fun1函數(shù)的調(diào)用語句為:fun1(&a,&b,&C);它將三個整數(shù)按由大到小的順序調(diào)整后依次放入a、b、c三個變量中,a中放最大數(shù)。請?zhí)羁铡?/P>

  void fun2(int *x, int *y)

  {int t;

  t=*x; *x=*y; *y=t;

  }

  void fun1(int *pa,int *pb,int *pC)

  {if(*pc>*pB) fun2( pc,pb );

  if(*pa<*pC) fun2( pa,pb );

  if(*pa<*pB) fun2( pa,pc );

  }

  19.以下函數(shù)用來在w數(shù)組中插入數(shù)x,w數(shù)組中的數(shù)已按由小到大的順序存放,n所指存儲單元中存放數(shù)組中數(shù)據(jù)的個數(shù),x插入后數(shù)組中的數(shù)仍有序。請?zhí)羁铡?/P>

  void fun(char *w,char x,int *n)

  {int i,p;

  p=0;

  w[*n]=x;

  while(x>w[p]) p++ ;

  for(i=*n;i>p;i--) w[i]= w[i-1] ;

  w[p]=x;

  ++*n;

  }

  20.閱讀程序:

  main()

  {char str1[]=“how do you do”, str2[10];

  char *p1=str1, *p2=str2;

  scanf(“%s”, p2);

  printf(“%s ”, p2);

  printf(“%s\n”, p1);

  }

  運(yùn)行上面的程序,輸入字符串HOW DO YOU DO,則程序的輸出結(jié)果是 HOW how do you do 。

  21.下面程序的輸出結(jié)果是 SO 。

  main()

  {char *p[]={“BOOL”, “OPK”, “H”, “SP”};

  int i;

  for(i=3;i>=0;i--,i--) printf(“%c”,*p[i]);

  printf(“\n”);

  }

  22.下面程序的輸出結(jié)果是 17 。

  funa(int a,int B)

  {return a+b;}

  funb(int a,int B)

  {return a-b;}

  sub(int(*t)(),int x,int y)

  {return((*t)(x,y));}

  main()

  {int x,(*p)();

  p=funa;

  x=sub(p,9,3);

  x+=sub(funb,8,3);

  printf(“%d\n”, x);

  }

  23.下面程序的輸出結(jié)果是 XYZA 。

  #include

  void fun(char *a1,char *a2,int n)

  {int k;

  for(k=0;k

  a2[k]=(a1[k]-‘A’-3+26)%26+‘A’;

  a2[n]=‘\0’;

  }

  main()

  {char s1[5]=“ABCD”, s2[5];

  fun (s1, s2, 4);

  puts(s2);

  }

  24.下面程序的輸出結(jié)果是 7 1 。

  void as(int x,int y,int *cp,int *dp)

  {*cp=x+y;

  *dp=x-y;

  }

  main()

  {int a=4,b=3,c,d;

  as(a,b,&c,&D);

  printf(“%d %d\n”,c,D);

  }

  25.下面程序的輸出結(jié)果是 eybdooG 。

  #include

  main()

  {static char b[]=“Goodbye”;

  char *chp=&b[7];

  while(--chp>=&b[0]) putchar(*chp);

  putchar(‘\n’);

  }

  26.若輸入:this test terminal,以下程序的輸出結(jié)果為:terminal test this。填空補(bǔ)充以下程序。

  #include

  #define MAXLINE 20

  main()

  {int i;

  char *pstr[3],str[3][MAXLINE];

  for(i=0;i<3;i++) pstr[i]=str[i];

  for(i=0;i<3;i++) scanf(“%s”,pstr[i]);

  sort(pstr);

  for(i=0;i<3;i++) printf(“%s\n”,pstr[i]);

  }

  sort( char *pstr [3] )

  {int i,j;

  char *p;

  for(i=0;i<3;i++)

  {for(j=i+1;j<3;j++)

  {if(strcmp(*(pstr+i),*(pstr+j))>0)

  {p=*(pstr+i);

  *(pstr+i)= *(patr+j) ;

  *(pstr+j)=p;

  }

  }

  }

  }

  27.以下程序利用指針法將兩個數(shù)按從小到大的順序輸出來。

  main()

  {int a,b, *p1,*p2 , p ;

  printf(“input a, b:”);

  scanf(“%d%d”, &a,&B);

  p1=&a ;

  p2=&b;

  if(a

  {p=p1; p1=p2; p2=p;}

  printf(“a=%d b=%d\n”,a,B);

  printf(“max=%d min=%d\n”, *p1,*p2 );

  }

  28.以下程序的輸出結(jié)果是 8 。

  fun(int n,int *s)

  {int f1,f2;

  if(n==1||n==2) *s=1;

  else

  {fun(n-1,&f1);

  fun(n-2,&f2);

  *s=f1+f2;

  }

  }

  main()

  {int x;

  fun(6,&x);

  printf(“%d\n”,x);

  }

  29.下面的程序通過函數(shù)average計算數(shù)組中各元素的平均值,請?zhí)羁铡?/P>

  float average(int *pa,int n)

  {int i;

  float avg=0.0;

  for(i=0;i

  avg=avg+ *(pa+i) ;

  avg= avg/n ;

  return avg;

  }

  main()

  {int i,a[5]={2,4,6,8,10};

  float mean;

  mean=average(a,5);

  printf(“mean=%f\n”,mean);

  }

  30.以下程序?qū)⒆址畇1中的所有與字符串str1相同的子串替換成字符串str2,并將替換后的新串存于字符數(shù)組s2中。

  #include

  void replace(char *s1,char *s2,char *str1,char *str2)

  {char *t0,*t1,*t2;

  while( *s1 )

  {for(t0=s1,t1=str1;(*t1!=‘\0’&& *t0=*t1 );t0++,t1++);

  if(*t1!=‘\0’) *s2++ = *s1++ ;

  else

  {for(t1=str2;*t1!=‘\0’;) *s2++ = *t1++ ;

  s1=t0 ;

  }

  }

  *s2=‘\0’;

  }

  main()

  {static char s1[]=“abcef ababcd abab.”, s2[25];

  replace (s1, s2, “abc”, “XYZ”);

  printf(“%s\n”, s2);

  }

  31.以下語句的輸出結(jié)果是 hELLO! 。

  char s[80],*sp=“HELLO!”;

  sp=strcpy (s, sp); s[0]=‘h’; puts(s);

上一頁  1 2 3 4 5 6  下一頁
文章搜索
計算機(jī)等級考試欄目導(dǎo)航
版權(quán)聲明:如果計算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。