熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

自學考試高級語言程序設計最後沖刺模擬題(一)

2013-11-15 15:25:35  來源: 數據結構 

  第一部分 選擇題(分)

  一單項選擇題(本大題共小題每小題分)

  在每小題列出的四個備選項中只有一個是符合題目要求的請將其代碼填寫在題後的

  括號內錯選多選或未選均無分

  組成C語言程序的是( )

  A過程

  B函數

  C子程序

  D主程序和子程序

   下列表達式的值為的是 (  )

  A

  B /

  C /

  D <

  C語言中定義某個內部變量時如果省略了存儲類型符則系統將默認該變量是( )

  A自動型

  B寄存器型

  C靜態型

  D外部參照型

   設int a = ;則表達式a<&& a>的運算結果和a的值分別是 (  )

  A

  B

  C

  D

  自動型變量分配在( )

  A內存的數據區中

  BCPU的通用寄存器中

  C內存的程序區中

  D內存的堆棧區中

   下列保留字中用於構成循環結構的是 (  )

  A if

  B while

  C switch

  D default

  對dowhie語言錯誤的說法是( )

  A可構成多重循環結構

  B循環次數不可能為

  C循環次數可能為

  D先執行後判斷

   設 char x =′a′;則printf(″x = ﹪c y = ﹪c \\ n″x);的輸出是(  )

  A x = ay =

  B x = y = a

  C x = y =

  D x = ay = a

  設char str[]=″ABCDE″str[]=″XYZ″;則執行語句

  printf(″%d″strlen(strcpy(strstr)));

  後的輸出是( )

  A

  B

  C

  D

   執行下列程序

  int a[][]={{}{}{}};

  int b[][]={};

  main()

  {printf(″﹪d \\ n″a[][] + b[][]);}

  後輸出的結果是 (  )

  A

  B

  C

  D

  語句int (*p)( );的含義是( )

  Ap是一個指向函數的指針變量該函數的返回值是一個整型數據

  Bp是指針變量指向一個整型數據

  Cp是一個指向一維數據的指針變量

  Dp是指針函數

   設int x[] = {}* p = x;則值為的表達式是 (  )

  A p + = * + + p

  B p + = * p + +

  C p + = * p

  D p + = + + * p

  對於程序段

  float f(int a)

  {int b;…}

  main( )

  {int mn;

  m=f(n);…}

  char f(int xint y)

  {int a;…}

  變量mn的作用范圍是( )

  A整個程序段

  Bmain函數

  Cmain函數和f函數

  Dmian函數和f函數

   執行下列程序

  int a = b = ;

  void fun(int x int x)

  {printf(″﹪d ﹪d \\ n″ x + x b);}

  main()

  {int a = b = ;fun(a b);}

  後輸出的結果是 (  )

  A

  B

  C

  D

  在下列運算符中優先級最低的是( )

  A!

  B·

  C( )

  D[ ]

   設有定義語句enum t {a a = a a = }time;

  則枚舉常量a和a的值分別為 (  )

  A

  B

  C

  D

  對於文件操作方式″rb+″准確的說法是( )

  A可讀寫文本文件

  B只讀二進制文件

  C只讀文本文件

  D可讀寫二進制文件

   在文件使用方式中字符串″rb″表示 (  )

  A 打開一個已存在的二進制文件只能讀取數據

  B 打開一個文本文件只能寫入數據

  C 打開一個已存在的文本文件只能讀取數據

  D 打開一個二進制文件只能寫入數據

  ????????

  設int a=b=c=;

  經過表達式(c=a!=b)&&(a= =b)&&(c=b)運算後ab和c的值分別是( )

  A

  B

  C

  D

   main()函數可以帶兩個形參一般分為argc和argv其中argv可以定義為(  )

  A int argv;

  B char * argv[];

  C char argv[];

  D char ** argv[];

  第二部分 非選擇題(共分)

  二填空題(本大題共小題每小題分)

  請在每小題的空格中填上正確答案錯填不填均無分

  設char ab;則表達式a/b′c′的值的類型為

  設int k=;執行printf(″%u″k);後輸出的值是

  設for(k=;k<;k++)++k;則該循環共執行 次

  設int a =b=;經表達式a=a∧bb=a∧ba=a∧b運算後ab的值分別是

  表示空類型的保留字是

   被調函數在執行結束時這個函數中定義的_______________類型的變量不被釋放

  

  struct student

  {

  int no;

  char name[];

  float score[];

  } sl* p = &sl;

  用指針法給sl的成員no賦值的語句是___________________

   C語言程序中對文本文件的存取是以________________為單位進行的

   設char string[] =″This_is_a_book!″;則數組的長度應是________________

   設int a[][] = {{}{}};則數組元素_____________________的值為

  三程序分析題 (本大題共小題每小題分)

  閱讀下列程序將輸出結果寫到各題右側的空白處

  

  int a = ;

  main()

  {int i;

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

  {a + + ;

  printf(″﹪da);

  s()

  }

  {

  s()

  {static int a = ;

  a + + ;

  printf(″﹪d \\ n″a);

  }

  

  # include ″stdioh″

  main()

  {char c;

  c = getchar();

  if((c> =′a′&&c< =′z′) ‖c> =′X′&&c< =′Z′)c = c ;

  printf(″﹪c \\ n″c);

  }

  設從鍵盤上輸入Next ↙

  

  # define N

  main()

  {int ijtempa[N]={};

  for(i = ;i

  {j = N - 1 - i;

  temp = a[i];a[i]=a[j];a[j]=temp;

  }

  for(i = 0;i

  }

  34.int x=30,y=50;

  sub(x,y)

  { y=x>y?x:y;

  return y;

  }

  main( )

  {

  {int x=100;

  printf(″%d\\n″,sub(x,y));

  }

  printf(″%d,%d\\n″,x,y);

  }

  35.設文件file1.c的內容為COMPUTER

  #include ″stdio.h″

  main( )

  { FILE *fp;

  char ch;

  if((fp=fopen(″file1.c″,″r″))= =NULL)

  { printf(″Cannot open file\\n″);

  exit(0);

  }

  while(!feof(fp))

  {

  ch=fgetc(fp);if(ch>=′A′&&ch<=′Z′)fputc(ch+32,stdout);

  }

  fclose(fp);

  }

  四、程序填充題(本大題共3小題,每小題6分,共18分)

  給出下列程序,將橫線處缺少的部分補上,使其能正確運行。Tw.WinGwIT.coM

  36.將一個十進制整數n轉變為二進制數。

  main( )

  { int i=0,j,n,num[20];

  scanf(″%d″, ); /*第一空*/

  while(n!=0)

  { num[i++]= ; /*第二空*/

  n= ; /*第三空*/

  }

  for(j=i-1;j>=0;j--)printf(″%d″,num [j]);

  }

  37.一個一維數組和一個二維數組同處一個共用型,將數據輸入一維數組後,在二維數組中輸出。

  main( )

  {union data

  { int a[10];

  int b ;/*第一空*/

  };

  union data ab;

  int i,j;

  for(i=0;i<10,i++)

  scanf(″%d″, ); /*第二空*/

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

  for(j=0;j<5;j++)

  printf(″%5d″, );/*第三空*/

<
From:http://tw.wingwit.com/Article/program/sjjg/201311/23394.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.