了解湖南/長沙365体育备用网址資訊,從365投注平台開始!365bet官网報名365bet官网本科
您當前的位置:首頁 > 365bet官网考前練習

365体育备用网址“高級語言程序設計”經典習題及答案(21)

365体育备用网址“高級語言程序設計”經典習題及答案(21)

 

  11.若有下面的程序片段,則對數組元素的錯誤弓D用是( )H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int a[12]={0},*p[3],* *pp,i;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  for( i=0;i<3;i++) p=&a[i+4];H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  pp= P;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ①pp[0][1] ②a[10]H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ③ p[3][l] ④*(*(p+2)+2)H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”上述代碼定義變量a是有12個整型元素的數組,它的初值全是0.p是有三個元素的指針數組,每個指針能指向整型變量。哪是指針的指針,它能指向一個指向整型變量的指針, i是一個整型變量。執行代碼for(i=0;i<3;i++) P=&a[i+4] 使指針數組 p的元素 p[0]指向 a[4] ,p[l]指向a[5] ,p[2]指向 a[6].代碼pp=p使指針變量pp指向p[0].①代碼pp[0][l] 用指針表達可等價地寫成*(*pp+l)。其中*pp就是 p[0],p[0]的值是&a[4],*pp+1的值是&a[4]+1=&a[5],*(*pp+1)就是a[5].②代碼a[l0] 當然是引用數組a的元素。③代碼p[3][1]數組p只有三個元素,沒有p[3],所以是錯誤的。④代碼*(*(p+2)+2)中的(p+2)是 &p[2],*(p+2)是 p[2],其值是&a[6],*(p+2)+2的值是&a[8],*(*(p+2)+2)引用的是a[8].所以解答是@.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  12.若有如下定義和語句,則輸出結果是( )H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int * *pp, *p,a=10,b=20;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  PP=&p; P=&a; P=&b; printf(“%d%d/n”,*p,* *PP);H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ①10, 20 ② 10, 10H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ③ 20, 10 ④ 20, 20H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”上述代碼定義變量pp是指針的指針,它能指向一個指向整型變量的指針。定義變量p是指針,它能指向一個整型變量。a是一個整型變量,它有初值10.b也是一個整型變量,它有初值20.代碼 pp=&p 使pp指向p,p=&a使p指向a,p=&b又使p指向b,不再指向a.所以。p是引用b,其值為20.* *pp是通過pp間接引用p,再通過p間接引用b,所以也是20.所以解答是④。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  13.若有以下定義和語句,則對w數組元素的非法引用是( )H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int w[2][3],(* pw)[3]; pw= w;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ① *(w[0]+2) ②*pw[2]H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  ③pw[0][0] ④*(pw[l]+2)H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”上述代碼定義2行3列的二維數組w,定義能指向有3個整型元素一維數組的指針pw,并讓pw指向數組w的第一行。①代碼*(w[0]+2)中的w[0]是&w[0][0],w[0]+2是&w[0][2],所以*(w[0]+2)就是w[0][2].②代碼*pw[2]中的pw[2]是&w[2][0],該數組w只有2行,沒有w[2][0],所以代碼*pw[2]是對數組W元素的非法引用。③代碼pw[0][0]就是w[0][0].④代碼*(pw[l]+2)中的pw[1]就是*(pw+l),即&w[l][0],pw[l]+2就是&w[l][2],所以*(pw[1]+2)就是w[1][2].所以解答是②。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  5.2 填充題H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  1.“* ”稱為___________運算符,“&”稱為_________運算符。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”單目運算符“*”稱為取內容運算符,單目運算符“&”稱為取地址運算符。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  2.若兩個指針變量指向同一個數組的不同元素,可以進行減法運算和___________運算。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”若兩個指針變量指向同一個數組的不同元素,可以進行減法運算求它們所指元素相差多少元素。進行關系運算,判定它們所指元素的前后,或是否指向同一個元素等。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  3.設 int a[10] ,*p=a;則對a[3]的引用可以是p[______________] 和*(p_________)。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”若指針p指向數組a的首元素,則引用a[3]用指針p可以寫成p[3]和*(p+3)。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  4.若d是已定義的雙精度變量,再定義一個指向d的指針變量p的代碼是___________.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”若d是一個雙精度變量,定義能指向它的指針變量p可以用以下代碼double *p=&d.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  5.&后跟變量名,表示該變量的_________;*后跟指針變量名,表示該指針變量_______.&后跟的是指針變量名,表示該指針變量的_____________.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”單目運算符&是取地址運算符,&后跟變量名,就表示該變量的地址。單目運算符*是取內容運算符,*后跟指針變量名,表示該指針變量所指變量的內容。若&后跟的是指針變量名,就表示該指針變量的地址。若知道指針變量的地址,欲通過指針變量的地址引用指針變量所指變量的內容,需要連續兩次取內容運算。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  6.設有char *a=“ABCD”,則printf(“%s”,a)的輸出是_______;而printf(“%c”,*a)的輸出是______.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”若給字符指針變量a賦一個字符串常量“ABCD”,實際上是給a賦指向字符串常量首字符‘A’的指針。程序通過它訪問字符串中的各字符。如用代碼printf(“%s”,a) 輸出這個字符串常量“ABCD”的字符列ABCD,用代碼printf(“%c”,*a)輸出a所指的字符 A.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  7.設有以下定義和語句,則*(*(p+2)+l)的值為__________.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int a[3][2]={10,20,30,40,50,60},(*p)[2];H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  p= a;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”上述代碼定義3行2列的二維數組a ,定義指向兩個元素的一維數組指針p,并讓p指向二維數組a的首行。則代碼*(*(p+2)+l)中的p+2指向二維數組a的第2行a[2],*(p+2)指向a[2][o],*(p+2)+l指向a[2][l],*(*(p+2)+l)是引用a[2][l],其值是60.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  8.以下程序的功能是從鍵盤上輸入若干個字符(以回車符作為結束)組成一個字符串存入一個字符數組,然后輸出該字符數組中的字符串。請填空。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  # includeH1S365投注平台_365bet官网本科_365bet官网報名_首頁

  # includeH1S365投注平台_365bet官网本科_365bet官网報名_首頁

  main()H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  { char str[81],*sptr;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int i;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  for(i=0;i<80;i++)H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  { str=getchar();if(str==‘/n’) break;}H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  str=____________;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  sptr=str;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  while(* sptr) putchar(* sptr______________);H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  }H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”從鍵盤輸入字符行,通過循環逐一輸入字符,當發現輸入字符是換行符時,結束循環。為了使輸入的字符列變成字符串,必須在輸入字符列之后,原存儲換行符的元素改為存儲字符串的結束標記符,需用代碼 str=‘/0’ ,所以在第一框填入代碼‘/0’。當要將存于字符數組str中的字符串通過循環逐一輸出字符串的字符時,可以用字符指針sptr,讓sptr遍歷整個字符串,每次循環時,輸出sptr所指字符,并讓sptr增1,即可用代碼*sptr++實現,所以在第二框填入代碼++.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  5.3 程序分析題H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  1.閱讀下列程序,寫出程序的輸出結果。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  main()H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  {char *a[6]={“AB”,“CD”,“EF”,“GH”,U“,”KL“};H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  int i;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  for(i=0;i<4;i++) printf(“%s”, a);H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  printf(“/n”);H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  }H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”程序定義了有六個元素的字符指針數組a ,數組a 的各元素指向字符率常量。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  程序的for循環遍歷了a的前四個元素,用字符率輸出格式,輸出指針數組a前四個元素所指的字符串。所以程序輸出: ABCDEFGH.H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  2.閱讀下列程序,寫出程序的主要功能。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  main()H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  { int i,a[l0],*p=&a[9] ;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  for(i=0;i<10;i++) scanf(“%d”,&d);H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  for(; p>=a; p——) printf(“%d/n”,*p) ;H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  }H1S365投注平台_365bet官网本科_365bet官网報名_首頁

  “解”程序定義了有10個元素的整型數組a,另定義指針變量p,并讓它指向a的最后一個元素a[9].執行代碼的第一個循環是順序輸人數組a的10個元素。第二個循環利用指針p逆序遍歷數組a,將數組a的各元素逆序輸出。所以程序的功能是輸入10個整數,并逆序輸出這10個整數。H1S365投注平台_365bet官网本科_365bet官网報名_首頁

 H1S365投注平台_365bet官网本科_365bet官网報名_首頁

H1S365投注平台_365bet官网本科_365bet官网報名_首頁

 

365体育备用网址“高級語言程序設計”經典習題及答案(21)

    365投注平台——致力于打造365投注平台第一網,以努力服務于廣大365bet官网學子、提供最全的365bet官网資訊為己任,發布365bet官网最新的新聞資訊,提供365bet官网專科365bet官网本科365bet官网報名365bet官网成績查詢等綜合信息

 

365bet官网
相關文章
    無相關信息
湖南365体育备用网址
365bet官网政策
365体育备用网址30年大事
365bet官网專業
365bet官网問答
名家訪談
365bet官网故事
365bet官网院校
365bet官网大綱
365体育备用网址復習方法
365体育备用网址筆記串講
365体育备用网址應試技巧
365bet官网真題
365bet官网就業
湖南論文指導
365bet官网實踐
365bet官网學位
365体育备用网址成績查詢
365体育备用网址考籍查詢
365体育备用网址學歷查詢


咨詢QQ:137847917
13548661633(微信同號)