<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 試題

    9月計算機二級C語言程序設計練習題及答案

    時間:2025-04-27 05:57:34 試題 我要投稿
    • 相關推薦

    2017年9月計算機二級C語言程序設計練習題及答案

      2017年計算機二級考試即將在九月份進行,你準備好了嗎?下面是小編為大家帶來的計算機二級C語言程序設計練習題,歡迎閱讀。

      練習題一:

      1.若有以下數組說明,則i=10;a[a[i]]元素數值是(C )。

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

      A、10

      B、9

      C、6

      D、5

      先算a[a[i]]內層的a[i],由于i=10,因此a[i]即a[10].

      a[10]對應下面數組中的元素為9. 因此a[a[i]]即為a[9]

      a[9]對應下面數組中的元素為6. 因此a[9]即為6

      2.若有說明:int a[][3]={{1,2,3},{4,5},{6,7}}; 則數組a的第一維的大小為: ( B )

      A、2

      B、3

      C、4

      D、無確定值

      5 7

      D、3 6 9

      二維數組的一維大小,即指二維數組的行數,在本題中,按行對二維數組賦值,因此內層有幾個大括號,數組就有幾行

      3.對二維數組的正確定義是(C )

      詳見教材P149~152,二維數組的定義、初始化

      類型符 數組名 [常量表達式][常量表達式]

      二維數組可以看做是矩陣

      類型符是指數組中數組元素的類型;數組名要符合標識符命名規則;第一個常量表達式是指數組的行數;第二個常量表達式是指數組的列數;常量表達式的值只能是整數,不可以是變量,而且從1開始計數。

      一維數組初始化時可以省略數組長度

      二維數組初始化時可以省略行數,但不能省略列數

      選項A,B,都省略了列數

      選項D,不符合二維數組定義的一般形式,行、列常量表達式應該放在不同的[]中

      A、int a[ ][ ]={1,2,3,4,5,6};

      B、int a[2] []={1,2,3,4,5,6};

      C、int a[ ] [3]={1,2,3,4,5,6};

      D、int a[2,3]={1,2,3,4,5,6};

      4.已知int a[3][4];則對數組元素引用正確的是__C___

      A、a[2][4]

      B、a[1,3]

      C、a[2][0]

      D、a(2)(1)

      詳見教材P150,數組元素的引用

      數組名[下標] [下標]

      引用數組元素時,[ ]中的下標為邏輯地址下標,只能為整數,可以為變量,且從0開始計數

      第一個[下標]表示行邏輯地址下標,第二個[下標]表示列邏輯地址下標。

      本題圖示詳見P149圖6.7

      因此a的行邏輯地址范圍0~2;a的列邏輯地址范圍0~3;

      選項A,列邏輯地址下標超過范圍

      選項B,D,的引用形式不正確。

      5.C語言中函數返回值的類型是由 A 決定的.

      A、函數定義時指定的類型

      B、 return語句中的表達式類型

      C、 調用該函數時的實參的數據類型

      D、形參的數據類型

      6. 在C語言中,函數的數據類型是指(A )

      A、 函數返回值的數據類型

      B、 函數形參的數據類型

      C、 調用該函數時的實參的數據類型

      D、任意指定的數據類型

      7.在函數調用時,以下說法正確的是( B )

      A、函數調用后必須帶回返回值

      B、實際參數和形式參數可以同名

      C、函數間的數據傳遞不可以使用全局變量

      D、主調函數和被調函數總是在同一個文件里

      8. 在C語言中,表示靜態存儲類別的關鍵字是: ( C )

      A、 auto

      B、 register

      C、static

      D、extern

      9.未指定存儲類別的變量,其隱含的存儲類別為(A )。

      A、auto

      B、static

      C、extern

      D、register

      10. 若有以下說明語句:

      struct student

      { int num;

      char name[ ];

      float score;

      }stu;

      則下面的敘述不正確的是: (D )

      A、 struct是結構體類型的關鍵字

      B、 struct student 是用戶定義的結構體類型

      C、 num, score都是結構體成員名

      D、 stu是用戶定義的結構體類型名

      11.若有以下說明語句:

      struct date

      { int year;

      int month;

      int day;

      }brithday;

      則下面的敘述不正確的是__C___.

      A、 struct是聲明結構體類型時用的關鍵字

      B、 struct date 是用戶定義的結構體類型名

      C、 brithday是用戶定義的結構體類型名

      D、year,day 都是結構體成員名

      12. 以下對結構變量stul中成員age的非法引用是 B

      struct student

      { int age;

      int num;

      }stu1,*p;

      p=&stu1;

      A、 stu1.age

      B、 student.age

      C、 p->age

      D、(*p).age

      13.設有如下定義:

      struck sk

      { int a;

      float b;

      }data;

      int *p;

      若要使P指向data中的a域,正確的賦值語句是 C

      A、 p=&a;

      B、 p=datA、a;

      C、p=&datA、a;

      D、*p=datA、a;

      14.設有以下說明語句:

      typedef struct stu

      { int a;

      float b;

      } stutype;

      則下面敘述中錯誤的是( D )。

      A、struct是結構類型的關鍵字

      B、struct stu是用戶定義的結構類型

      C、a和b都是結構成員名

      D、stutype是用戶定義的結構體變量名

      15.語句int *p;說明了 C 。

      A、p是指向一維數組的指針

      B、p是指向函數的指針,該函數返回一int型數據

      C、p是指向int型數據的指針

      D、p是函數名,該函數返回一指向int型數據的指針

      練習題二:

      1、以下語句的輸出結果是( )。

      int a=-1,b=4,k;

      k=(+ +a<0)&&!(b - -<=0);

      printf("%d,%d,%d ",k,a,b);

      A. 1,0,4

      B. 1,0,3

      C. 0,0,3

      D. 0,0,4

      2、下列程序的輸出結果是( )。

      char *p1="abcd", *p2="ABCD", str[50]="xyz";

      strcpy(str+2,strcat(p1+2,p2+1));

      printf("%s",str);

      A. xyabcAB

      B. abcABz

      C. ABabcz

      D. xycdBCD

      3、執行下面的程序后,a的值是( )。

      #define SQR(X) X*X

      main( )

      { int a=10,k=2,m=1;

      a/=SQR(k+m)/SQR(k+m);

      printf("%d ",a); }

      A. 10

      B. 1

      C. 9

      D. 0

      4、設A為存放(短)整型的一維數組,如果A的首地址為P,那么A中第i 個元素的地址為( )。

      A.P+i*2

      B. P+(i-1)*2

      來源:考試大

      C. P+(i-1)

      D. P+i

      5、下列程序執行后輸出的結果是( )。

      int d=1;

      fun (int p)

      { int d=5;

      d + =p + +;

      printf("%d,",d); }

      main( )

      { int a=3;

      fun(a);

      d + = a + +;

      printf("%d ",d); }

      A. 8, 4

      B. 9, 6

      C. 9, 4

      D. 8, 5

      6、表達式:10!=9的值是( )。

      A. true

      B. 非零值

      C. 0

      D. 1

      7、若有說明: int i,j=7, *p=&i;, 則與i=j; 等價的語句是( )。

      A. i= *p;

      B. *p=*&j;

      C. i=&j;

      D. i=* *p;

      8、不能把字符串:Hello!賦給數組b的語句是( )。

      A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};

      B. char b[10]; b="Hello!";

      C. char b[10]; strcpy(b,"Hello!");

      D.char b[10]="Hello!";

      9、在C程序中有如下語句:char *func(int x,int y); 它是( )。

      A. 對函數func的定義。

      B. 對函數func的調用。

      C.對函數func的原型說明。

      D. 不合法的。

      10、以下程序的輸出結果是( )。

      char str[15]=”hello!”;

      printf(“%d ”,strlen(str));

      A. 15

      B. 14

      C. 7

      D. 6

      參考答案:1、D 2、D 3、B 4、B 5、A 6、D 7、B 8、B 9、C 10、D


    【9月計算機二級C語言程序設計練習題及答案】相關文章:

    2017年9月計算機二級C語言程序設計習題及答案07-03

    2017年9月計算機二級C語言程序設計練習題10-08

    2017年9月計算機二級C語言章節練習題及答案08-12

    2016年9月計算機二級《C語言》考前練習題及答案08-15

    2016年9月計算機二級《C語言》模擬練習題及答案05-05

    2023年9月計算機二級C語言程序設計備考題及答案05-07

    9月計算機二級《C語言》考前練習題11-27

    2016年9月計算機二級《C語言》試題及答案07-21

    2016年9月計算機二級《C語言》試題與答案06-10

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人