亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

試題

計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)

時(shí)間:2024-11-07 22:03:12 試題 我要投稿

2016年計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)

  一、選擇題

  1.下列敘述中正確的是(  )。

  A.數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)必定是一一對(duì)應(yīng)的

  B.由于計(jì)算機(jī)存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)一定是線性結(jié)構(gòu)

  C.程序設(shè)計(jì)語(yǔ)言中的數(shù)組一般是順序存儲(chǔ)結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)構(gòu)

  D.以上三種說(shuō)法都不對(duì)

  2.軟件按功能可以分為應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件),下面屬于系統(tǒng)軟件的是(  )。

  A.編輯軟件

  B.操作系統(tǒng)

  C.教務(wù)管理系統(tǒng)

  D.瀏覽器

  3.下列敘述中正確的是(  )。

  A.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行查找,最壞情況下需要的比較次數(shù)為n

  B.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(n/2)

  C.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(log2n)

  D.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(nlog2n)

  4.軟件(程序)調(diào)試的任務(wù)是(  )。

  A.診斷和改正程序中的錯(cuò)誤

  B.盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤

  C.發(fā)現(xiàn)并改正程序中的所有錯(cuò)誤

  D.確定程序中錯(cuò)誤的性質(zhì)

  5.數(shù)據(jù)流程圖(DFD)是(  )。

  A.軟件概要設(shè)計(jì)的工具

  B.軟件詳細(xì)設(shè)計(jì)的工具

  C.結(jié)構(gòu)化方法的需求分析工具

  D.面向?qū)ο蠓椒ǖ男枨蠓治龉ぞ?/p>

  6.軟件生命周期可分為定義階段、開發(fā)階段和維護(hù)階段。詳細(xì)設(shè)計(jì)屬于(  )。

  A.定義階段

  B.開發(fā)階段

  C.維護(hù)階段

  D.上述三個(gè)階段

  7.數(shù)據(jù)庫(kù)管理系統(tǒng)中負(fù)責(zé)數(shù)據(jù)模式定義的語(yǔ)言是(  )。

  A.數(shù)據(jù)定義語(yǔ)言

  B.數(shù)據(jù)管理語(yǔ)言

  C.數(shù)據(jù)操縱語(yǔ)言

  D.數(shù)據(jù)控制語(yǔ)言

  8.在學(xué)生管理的關(guān)系數(shù)據(jù)庫(kù)中,存取一個(gè)學(xué)生信息的數(shù)據(jù)單位是(  )。

  A.文件

  B.數(shù)據(jù)庫(kù)

  C.字段

  D.記錄

  9.數(shù)據(jù)庫(kù)設(shè)計(jì)中,用E—R圖來(lái)描述信息結(jié)構(gòu)但不涉及信息在計(jì)算機(jī)中的表示,它屬于數(shù)據(jù)庫(kù)設(shè)計(jì)的(  )。

  A.需求分析階段

  B.邏輯設(shè)計(jì)階段

  C.概念設(shè)計(jì)階段

  D.物理設(shè)計(jì)階段

  10.有兩個(gè)關(guān)系R和T如下:

  則由關(guān)系R得到關(guān)系T的操作是( )。

  A.選擇  B.投影

  C.交

  D.并

  11.以下敘述正確的是( )。

  A.C語(yǔ)言程序是由過(guò)程和函數(shù)組成的

  B.C語(yǔ)言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x))

  C.C語(yǔ)言函數(shù)不可以單獨(dú)編譯

  D.C語(yǔ)言中除了main函數(shù),其他函數(shù)不可作為單獨(dú)文件形式存在

  12.以下關(guān)于C語(yǔ)言的敘述中正確的是( )。

  A.C語(yǔ)言中的注釋不可以?shī)A在變量名或關(guān)鍵字的中間

  B.C語(yǔ)言中的變量可以在使用之前的任何位置進(jìn)行定義

  C.在C語(yǔ)言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須一致

  D.C語(yǔ)言的數(shù)值常量中夾帶空格不影響常量值的正確表示

  13.以下C語(yǔ)言用戶標(biāo)識(shí)符中,不合法的是( )。

  A._1

  B.AaBc

  C.a b

  D.a--b

  14.若有定義:“double a=22;int i=0,k=18;”,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句

  是(  )。

  A.a=a++,i++;B.i=(a+k)<=(i+k);

  C.i=a%11;D.i=!a;

  15.有以下程序:

  #include(stdio.h>

  main(  )

  {char a,b,C,d;

  scanf("%c%C",&a,&b);

  c=getchar(  );d=getchar(  );

  printf{"%c%c%c%c\n",a,b,C,d);

  }

  當(dāng)執(zhí)行程序時(shí),按下列方式輸入數(shù)據(jù)(從第l列開始,代表回車j注意:回車也是

  一個(gè)字符)

  12

  34

  則輸出結(jié)果是(  )。

  A.1234B.12

  C.12D.12

  3 34

  16.以下關(guān)于C語(yǔ)言數(shù)據(jù)類型使用的敘述中錯(cuò)誤的是(  )。-

  A.若要準(zhǔn)確無(wú)誤差地表示自然數(shù),應(yīng)使用整數(shù)類型

  B.若要保存帶權(quán)多位小數(shù)的數(shù)據(jù),應(yīng)使用雙精度類型

  C.若要處理如“人員信息”等含有不同類型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類型

  D.若只處理“真”和“假”兩種邏輯值,應(yīng)使用邏輯類型

  17.若a是數(shù)值類型,則邏輯表達(dá)式(a= =1)I I(a!=1)的值是(  )。

  A.1

  B.0

  C.2

  D.不知道a的值,不能確定

  18.以下選項(xiàng)中與“if(a= =l)a=b;else a++;”語(yǔ)句功能不同的switch語(yǔ)句是(  )。

  A.switch(a) B.switch(a= =l)

  {case l:a=b;break;{case 0:a=b;break;

  default:a++; case l:a++;

  }

  C.switch(a) D.switch(a= =l)

  {default:a++;break; {case l:a=b;break;

  case l:a=b; case 0:a++;

  }

  19.有如下嵌套的if語(yǔ)句:

  if(aif(aelse k=C:

  else

  if(belse k=C;

  以下選項(xiàng)中與上述if語(yǔ)句等價(jià)的語(yǔ)句是(  )。

  A.k=(aB.k=(ac)?b:c);

  C.k=(aD.k=(a20.有以下程序:

  #include

  main(  )

  {int i,j,m=1;

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

  {for(j=3;j>0;j--)

  {if(i*j>3)break;

  m*=i+j;

  }

  )

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

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.m=6

  B.m=2

  C.m=4

  D.m=3

  21.有以下程序:

  #include

  main(  )

  {int a=1,b=2;

  for(;a<8;a++){b+=a;a+=2;)

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

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.9,18

  B.8,11

  C.7,11

  D.10,14

  22.有以下程序,其中k的初值為八進(jìn)制數(shù):

  #include

  main(  )

  {int k=011;

  printf{"%d\n",k++};

  }

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.12

  B.11

  C.10

  D.9

  23.下列語(yǔ)句組中,正確的是(  )。

  A.char*s;s="Olympic";

  B.char sE73;s="Olympic";

  C.char*S;s={¨Olympic"};

  D.char sET3;s={"Olympic"};

  24.以下關(guān)于return語(yǔ)句的敘述中正確的是(  )。

  A.一個(gè)自定義函數(shù)中必須有一條return語(yǔ)句

  B.一個(gè)白定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語(yǔ)句

  C.定義成void類型的函數(shù)中可以有帶返回值的return語(yǔ)句

  D.沒有return語(yǔ)句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處

  25.下列選項(xiàng)中,能正確定義數(shù)組的語(yǔ)句是(  )。

  A.int num[0..2008];

  B.int num [];

  C.int N=2008;int num[N];

  D.#define N 2008; int num[N];

  26.有以下程序:

  #include

  void fun(char*C,int d)

  {*c=*c+1,d=d+1;

  printf(%"c%,c",*c,d);

  }

  main(  )

  {char b=’a’a=’A’;

  fun(&b,a);printf(%"c,%c\n",b,a);

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.b,B,b,A

  B.b,B,B,A

  C.a,B,B,a

  D.a,B,a,B

  27.若有定義"int(*pt)[3];",則下列說(shuō)法正確的是(  )。

  A.定義了基類型為int的三個(gè)指針變量

  B.定義了基類型為int的具有三個(gè)元素的指針數(shù)組pt

  C.定義了一個(gè)名為*pt、具有三個(gè)元素的整型數(shù)組

  D.定義了一個(gè)名為pt的指針變量,它可以指向每行有三個(gè)整數(shù)元素的二維數(shù)組

  28.設(shè)有定義"double a[10],*s=a;",以下能夠代表數(shù)組元素a[3]的是(  )。

  A.(*s)[3]

  B.*(s+3)

  C.*s[3]

  D.*s+3

  29.有以下程序:

  #include

  main(  )

  {int a[5]={1,2,3,4,5),b[5]={0,2,1,3,o},i,s=0;

  for(i=o;i<5;i++)s=s+a[b[i]];

  printf(”%d\n”,s);

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.6

  B.10

  C.11

  D.15

  30.有以下程序:

  #include

  main(  )

  {int b[3][3]=(0,1,2,0,1,2,0,1,2},i,j,t=l;

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

  for(j=1;j<=i;j++)t+=b[i][b[j][i]];

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

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.1

  B.3

  C.4

  D.0

  31.若有以下定義和語(yǔ)句:

  char s [10]="abcd!",*s2="\nl23\\";

  Drintf("%d%d\n",strlen(sl),strlen(s2));

  則輸出結(jié)果是(  )。

  A.5 5

  B.10 5

  C.10 7

  D.5 8

  32.有以下程序:

  #include

  #define N 8

  void fun(int*x,int i)

  {*x=*(x+i);)

  main(  )

  { int a[N]={1,2,3,4,5,6,7,8},i;

  fun(a,2);

  for(i=0;i{printf("Ha",a[i]);}

  printf("\n");

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.1313

  B.2234

  C.3234

  D.1234

  33.有以下程序:

  #include

  int f(int t[],int n);

  main(  )

  {int a[4]={1,2,3,4},s;

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

  int f(int t[],int n)

  {if(n>0)return t[n-1]+f(t,n-1);

  else return 0;

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.4

  B.10

  C.14

  D.6

  34.有以下程序:

  #include

  int fun(  )

  {static int x=1;

  X*=2;return X;

  main(  )

  {int i,S=1;

  for(i=1;i<=2;i++)s=fun(  );

  printf{¨%d\n",s);

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.0

  B.1

  C.4

  D.8

  35.有以下程序:

  #include

  #define SUB(a)(a)-(a)

  main(  )

  {int a=2,b=3,c=5,d;

  d=SUB(a+b)*C;

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

  )

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.0

  B.-l2

  C.-20

  D.10

  36.設(shè)有定義:

  struet complex

  {int real,unreal;)datal={1,8},data2;

  則以下賦值語(yǔ)句中錯(cuò)誤的是(  )。

  A.data2=datal;

  B.data2={2,6};

  C.data2.real=datal.real;

  D.data2.real=datal.unreal;

  37.有以下程序:

  #include

  #include

  struct A

  {int a;char b[10];double C;);

  void f(struct A t);

  main(  )

  {struct A a={"1001,"ZhangDa",l098,0};

  f(a);printf("%d,%S,%6.1f\n",a.a,a.b,a.c);}

  void f(struct A t)

  {t.a=1002;strcpy(t.b,"ChangRon9");t.c=1202.0;}

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.1001,ZhangDa,1098.0

  B.1002,ChangRong,1202.0

  C.1001,ChangRong,1098.0

  D.1002,ZhangDa,1202.0

  38.有以下定義和語(yǔ)句:

  struct workers

  {int num;char name[20];char C;

  struct

  (int day;int month;int year;)S;

  };

  struct workers w,*pw;

  pw=&w;

  能給w中year成員賦1980的語(yǔ)句是(  )。

  A.*pw.year=1980;

  B.w.year=1980;

  C.pw->year=1980

  D.w.S.year=1980;

  39.有以下程序:

  #include

  main(  )

  {int a=2,b=2,C=2;

  print{("%d\n",a/b&c);

  }

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.0

  B.1

  C.2

  D.3

  40.有以下程序:

  #include

  main(  )

  {FILE*fp;char str[10];

  fp=fopen("myfile,dat","");

  {puts("abe",ip);fclose(fp);

  fp=fopen("myfile.dat","a*");

  fprintf(fp,"%d",28);

  rewind(fp);

  fscanf(fp,"%S",str);puts(str);

  fclose(fp);

  }

  程序運(yùn)行后的輸出結(jié)果是(  )。

  A.abc

  B.28c

  C.abc28

  D.內(nèi)類型不一致而出錯(cuò)

  二、基本操作題

  請(qǐng)補(bǔ)充main(  )函數(shù),該函數(shù)的功能是:如果數(shù)組arr的前一個(gè)元素比后一個(gè)元素小,則把它保存在數(shù)組bb中并輸出。

  例如,若數(shù)組中的元素為:“40,68,62,33,35,52,48,95,66,73”,則輸出:“40,33,35,48,66”。

  注意:部分源程序給出如下。

  請(qǐng)勿改動(dòng)函數(shù)(  )main和其他函數(shù)中的任何內(nèi)容,僅在main(  )函數(shù)的橫線上填入所編寫的若干表達(dá)式或語(yǔ)句。

  試題程序:

  #include

  #include

  #define M l0

  void main(  )

  {

  int i,n=0;

  int arr[M]=(40,68,62,33,35,52,48,95,66,73);

  int bb[M];

  system("CLS");

  for(i=0;i<【1】;i++)

  if(arr[i]【2】;

  printf("\n***display bb***\n");

  for(i=0;iprintf("bb[%d]=%2d",【3】);

  }

  三、程序改錯(cuò)題

  給定程序中,函數(shù)proc(  )的功能是:使數(shù)組中的元素的值縮小5倍。

  請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。

  注意:不要改動(dòng)main(  )函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。

  試題程序:

  #include

  #include

  #include

  float m[lO];

  //****found****

  int proc(void)

  {

  int j;

  printf("In subfunc after calling\n");

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

  {

  //****found****

  printf("%f",m[j]%5);

  }

  }

  void main(  )

  {

  int i;

  printf("In main before calling\n");

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

  {

  m[i]=i+20;

  printf("%f",m[i]);

  }

  proc(  );

  printf("\nln main after calling\n");

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

  printf("%f",m[i]/5);

  }

  四、程序設(shè)計(jì)題

  學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,M名學(xué)生的數(shù)據(jù)已在主函數(shù)中放入結(jié)構(gòu)體數(shù)組stu中,請(qǐng)編寫函數(shù)proc(  ),其功能是:按分?jǐn)?shù)的高低排列學(xué)生的記錄,高分在前。

  注意:部分源程序給出如下。

  請(qǐng)勿改動(dòng)main(  )函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc(  )的花括號(hào)中填入所編寫的若干語(yǔ)句。

  試題程序:

  #include

  #define M l6

  typedef struct

  {

  char num[l0];

  int S;

  }

  STREC:

  void proc(STREC a[])

  {

  int i,j;

  STREC t;

  for(i=1;i排序*/

  for(j=0;jif(a[j].s的記錄,高分在前*/

  {t=a[j];a[j]=a[j+1];a[j+1]=t;)

  }

  void main(  )

  {

  STREC stu[M]={{"GA005",85),{"GA003",76},

  {"GA002",69},{"GA004",85),{"GA001",91),

  {"GA007",72),{"GA008",64),{"GA006",87),

  {"GA015",85),{"GA013",91),{"GA012",64),

  {¨GA014",91),{"GA011",66),{"GA017",64},

  {"GA018",64),{"GA016",72}};

  int i;

  proc(stu);

  printf("The data after sorted:\n");

  for(i=0;i{

  if(i%4= =0)

  //每行輸出4個(gè)學(xué)生記錄

  printf("n");

  printf("%s%4d",stu[i],num,stu[i].s);

  }

  printf("\n");

  }

【計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)】相關(guān)文章:

2024二級(jí)c語(yǔ)言上機(jī)題庫(kù)04-18

2017計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)題庫(kù)及答案08-07

計(jì)算機(jī)二級(jí)C語(yǔ)言程序上機(jī)指導(dǎo)10-29

計(jì)算機(jī)二級(jí)C語(yǔ)言預(yù)測(cè)上機(jī)精選訓(xùn)練題07-05

計(jì)算機(jī)二級(jí)考試《C語(yǔ)言》上機(jī)答題技巧06-27

2017計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)特訓(xùn)題08-12

計(jì)算機(jī)二級(jí)C語(yǔ)言上機(jī)沖刺試題及答案08-29

計(jì)算機(jī)二級(jí)VF上機(jī)題庫(kù)及答案08-15

計(jì)算機(jī)二級(jí)C語(yǔ)言考前預(yù)測(cè)上機(jī)試題及解析07-04

計(jì)算機(jī)二級(jí)考試C語(yǔ)言預(yù)測(cè)上機(jī)鞏固試題06-17