當前位置:首頁 » 編程語言 » c語言程序設計期末考試

c語言程序設計期末考試

發布時間: 2023-06-15 20:29:44

⑴ 計算機二級(c語言)都考哪些內容

根據《全國計算機二級考試c語言程序設計考試大綱(2018年版) 》,計算機二級C 語言主要考C 語言程序的結構、數據類型及其運算、基本語句、選擇結構程序設計、循環結構程序設計、數組的定義和引用、函數、編譯預處理、指針、結構體(即「結構」)與共同體(即「聯合」)、位運算和文件操作12大塊內容。採用上機考試形式,考試時長120分鍾,滿分100分。

⑵ 《C語言程序設計》練習題

一、選擇題
1、C語言規定,在一個源程序中,main()函數的位置(C )。
A) 必須在最開始 B)必須在最後
C) 可以任意 D) 必須在系統調用的庫函數後面

這題你死記就行,你看看這個
任何一個C++程序都必須定義一個main函數,它的返回類型總是int類型。這個函數由操作系統來調用,在main函

數執行完以後,程序也就終止了。 main也可以使用return向操作系統返回一個值,使用操作系統的命令可以檢測

main的返回值。一般約定在main返回0時,表示程序運行過程中沒有出現錯誤,其它非零值表示程序出現異常情況。
若沒有為main指定返回值,這樣返回值是任意的。

2、若x和y都是int 型變數,x=100,y=200,且有以下程序段,printf(「%d」,(x,y));則其輸出結果是( A)。
A) 200 B) 100 C) 100 200 D) 輸出不確定值

(x,y)這是個逗號表達式,表達式的值為最後一個逗號後面表達式的值,因為前面有一個%d,所以輸出 的是y的



3、合法的C語法字元常量是(C )。
A) 「A」 B) 65 C) 『\t』 D) A

字元都是由兩個單引號括起來的,死記, a)為字元串

4、表達式「3!=4」的值是(A )。
A) 1 B) 0 C) T D) F

!=是c語言的邏輯運算符,3!=4為真,多以得1, 3=4為假,值為0

5、 int a=1,b=2,c=3,d=4,執行下列程序後x的值為( C)。
if(a>b) x=1;else if (c>d) x=2;else x=3;
A) 1 B) 2 C) 3 D) 4

如果a>b,1>2為假,不執行x=1,執行else if(c>d),判斷:3>4為假,不執行x=2,執行=3,完

6、以下程序的輸出結果是(D)。
Int x=10,y=3,z;printf(「%d\n」,z=(x%y,x/y));
A)1 B) 0 C) 4 D) 3

逗號表達式,x%y,10%3,商3餘1,模取余數1,x/y,10/3,商3餘1,除法取商3,逗號表達式,表達式的值為最後一

個逗號後面表達式的值

7、為表示x≥y≥z,應使用C語言表達式(A )。
A) (x>=y)&&(y>=z) B) (x>=y) AND (y>=z)
C) (x>=y>=z) D) (x>=y) & (y>=z)

關系運算符,x>=y與y>=z必須是同時成立的,因此要用邏輯運算符&&,&&與的意思

8、合法的數組定義是( a )。
A) int a[ ]=」string」; B) int a[5]={0,1,2,3,4,5};
C) char a=」string」; D) char a[ ]={「01234」};

a不指定數組長度定義,正確
b數組長度為5,就是裡面有5個數組元素,多了一個數組元素
c定義a不是數組而是一個變數,素組應該是a[]
d是錯的,字元串是這樣定義的:char a[ ]={'0','1','2','3','4','\0'};
[4]中數字是數組長度,說明裡面有幾個元素

9、設x和y均為int型變數,則語句「x+=y;y=x-y;x-=y;」的功能是(D)。
A) 把x和y按從小到大排列 B)把x和y按從大到小排列
C)無確定結果 D)交換x和y中的值

x+=y等同於x=x+y,把x加y的值賦給x,x現在存的是x與y的和
y=x-y把x減y的值賦給y,x現在存的是x與y的和 (x+y)-y=x,把x的值給y,y存x的值
x-=y等同於x=x-y,把x減y的值賦給x,(x+y)-y=x,現在的後面的y存的是x的值,做完後x里存的值是y,完成交換

10、若已定義x和y為double類型,則表達式「x=1,y=x+3/2」的值是(C)。
A) 1 B)2 C) 2.0 D) 1.0

逗號表達式,先讓x=1在算y=x+3/2,得2,因為是double類型,所以有小數點

11、下列條件語句中,功能與其他語句不同的是 (D)
A) if(a) printf("%d\n",x); else printf("%d\n",y);
B) if(a==0) printf("%d\n",y); else printf("%d\n",x);
C) if (a!=0) printf("%d\n",x); else printf("%d\n",y);
D) if(a==0) printf("%d\n",x); else printf("%d\n",y);

a 如果a為真輸出x,如果a為假輸出y
b 如果a==0,也就是為假,輸出y,a為真輸出x,同a
c 如果a!=0為真,輸出x,a為假輸出y同上
d 如果a為假輸出x,如果a為真輸出y,與以上的都不同

12、以下能正確定義二維數組的是 (C)
A) int a[][3]; B) int a[][3]=2{2*3};
C) int a[][3]={0}; D) int a[2][3]={{1},{2},{3,4}};

a 沒有給數組賦初值
b {}里不能有*
c 正確,記住第一個[]中可以為空,第二個[]不能為空,死記
d a[2][3] 的意思是有兩個一維數組,每個一維數組里有3個元素,{{1},{2},{3,4}}; 她的意思是三個數組,{}中的每一個{}代表一個數組,里邊的數為數組元素

13、用C語言編寫的代碼程序 (B)
A)可立即執行 B)是一個源程序
C)經過編譯即可執行 D)經過編譯解釋才能執行

死記

⑶ 求解C語言程序設計題

完整的fun函數代碼如下:

int fun(STU a[], int n, STU h[]) {

int i, k = 0;

double avg = 0;

for (i = 0; i < n; i++) {

a[i].sum = a[i].s1 * 0.7 + a[i].s2 * 0.3;

avg += a[i].sum; // 先計算總分

}

avg = avg / n; // 再計算平均分

for (i = 0; i < n; i++) {

if (a[i].sum > avg) { // 統計平均分以上的學生

strcpy(a[i].level, "均分以上");

h[k++] = a[i];

}

}

return k;

}

運行結果如下:

可見成功輸出了平均分以上的學生信息,望採納~

⑷ 求一份C語言程序設計的期末考試試題!!!謝謝了

一. 選擇題 (共15題, 每題2分,共30分)

1. 定義結構體的關鍵字是( )

A. union B. enum C.struct D.typedef

2. 設整型變數a為5,使b不為2的表達式是( )

A. b=a/2 B. b=6-(--a) C. b=a%2 D. b=a>3?2:1

3. 下面哪一項是不正確的字元串賦值或賦初值的方法( )

A. char *str; str= 「china」;

B. char str[7]= {『c』, 『h』, 『i』, 『n』, 『a』};

C. char str1[]= 「china」,str2[]=「123」;

D. char str1[10]; str1= 「china」;

4. 以下對二維數組a進行正確初始化的是( )

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

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

5. 選出下列標識符中不是合法的標識符的是( )

A. hot_do B. cat1 C. _pri D. 2ab

6. 以下說法中正確的是( )

A. C語言程序總是從第一個的函數開始執行

B. 在C語言程序中,要調用的函數必須在main()函數中定義

C. C語言程序總是從main()函數開始執行

D. C語言程序中的main()函數必須放在程序的開始部分

7. 若已定義:int a[9], *p=a;並在以後的語句中未改變p的值,不能表示a[1]地址的表達式為( )

A. p+1 B. a+1 C. a++ D. ++p

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

A. i= *p; B. *p=*&j; C. i=&j; D. i=* *p;

9. 若變數c為char類型,能正確判斷出c為小寫字母的表達式是( )

A. 『a』<=c<= 『z』 B. (c>= 『a』) || (c<= 『z』)

C. (『a』<=c) and (『z』>=c) D. (c>= 『a』) && (c<= 『z』)

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

main()

{ int a[]={1,2,3,4,5,6,7,8,9}, *p;

p=a;

*(p+3)+=2;

printf( 「%d,%d\n」,*p,*(p+3) ); }

A. 0, 5 B. 1, 6 C. 1, 5 D. 0, 6

11. 以下程序的輸出結果是( )

main()

{ int a=5;

float x=3.14;

a*=x*(『E』- 『A』);

printf(「%f\n」,(float)a); }

A. 62.000000 B. 62.800000 C. 63.000000 D. 62

12. 以下程序的輸出結果是( )

#define f(x) x*x

main()

{ int a=6,b=2,c;

c=f(a)/f(b);

printf(「%d\n」,c); }

A. 9 B. 6 C. 36 D. 18

13. 定義如下變數和數組:int i; int x[3][3]={1,2,3,4,5,6,7,8,9};

則語句for(i=0;i<3;i++) printf("%d ",x[i][2-i]); 的輸出結果是( )

A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9

14. 下列程序段的輸出結果是 ( )

void main( )

{ int k;

for (k=1;k<5;k++)

{ if(k%2!=0)

printf( 「#」 );

else

printf(「*」) ; }

}

A. #*#* B . *#*# C. ## D. **

15. 下列程序執行後輸出的結果是( )

int d=1;

fun (int p)

{ int d=5;

d + =p + +;

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

main( )

{ int a=3;

fun(a);

d + = a + +;

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

A. 8, 4 B. 9, 6 C. 9, 4 D. 8, 5

二. 填空題(共7題,每空2分,共30分)

1. 數組 int a[3][5]; 共定義了_______________個元素。

2. 有float f=3.1415927; 則 printf(「%5.4f」, f );輸出的結果是_______________。

3. 下面程序的功能是:輸出 100以內(不包含100)能被 3整除且個位數為 6的所有整數,請填空。

main( )

{ int i;

for(i=1; _______________; i++)

if (_______________)

printf("%d", i);

}

4. 設有「int x=2, y」說明,則逗號表達式「y=x+5,x+y」的值是 _______________

5. 以下是使用指針,進行字元串復制的程序,請填空。

main()

{ char a[]= 「Tsinghua University」, b[30], *p1,*p2;

p1=a;

p2=b;

for(; *p1!= 『_______________』; p1++, p2++)

_______________=_______________;

*p2= 『_______________』;

printf(「string a is:%s\n」,a);

printf(「string b is:%s\n」,b);

}

6. 下面程序用冒泡法對數組a進行降序排序,請填空。

main()

{ int a[5]={4,7,2,5,1};

int i,j,m;

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

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

if( _______________< _______________ )

{ m=a[ j];

a[ j]=a[ j+1];

a[ j+1]= m; }

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

printf("%d ",a[i]);

}

7. 函數fun的功能是:使一個字元串按逆序存放,請填空。

void fun (char str[])

{ char m; int i,j;

for(i=0,j=strlen(str);i<_______________;i++,j--)

{ m=str[i];

str[i]= _______________;

str[j-1]=m;

}

printf("the rotated string is %s\n",_______________);

}

熱點內容
ftp匿名帳號 發布:2025-02-12 18:04:32 瀏覽:763
銳志哪個配置性價比最高 發布:2025-02-12 17:38:43 瀏覽:918
智能推送演算法 發布:2025-02-12 17:38:41 瀏覽:835
拍照上傳器 發布:2025-02-12 17:34:29 瀏覽:652
androidweb框架 發布:2025-02-12 17:32:45 瀏覽:76
安卓編程賀卡 發布:2025-02-12 17:32:44 瀏覽:838
php獲取資料庫的欄位 發布:2025-02-12 17:29:02 瀏覽:766
伺服器地址消失 發布:2025-02-12 17:23:36 瀏覽:951
後台執行php腳本 發布:2025-02-12 17:21:45 瀏覽:471
spring編程式事務 發布:2025-02-12 17:16:55 瀏覽:398