<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            試題

            計算機二級《C語言》真題練習

            時間:2025-04-30 19:27:45 嘉璇 試題 我要投稿

            計算機二級《C語言》真題練習

              在各領域中,我們需要用到練習題的情況非常的多,只有認真完成作業,積極地發揮每一道習題特殊的功能和作用,才能有效地提高我們的思維能力,深化我們對知識的理解。一份好的習題都是什么樣子的呢?下面是小編為大家收集的2016計算機二級《C語言》真題練習,供大家參考借鑒,希望可以幫助到有需要的朋友。

              計算機二級《C語言》真題練習 1

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

              A)棧是“先進先出”的線性表

              B)隊列是“先進先出”的線性表

              C)循環隊列是非線性結構

              D)有序性表既可以采用順序存儲結構,也可以采用鏈式存儲結構

              (2)支持子程序調用的數據結構是

              A)棧 B)樹 C)隊列 D)二叉樹

              (3)某二叉樹有5個度為2的結點,則該二叉樹中的葉子結點數是

              A)10 B)8 C)6 D)4

              (4)下列排序方法中,最壞情況下比較次數最少的是

              A)冒泡排序

              B)簡單選擇排序

              C)直接插入排序

              D)堆排序

              (5)軟件按功能可以分為:應用軟件、系統軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是

              A)編譯軟件

              B)操作系統

              C)教務管理系統

              D)匯編程序

              (6)下面敘述中錯誤的是

              A)軟件測試的目的是發現錯誤并改正錯誤

              B)對被調試的程序進行“錯誤定位”是程序調試的必要步驟

              C)程序調試通常也稱為Debug

              D)軟件測試應嚴格執行測試計劃,排除測試的隨意性

              (7)耦合性和內聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是

              A)提高耦合性降低內聚性有利于提高模塊的獨立性

              B)降低耦合性提高內聚性有利于提高模塊的獨立性

              C)耦合性是指一個模塊內部各個元素間彼此結合的緊密程度

              D)內聚性是指模塊間互相連接的緊密程度

              (8)數據庫應用系統中的核心問題是

              A)數據庫設計

              B)數據庫系統設計

              C)數據庫維護

              D)數據庫管理員培訓

              (10)將E-R圖轉換為關系模式時,實體和聯系都可以表示為

              A)屬性 B)鍵 C)關系 D)域

              (11)以下選項中合法的標識符是

              A) 1-1 B)1—1 C)-11 D)1--

              (12)若函數中有定義語句:int k;,則

              A)系統將自動給k賦初值0

              B)這時k中值無定義

              C)系統將自動給k賦初值-1

              D)這時k中無任何值

              (13)以下選項中,能用作數據常量的是

              A)o115 B) 0118 C)1.5e1.5 D) 115L

              (14)設有定義:int x=2;,以下表達式中,值不為6的是

              A) x*=x+1

              B) x++,2*x

              C)x*=(1+x)

              D)2*x,x+=2

              (15)程序段:int x=12;

              double y=3.141593; printf(“%d%8.6f”,x,y);的輸出結果是

              A)123.141593

              B)12

              3.141593

              C)12,3.141593

              D)123.141593

              (16)若有定義語句:double x,y,*px,*py,執行了px=&x, py=&y;之后,正確的輸入語句是

              A)scanf(“%f%f”,x,y);

              B) scanf(“%f%f”,&x,&y);

              C) scanf(“%lf%le”,px,py);

              D) scanf(“%lf%lf”,x,y);

              (17)以下是if語句的基本形式:

              if(表達式)

              語句

              其中“表達式”

              A)必須是邏輯表達式

              B)必須是關系表達式

              C)必須是邏輯表達式或關系表達式

              D)可以是任意合法的表達式

              (18)有以下程序

              #include

              main()

              {int x;

              scanf(“%d”,&x);

              if(x<=3); else

              if(x!=10)

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

              }

              程序運行時,輸入的值在哪個范圍才會有輸出結果

              A)不等于10的整數

              B)大于3且不等于10的整數

              C)

              大于3或等于10的整數

              D)小于3的整數

              (19)有以下程序

              #include

              Main()

              {

              int a=1,b=2,c=3,d=0;

              if(a= =1 &&b++= =2)

              if(b!=2 || c--!=3)

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

              else printf(“%d,%d,%d\n”,a,b,c);

              else printf(“%d,%d,%d\n”,a,b,c);

              }

              程序運行后的輸出結果是

              A)1,2,3

              B)1,3,2

              C)1,3,3

              D)3,2,1

              (21)有以下程序

              #include

              main()

              {char

              *s=(“ABC);

              do

              {printf(“%d”,*s%10);s++;

              }while(*s);

              }

              注意,字母A的ASCII碼值為65。程序運行后的輸出結果是

              A)5670

              B)656667

              C)567

              D)ABC

              (22)設變量已正確定義,以下不能統計出一行中輸入字符個數(不包含回車符)的程序段是

              A)n=0;while((ch=get))!=’\n’)n++;

              B) n=0;while(get)!=’\n’)n++;

              C)for(n=0; get)!=’\n’;n++);

              D)n=0;for(ch=get);ch!=’\n’;n++);

              (23)有以下程序

              #include

              main()

              { int a1,a2;char c1,c2;

              scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);

              printf(“%d,%c,%d,%c”,&1,c1,a2,c2);

              }

              若想通過鍵盤輸入,使得a1的值為12,a2的是為34,c1的值為字符a,c2的`值為字符b,程序輸出結果是:12,a,34,b,則正確的輸入格式是(以下

              代表空格,代表回車)

              A)12a34b

              B)12

              a

              34

              b

              C)12,a,34,b

              D)12

              a34

              b

              (24)有以下程序

              #include

              int f(int x,int y)

              {return()y-x)*x);}

              main()

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

              d=f(f(a,b),f(a,c));

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

              }

              程序運行后的輸出結果是

              A)10

              B)9

              C)8

              D)7

              (25)有以下程序

              #include

              void fun(char

              *s)

              {while(*s)

              { if(*s%2==0)

              printf(“%c”,*s);

              s++;

              }

              }

              main()

              { char

              a[]={“good”};

              fun(a);printf(“\n”);

              }

              注意:字母a的ASCⅡ碼值為97,程序運行后的輸出結果是

              A)d

              B)go

              C)god

              D)good

              (26)有以下程序

              #include

              void fun( int *a,int *b)

              {int *c;

              c=a;a=b;b=c;

              }

              main()

              {int x=3,y-5,*P=&x,*q=&y;

              fun(p,q);printf(“%d,%d,”,*p,*q);

              fun(&x,&y);printf(“%d,%d\n”,*p,*q);

              }

              程序運行后的輸出結果是

              A)3,5,5,3

              B)3,5,3,5

              C)5,3,3,5

              D)5,3,5,3

              (27)有以下程序

              #include

              viod f(int *p,int *q);

              main()

              { int m=1,n=2,*r=&m;

              f(r,&n);printf(“%d,%d”,m,n);

              }

              void f(int *p,int *q)

              {p=p+1;*q=*q+1;}

              程序運行后輸出的結果是

              A)1,3

              B)2,3

              C)1,4

              D)1,2

              (28)以下函數按每行8個輸出數組中的數據

              void fun( int *w,int n)

              { int i;

              for(i=0;i

              {_________________

              printf(“%d”,w);

              }

              printf(“\n”);

              }

              下劃線處應填入的語句是

              A)if(i/8==0)print(“\n”);

              B) if(i/8==0)continue;

              C) if(i%8==0)print(“\n”);

              D) if(i%8==0)continue;

              (29)若有以下定義

              int x[10],*pt=x;

              則對x數組元素的正確應用是

              A)*&x[10]

              B)*(x+3)

              C)*(pt+10)

              D)pt+3

              (30)設有定義:char s[81];int i=10;,以下不能將一行(不超過80個字符)帶有空格的字符串真確讀入的語句或語句組是

              A

              gets(s)

              B)while((s[i++]=get))!=”\n”;s=”\0”;

              C)scanf(“%s”,s);

              D)do{scanf(“%c”,&s);}while(s[i++]!=”\n”);s=”\0”;

              (31)有以下程序

              #include

              main()

              { char *a[ ]={“abcd”,”ef”,”gh”,”ijk”};int I;

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

              printf(“%c”,*a);

              }

              程序運行后輸出的結果是

              A)aegi

              B)dfhk

              C)abcd

              D)abcdefghijk

              (32)以下選項中正確的語句組是

              A)char s[];s=”BOOK!”;

              B) char *s;s={”BOOK!”};

              C)char s[10];s=”BOOK!”;

              D) char *s;s=”BOOK!”;

              (33)有以下程序

              #include

              int fun{int x,int y}

              { if(x==y) return(x);

              else returen((x+y)/2)

              }

              main()

              { int a=4,b=5,c=6;

              printf(“%d\n”,fun(2*a,fun(b,c)))

              }

              程序運行后的輸出結果是

              A)3

              B)6

              C)8

              D)12

              (34)設函數中有整型變量n,為保證其在未賦值的情況下初值為0,應選擇的存儲類別是

              A)auto

              B) register

              C)static

              D)auto或register

              (35)有以下程序

              #include

              int b=2;

              int fun(int *k)

              { b=*k+b;return(b);}

              main()

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

              for(i=2;i<4;i++) {b=fun(&a)+b;printf(“%d”,b);}

              printf(“\n”);

              }

              程序運行后輸出的結果是

              A)10

              12

              B)8

              10

              C)10

              28

              D)10

              16

              (36)有以下程序

              #include

              #define PT 3.5;

              #define S(x) PT*x*x;

              mian()

              { int a=1, b=2; printf(“%4.1f\n”,S(a+b));}

              程序運行后輸出的結果是

              A)14.0

              B)31.5

              C)7.5

              D)程序有錯無輸出結果

              (37)有以下程序

              #include

              struct ord

              { int x,y;} dt[2]={1,2,3,4};

              main()

              { struct ord *p=dt;

              printf(“%d,”,++p->x); printf(“%d\n”,++p->y);

              }

              程序的運行結果是

              A)1,2

              B)2,3

              C)3,4

              D)4,1

              (38)設有宏定義:#include

              IsDIV(k,n) ((k%n==1)?1:0且變量m已正確定義并賦值,則宏調用:IsDIV(m,5)&& IsDIV(m,7)為真時所要表達的是

              A)判斷m是否能被5或者7整除

              B)判斷m是否能被5和7整除

              C)判斷m被5或者7整除是否余1

              D)判斷m被5和7整除是否余1

              (39)有以下程序

              #include

              main()

              { int a=5,b=1,t;

              t=(a<<2|b); printf(“%d\n”,t)

              }

              程序運行后的輸出結果是

              A)21

              B)11

              C)6

              D)1

              (40)有以下程序

              #include

              main()

              { EILE *f;

              f=fopen(“filea.txt”,”w”);

              fprintf(f,”abc”);

              fclose(f);

              }

              若文本文件filea.txt中原有內容為:hello,則運行以上程序后,文件filea.txt中的內容為

              A) helloabc

              B)abclo

              C)abc

              D)abchello

              計算機二級《C語言》真題練習 2

              (1)決定局域網特性的主要技術要素是:網絡拓撲、傳輸介質和

              A)數據庫軟件

              B)服務器軟件

              C)體系結構

              D)介質訪問控制方法

              答案D

              (2)快速以太網FastEthernet的傳輸速率為

              A)100Mbps

              B)10Mbps

              C)1Gbps

              D)10Gbps

              答案A

              (3)在雙絞線組網的方式中,____是以太網的中心連接設備。

              A)集線器

              B)收發器

              C)中繼器

              D)網卡

              答案A

              (4)網絡*作系統種類比較多,下面____不屬于網絡*作系統

              A)DOS

              B)WindowsNT

              C)NetWare

              D)Unix

              答案A

              (5)關于電子郵件下面的說法不正確的是

              A)發送電子郵件時,通訊雙方必須都在場

              B)電子郵件比人工郵件傳送更方便、快捷

              C)電子郵件可以同時發送給多個用戶

              D)在一個電子郵件種,可以發送文字、圖像、語音等信息

              答案A

              (6)網絡看起來是“連接”的,但從網絡連接的原理看又可以是“非連接的”。Internet中不是面向連接應用程序有____。

              A)電子郵件E-mail

              B)文件傳輸FTP

              C)網絡在線游覽WWW

              D)遠程登陸Telnet

              答案A

              (7)網絡體系結構可以定義成:

              A)計算機網絡的實現

              B)執行計算機數據處理的軟件模塊

              C)建立和使用通信硬件和軟件的一套規則和規范

              D)由ISO(國際標準化組織)制定的一個標準

              答案C

              (8)OSI模型的物理層負責下列哪一種功能?

              A)格式化報文

              B)為數據選擇通過網絡的`路由

              C)定義連接到介質的特征

              D)提供遠程文件訪問能力

              答案C

              (9)在不同網絡結點的對等層之間的通信需要下列哪一項協議?

              A)模塊接口

              B)對等層協議

              C)電信號

              D)傳輸介質

              答案B

              (10)____拓撲結構不是局域網所使用拓撲結構

              A)星型拓撲

              B)網狀型拓撲

              C)總線型拓撲

              D)環型拓撲

              答案B

              訓練二

              (1)在現實中,一般我們一般將計算機分類為

              A)服務器、工作站、臺式機、筆記本、掌上電腦

              B)大型機、小型機、個人計算機、工作站、巨型計算機

              C)服務器、工作站、臺式機、筆記本

              D)服務器/工作站、臺式機、筆記本、掌上電腦,大型機、小型機

              答案A

              (2)MIPS常用來描述計算機的運算速度,其含義是

              A)每秒鐘處理百萬個字符

              B)每分鐘處理百萬個字符

              C)每秒鐘執行百萬條指令

              D)每分鐘執行百萬條指令

              答案C

              (3)下面不屬于網卡功能的是

              A)實現與主機總線的通信連接

              B)實現數據鏈路層的功能

              C)實現物理層的'功能

              D)實現調制和解調功能

              答案D

              (4)McAfeeAssociatesVirusScan是____軟件

              A)文檔管理軟件

              B)傳真軟件

              C)群件軟件

              D)病毒防治軟件

              答案D

              (5)計算機*作系統中,若P、V*作的信號量S初值為2,當前值為-1,則表示有____個等待進程。

              A)0個

              B)1個

              C)2個

              D)3個

              答案B

              (6)NetWare操作系統提供三級容錯機制。第三級系統容錯(SFTIII)提供了

              A)文件服務器鏡像

              B)熱修復與寫后讀驗證

              C)雙重目錄與文件分配表

              D)硬盤鏡像與硬盤雙工

              答案A

              (7)當通過電話線連接到ISP時,因為電話線路輸出信號為____信號,計算技術出信號只能通過調制解調器同電話網連接。

              A)數字

              B)模擬

              C)音頻

              D)模擬數字

              答案C

              (8)SNMP位于ISOOSI參考模型的

              A)應用層

              B)數據鏈路層

              C)對話層

              D)網絡層

              答案A

              (9)SDH幀結構由橫向270×N列和縱向9行8字節組成。每秒鐘傳送8000幀,則STM-1每秒鐘的傳送速率為

              A)155.52Mbps

              B)311.04Mbps

              C)77.76Mbps

              D)311.04Mbps

              答案A

              (10)我們將目前網絡存在的威脅分為兩類:滲入威脅和植入威脅,下面屬于滲入威脅的有Ⅰ假冒

              Ⅱ旁路控制Ⅲ特羅伊木馬Ⅳ陷門

              A)Ⅰ、Ⅱ

              B)Ⅲ、Ⅳ

              C)Ⅰ、Ⅳ

              D)Ⅰ、Ⅱ、Ⅲ、Ⅳ

              答案A

              計算機二級《C語言》真題練習 3

              1). 關于C語言的變量,以下敘述中錯誤的是( )

              A.所謂變量是指在程序運行過程中其值可以被改變的量

              B.變量所占的存儲單元地址可以隨時改變

              C.程序中用到的所有變量都必須先定義后才能使用

              D.由三條下劃線構成的符號名是合法的變量名

              正確答案:B

              答案解析:變量是指在程序運行過程中其值可以改變的值,一個變量實質上是代表了內存中的某個存儲單元。在程序中對某個變量的操作實際上就是對這個存儲單元的操作,程序運行期間,這個分配的存儲單元不會改變,但是其值可以變化。變量命名要符合標識符的規定,其中下劃線是標識符的組成字符。程序中所有變量都必須先定義后使用。

              2). 當變量c的值不為2、4、6時,值也為″真″的表達式是( )

              A.(c==2)||(c==4)||(c==6)

              B.(c>=2 && c<=6)&&!(c%2)

              C.(c>=2 &&c<=6)&&(c%2!=1)

              D.(c>=2 && c<=6) || (c!=3)|| (c!=5)

              正確答案:D

              答案解析:邏輯或運算中,只要有一項為真,表達式的值就為真,故選項D中c的值不為2、4、6時,那么表達式(c>=2&& c<=6)以及(c!=3)、(c!=5)必有一個成立,表達式的值也為真。

              3). 在C語言中,函數返回值的類型最終取決于

              A.函數定義時在函數首部所說明的函數類型

              B.return語句中表達式值的類型

              C.調用函數時主調函數所傳遞的實參類型

              D.函數定義時形參的類型

              正確答案:A

              答案解析:在C語言中,應當在定義函數時指定函數值的類型,凡不加類型說明的函數,一律按整型處理。在定義函數時,對函數值說明的類型一般應該和return語句中的表達式類型一致。如果函數值的類型和return語句中的表達式類型不一致,則以函數類型為主,即函數類型決定返回值的類型。

              4). 以下敘述中正確的是( )

              A.在C語言中,預處理命令行都以″#″開頭

              B.預處理命令行必須位于C源程序的起始位置

              C.#include 必須放在C程序的開頭

              D.C語言的預處理不能實現宏定義和條件編譯的功能

              正確答案:A

              答案解析:在C語言中,凡是以″#″號開頭的行,都稱為″編譯預處理″命令行。預處理命令可以放在程序中的任何位置,其有效范圍是從定義開始到文件結束。預處理命令有宏定義、文件包含和條件編譯三類。#include 命令行表示程序中要引用C標準函數庫中的標準輸入輸出函數。

              5). 下列敘述中,不屬于測試的特征的是

              A.測試的挑剔性

              B.完全測試的不可能性

              C.測試的可靠性

              D.測試的經濟性

              正確答案:C

              答案解析:軟件測試的目標是在精心控制的環境下執行程序,以發現程序中的錯誤,給出程序可靠性的鑒定。它有3個方面的重要特征,即測試的挑剔性、完全測試的不可能性及測試的經濟性。其中,沒有測試的可靠性這一說法。

              6). 以下選項中不屬于C語言標識符的是( )

              A.用戶標識符

              B.關鍵字

              C.常量

              D.預定義標識符

              正確答案:C

              答案解析:C語言的標識符可分為以下3類:①關鍵字。C語言預先規定了一批標識符,它們在程序中都代表著固定的含義,不能另作他用。這些字符稱為關鍵字。例如,int、double、if、else、while、for等。②預定義標識符。即預先定義并具有特定含義的標識符。③用戶標識符。由用戶根據需要定義的標識符稱為用戶標識符,又稱自定義標識符,一般用來給變量、函數、數組等命名。

              7). 以下關于字符串的敘述中正確的是( )

              A.兩個字符串中的字符個數相同時才能進行字符串大小的比較

              B.可以用關系運算符對字符串的大小進行比較

              C.空串比空格打頭的字符串小

              D.C語言中有字符串類型的常量和變量

              正確答案:C

              答案解析:C語言本身并沒有設置一種類型來定義字符串變量,卻允許使用″字符串常量″。字符串常量是由雙引號括起來的一串字符。任意兩個字符串的大小比較要調用字符串比較函數strcmp(s1,s2 )來進行,其比較的方法是依次對s1和s2中對應位置上的字符兩兩進行比較,當出現第一對不相同的字符時,即由這兩個字符決定所在串的大小(比較字符大小的依據是其ASCⅡ碼值)。

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

              A.調用printf( )函數時,必須要有輸出項

              B.使用put )函數時,必須在之前包含頭文件stdio.h

              C.在C語言中,整數可以以二進制、八進制或十六進制的形式輸出

              D.調節get )函數讀入字符時,可以從鍵盤上輸入字符所對應的ASCII碼

              正確答案:B

              答案解析:選項A,若printf函數沒有輸出項,且格式字符串中不含格式信息,則輸出的是格式字符串本身,若格式字符串含有格式信息,運行時則出現錯誤提示;選項C,在C語言中,整數可以十進制、八進制或十六進制的形式輸出;選項D,getchar函數是從標準輸入設備讀取一個字符。

              9). 以下結構體類型說明和變量定義中正確的是( )

              A.typedefstruct { int n; char c; } REC; REC t1,t2;

              B.structREC ; { int n; char c; }; REC t1,t2;

              C.typedefstruct REC; { int n=0; char c=′A′; } t1,t2;

              D.struct{ int n; char c; } REC; REC t1,t2;

              正確答案:A

              答案解析:定義結構體類型的一般形式為:struct 結構體名 {成員列表};struct 結構體名后不能加″;″號,所以選項B、C)錯誤,選項D中定義無名稱的結構體類型同時定義結構體變量形式應為struct t1,t2;選項A為用戶自定義類型,其為正確的定義形式。

              10). 若實體A和B是一對多的聯系,實體B和C是一對一的聯系,則實體A和C的聯系是( )

              A.一對一

              B.一對多

              C.多對一

              D.多對多

              正確答案:B

              答案解析:由于B和C有一一對應的聯系,而A和B只間有一對多的聯系,則通過關系之間的傳遞,則A和C之間也是一對多的聯系。

              11). 待排序的關鍵碼序列為(15,20,9,30,67.65,45,90),要按關鍵碼值遞增的順序排序,采取簡單選擇排序法,第一趟排序后關鍵碼15被放到第( )個位置。

              A.2

              B.3

              C.4

              D.5

              正確答案:B

              答案解析:選擇排序的基本思想是掃描整個線性表,從中選出最小的元素,將它交換到表的最前面,然后對剩下的子表采用同樣的方法,直到子表為空。所以第一趟排序后,將選出最小的元素9放在第一個位置,元素15則被交換放在第三個位置。

            【計算機二級《C語言》真題練習】相關文章:

            2016計算機二級《C語言》填空題真題練習10-26

            計算機二級C語言真題09-30

            2016全國計算機二級《C語言》真題練習11-07

            計算機二級C語言筆試真題10-12

            全國計算機二級考試《C語言》真題練習及答案09-20

            計算機二級C語言真題選擇題07-20

            計算機二級C語言真題填空題05-08

            備考計算機二級C語言真題試卷12-03

            計算機二級C語言歷年真題及答案11-02

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看