最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

C語言程序設計F卷

2022-03-20 12:00 作者:答案鬼  | 我要投稿

考試試卷(F卷)

——標 ?準 ?答 ?案

計算機程序設計 課程 56 學時 ? 3.5 ?學分 考試形式: 閉 卷

一、選擇題(15小題,每小題2分,共計30分)

1.下面不正確的字符串常量是 A 。

A)'abc' ?B)"12'12" ?C)"0" ?D)" "

2.以下正確的敘述是 ? ?D ? ?

A)在C程序中,每行中只能寫一條語句

B)若a是實型變量,C程序中允許賦值a=10,因此實型變量中允許存放整型數

C)在C程序中,無論是整數還是實數,都能被準確無誤(精確)地表示

D)在C程序中,%是只能用于整數運算的運算符

3.已知字母A的ASCII碼為十進制數65,且c2為字符型,則執(zhí)行語句c2='A'十'6'一'3';后,c2中的值為 ?A ? ? ?

A)D ?B)68 ?C)不確定的值 ?D)C

4.sizeof(float)是 ? ?B ? ? ? :

A)一個雙精度型表達式 ? B)一個整型表達式

C)一種函數調用 D)一個不合法的表達式

5.以下說法正確的是 ? ? ?D ? ?:

A)輸入項可以為一實型常量,如scanf("%f",3.5);

B)只有格式控制,沒有輸入項,也能進行正確輸入,如scanf("a=%d,b=%d");

C)當輸入一個實型數據時,格式控制部分應規(guī)定小數點后的位數,如scanf("%4.2f",&f);

D)當輸入數據時,必須指明變量的地址,如scanf("%f",&f);

6.已有如下定義和輸入語句,若要求a1,a2,c1,c2的值分別為10,20,A,B,當從第一列開始輸入數據時,正確的數據輸入方式是 ? ? ?D ? ?(注:<CR>表示回車)。

int ?a1,a2; ?char ?c1,c2;

scanf("%d%d",&a1,&a2); ? scanf("%c%c",&c1,&c2);

? ?A) 1020AB<CR> ?          ?B)10 ?20<CR>AB<CR>

? ?C)10 ?20 ? AB<CR> ?        D)10 ?20AB<CR>

7.請閱讀以下程序:

void main()

{int a=5,b=0,c=0;

if(a=b+c) printf("***\n");

e1se ?printf("$$$\n");

以上程序 ? ? D ? ? ?:

A)有語法錯不能通過編譯 B)可以通過編譯但不能通過連接

C)輸出*** D)輸出$$$

8.下面程序段的運行結果是 ? C ? ? 。

x=y=0;

while(x<15) {y++;x+=++y;}

printf("%d,%d",x,y);

A)20,7 B)6,12 ? ? ?C)20,8 D)8,20

9.若有說明:int a[3]={0};則下面正確的敘述是 D   。

A) 只有元素a[0]可得到初值0

B) 此說明語句不正確

C) 數組a中各元素都可得到初值,但其值不一定為0

D) 數組a中每個元素均可得到初值0

10.在c語言中,引用數組元素時,其數組下標的數據類型允許是_ ? C ? _。

A)整型常量 ? B)整型表達式

C)整型常量或整型表達式 D)任何類型的表達式

11.下面程序段的運行結果是 _ ? B ? _。

? char ?c[5]={'a','b','\0','c','\0'};

? printf("%s",c);}

A)’a’’b’ ? ? ? ?B)ab ? ? ? ? C)ab c ? ? ? D)a ?b ?

12.以下敘述正確的是 ?C   。

A) 在C程序中,main函數必須位于程序的最前面

B) C程序的每行中只能寫一條語句

C) C語言本身沒有輸入輸出語句

D) 在對一個C程序進行編譯的過程中,可發(fā)現注釋中的拼寫錯誤

13.簡單變量做實參時,實參與其對應的形參之間的數據傳遞方式是 ?C   。

A)雙向值傳遞方式 B)地址傳遞方式

C)單向值傳遞方式 D)用戶指定傳遞方式

14.編輯程序的功能是 ?A   。

A)修改并建立源程序 ? ? ? ? ? B)將源程序翻譯成目標程序

C)調試程序 ? ? ? ? ? ? ? ? ? D)命令計算機執(zhí)行指定的程序

15.在C語言中,5種基本數據類型的存儲空間長度排列順序為 C  。

A)char<int<1ong int<=float<double    B)char=int<1ong int<=float<double

C)char<int<=1ong int<=float<double    D)char=int=1ong int<=float<double

二、計算表達式(每小題1.5分,共計15分):

設 int x=25,y=-20;float a=102.56,b=50.87;(注意:各式結果不影響后續(xù)的題目?。?/p>

1.(++y)+(x--) ? ?( ? ? 6 ? ? ?)

2.y*=y+=25 ? ? ? ( ? ? 25 ? ? )

3.x+y>=0?(x-2*y):(x+2*y) ? ? ? ( ? ? 65 ? ? )

4.(x+y)/2+(int)(a-b)%(int)b ? ? ? ? ? ? ? ? ? ( ? ? 3 ? ? ?)

5.x/2+(a-b)/2 ? ? ? ? ? ? ? ? ? ?( ? 37.845 ? )

6.!(x=a)&&(y=b)&&1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ( ? ? 0 ? ? ?)

7.!(a+b-1)||y+x/2 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?( ? ? 1 ? ? ?)

8.計算(y>=0)&&(++y)后y的值為: ? ( ? ?-20 ? ? )

9.printf(“%d”,’\102’);結果為 ?( ? ? 66 ? ? )

10.已知’a’的ASCII碼為97,則:printf(“%c”,’\x64’);結果為( ? ? d ? ? ?)

三、寫出下列程序的的執(zhí)行結果(每小題5分,共計20分,注意輸出格式)

1.#include<stdio.h>

Int main()

{ int a=23389,b=45;float x=647.3586,y=13643.5538;

?char c1=’A’,c2[]="Hello";

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

?printf("%-9.2f,%9.2f\n",x,y);

?printf("%o,%x,%u\n",b,b,b);

?printf("%d,%c\n",c1,c1);

?printf("%s,%6.4s\n",c2,c2);

return 0;

}

a

=

2

3

3

8

9

,

b

=

4

5

6

4

7

.

3

6

,

1

3

6

4

3

.

5

5

5

5

,

2

d

,

4

5

6

5

,

A

H

e

l

l

o

,

H

e

l

l

2.#include<stdio.h>

#define N 10

?int main( )

?{ ?int a=1,b=0, i;

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

?{ printf("%6d%6d",a,b);

? ?printf("\n");

? ?a=b+a;

b=a+b;}

return 0;}

1

0

1

1

2

3

5

8

1

3

2

1

3.#include<stdio.h>

?int main()

{ ?int i,j,k=0;

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

? { for(j=2;j<=i-1;j++)

? ? ? ?if(i%j==0) break;

? ? ? ?if(j==i)

? ? ? ?{ printf("%7d",i) ;

? ? ? ? ?k++;

? ? ? ? ?if(k%2==0) printf("\n"); ?

? ? ? ?}

? ? } ?

Return 0;

}

2

3

5

7

1

1

1

3

1

7

1

9

2

3

2

9

4.#include<stdio.h>

int main()

{ int i=16,j,x=6,y,z;static char c[]=”I am a student”;

j=i+++1; ?printf(“%5d\n”,j);

x*=i=j; ?printf(“%5d\n”,x);

x=1,y=2,z=3;

x+=y+=z;

printf(“%5d\n”,(z+=x)>y? z++:y++);

x=y=z=-1;

++x||++y||z++;

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

printf(“%s,%5.4s\n”,c,c);

return 0;

}

1

7

1

0

2

9

0

,

0

0

I

a

m

a

s

t

u

d

e

n

t

,

I

a

m

四、程序填空(每空1.5分,共計15分)

1.下面程序的功能是:將字符數組s2中的全部字符拷貝到字符數組s1中,不用strcpy函數。

#include <stdio.h>

main()

{ char s1[80], s2[80];

int i;

printf("input s2:");

gets(s2);

for(i=0;s2[i]!=’\0’; i++ )

?s1[i]=s2[i] ? ;

?s1[i]=’\0’;

? ? ?printf("s1: %s \n",s1);

?return 0;

}

2.輸入20個整數,找出其中的最大數及最小數,并求其和值。

#include <stdio.h>

int main()

{ int a[20],i,max,min,sum;

? printf("input a[0]-a[19]:");

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

scanf(“%d”, &a[i] ?);

max=a[0]; ?min=a[0]; ?sum= a[0] ;

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

{ ?if(a[i]>max) max=a[i];

if(a[i]<min) ? min=a[i] ;

sum+=a[i];

}

? ? printf(%d,%d,%d\n",max,min,sum);

return 0;

}

3.輸入一行字符到字符數組中,將其中的小寫字母轉化成大寫字母,大寫字母轉化成小寫字母,然后輸出。

#include <stdio.h>

#include <string.h>

main()

{ char c,str[80];

int i;

gets(str);

for(i=0;(c=str[i])!= ’\0’ ;i++)

{ ?if( c>=’A’&&c<=’Z’ ?) c=c+32;

? ?else if(c>=’a’&&c<=’z’) c=c-32;

? ?str[i]=c; ?}

puts( ? str ? );

return 0; ?

?}

五、編寫程序(每小題10分,共計20分)

(注意:可做在試卷反面)

1.輸出100到300之間能被5整除卻不能被3整除的所有數之和。

#include ?<stdio.h>

int main()

{ int n,sum=0;

?for(n=100; n<=300; n++)

? ?if(n%5==0 && n%3!=0) sum += n;

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

return 0;

}

2.編寫main函數及一個求x階乘(x!)的用戶自定義函數fun( ),并在主函數中調用該函數求組合數c的值

。

#include ?<stdio.h>

int main()

{ ?long int fun(long int x);

long res, res1, res2, res3,m, n;

? scanf(“%ld,%ld”,&m,&n);

? res1=fun(m); ?res2=fun(n); ?res3=fun(m-n);

? res=res1/(res2*res3);

? printf(“%ld\n”,res);

return 0;

}

?long int fun(long int x);

{ ?long int i, res=1;

? for(i=2; i<=x; i++)

? res *= i;

return(res);

}


C語言程序設計F卷的評論 (共 條)

分享到微博請遵守國家法律
封丘县| 随州市| 定西市| 武宁县| 柞水县| 井陉县| 白朗县| 从化市| 洛宁县| 古交市| 滁州市| 霍山县| 小金县| 扶沟县| 巴彦淖尔市| 江北区| 武汉市| 应城市| 阿尔山市| 怀宁县| 寿宁县| 普宁市| 伊川县| 太白县| 霍邱县| 南阳市| 广平县| 武清区| 维西| 即墨市| 上杭县| 平阴县| 昌邑市| 沭阳县| 元氏县| 工布江达县| 阜阳市| 繁昌县| 海兴县| 林周县| 台东县|