c語言題庫1292題,c語言程序設計1253考試題

本文目錄一覽:

求計算機二級考試c語言機試題庫

這是部分,其餘的可以私下給你,我的QQ:916356609,我傳給你

一、程序填空題

1、給定程序中,函數fun的功能是:在任意給定的9個正整數中找出按升序排列時處於中間的數,將原數據序列中比該中間數小的數用該中間數替換,位置不變,在主函數中輸出處理後的數據序列,並將中間數作為函數值返回。

例如,有9個正整數:1 5 7 23 87 5 8 21 45

按升序排列時的中間數為:8

處理後主函數中輸出的數列為:8 8 8 23 87 8 8 21 45

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

#define N 9

int fun(int x[])

{ int i,j,k,t,mid,b[N];

for(i=0;iN;i++) b[i]=x[i];

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

{ k=i;

for(j=i+1;jN;j++) if(b[k]b[j]) k=j;

if(k != i )

{

/**********found**********/

t=b[i]; b[i]=___1___; b[k]=t;

}

}

/**********found**********/

mid=b[___2___];

for(i=0; iN; i++)

/**********found**********/

if(x[i] ___3___ mid) x[i]=mid;

return mid;

}

main()

{ int i, x[N]={1,5,7,23,87,5,8,21,45};

for(i=0; iN; i++) printf(“%d “,x[i]);

printf(“\nThe mid data is: %d\n”,fun(x));

for(i=0; iN; i++) printf(“%d “,x[i]);

printf(“\n”);

}

2、給定程序中,函數fun的功能是建立一個N×N的矩陣。 矩陣元素的構成規律是:最外層元素的值全部為1;從外向內第2層元素的值全部為2;第3層元素的值全部為3,…依次類推。例如,若N=5,生成的矩陣為:

1 1 1 1 1

1 2 2 2 1

1 2 3 2 1

1 2 2 2 1

1 1 1 1 1

請在程序的下劃線處填入正確的內容並把下劃線刪除, 使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

#define N 7

/**********found**********/

void fun(int (*a) __1__)

{ int i,j,k,m;

if(N%2==0) m=N/2 ;

else m=N/2+1;

for(i=0; im; i++) {

/**********found**********/

for(j= __2__ ; jN-i; j++)

a[i][j]=a[N-i-1][j]=i+1;

for(k=i+1; kN-i; k++)

/**********found**********/

a[k][i]=a[k][N-i-1]= __3__;

}

}

main()

{ int x[N][N]={0},i,j;

fun(x);

printf(“\nThe result is:\n”);

for(i=0; iN; i++)

{ for(j=0; jN; j++) printf(“%3d”,x[i][j]);

printf(“\n”);

}

}

3、給定程序中,函數fun的功能是: 將s所指字元串中的所有數字字元移到所有非數字字元之後,並保持數字字元串和非數字字元串原有的先後次序。例如,形參s所指的字元串為:def35adh3kjsdf7。執行結果為:defadhkjsdf3537。

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

void fun(char *s)

{ int i, j=0, k=0; char t1[80], t2[80];

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

if(s[i]=’0′ s[i]=’9′)

{

/**********found**********/

t2[j]=s[i]; ___1___;

}

else t1[k++]=s[i];

t2[j]=0; t1[k]=0;

/**********found**********/

for(i=0; ik; i++) ___2___;

/**********found**********/

for(i=0; i___3___; i++) s[k+i]=t2[i];

}

main()

{ char s[80]=”def35adh3kjsdf7″;

printf(“\nThe original string is : %s\n”,s);

fun(s);

printf(“\nThe result is : %s\n”,s);

}

4、給定程序中,函數fun的功能是:有N×N矩陣,以主對角線為對稱線,對稱元素相加並將結果存放在左下三角元素中,右上三角元素置為0。例如,若N=3,有下列矩陣:

1 2 3

4 5 6

7 8 9計算結果為

1 0 0

6 5 0

10 14 9

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

#define N 4

/**********found**********/

void fun(int (*t)___1___ )

{ int i, j;

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

{ for(j=0; ji; j++)

{

/**********found**********/

___2___ =t[i][j]+t[j][i];

/**********found**********/

___3___ =0;

}

}

}

main()

{ int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;

printf(“\nThe original array:\n”);

for(i=0; iN; i++)

{ for(j=0; jN; j++) printf(“%2d “,t[i][j]);

printf(“\n”);

}

fun(t);

printf(“\nThe result is:\n”);

for(i=0; iN; i++)

{ for(j=0; jN; j++) printf(“%2d “,t[i][j]);

printf(“\n”);

}

}

5、給定程序中,函數fun的功能是:對形參s所指字元串中下標為奇數的字元按ASCII碼大小遞增排序,並將排序後下標為奇數的字元取出,存入形參p所指字元數組中,形成一個新串。

例如,形參s所指的字元串為:baawrskjghzlicda,執行後p所指字元數組中的字元串應為:aachjlsw。

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

void fun(char *s, char *p)

{ int i, j, n, x, t;

n=0;

for(i=0; s[i]!=’\0′; i++) n++;

for(i=1; in-2; i=i+2) {

/**********found**********/

___1___;

/**********found**********/

for(j=___2___+2 ; jn; j=j+2)

if(s[t]s[j]) t=j;

if(t!=i)

{ x=s[i]; s[i]=s[t]; s[t]=x; }

}

for(i=1,j=0; in; i=i+2, j++) p[j]=s[i];

/**********found**********/

p[j]=___3___;

}

main()

{ char s[80]=”baawrskjghzlicda”, p[50];

printf(“\nThe original string is : %s\n”,s);

fun(s,p);

printf(“\nThe result is : %s\n”,p);

}

6、程序通過定義並賦初值的方式,利用結構體變數存儲了一名學生的信息。函數fun的功能是輸出這位學生的信息。

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

typedef struct

{ int num;

char name[9];

char sex;

struct { int year,month,day ;} birthday;

float score[3];

}STU;

/**********found**********/

void show(STU ___1___)

{ int i;

printf(“\n%d %s %c %d-%d-%d”, tt.num, tt.name, tt.sex,

tt.birthday.year, tt.birthday.month, tt.birthday.day);

for(i=0; i3; i++)

/**********found**********/

printf(“%5.1f”, ___2___);

printf(“\n”);

}

main( )

{ STU std={ 1,”Zhanghua”,’M’,1961,10,8,76.5,78.0,82.0 };

printf(“\nA student data:\n”);

/**********found**********/

show(___3___);

}

7、給定程序中,函數fun的功能是:計算N×N矩陣的主對角線元素和反向對角線元素之和,並作為函數值返回。注意:要求先累加主對角線元素中的值,然後累加反向對角線元素中的值。例如,若N=3,有下列矩陣:

1 2 3

4 5 6

7 8 9fun函數首先累加1、5、9,然後累加3、5、7,函數的返回值為30。

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdio.h

#define N 4

fun(int t[][N], int n)

{ int i, sum;

/**********found**********/

___1___;

for(i=0; in; i++)

/**********found**********/

sum+=___2___ ;

for(i=0; in; i++)

/**********found**********/

sum+= t[i][n-i-___3___] ;

return sum;

}

main()

{ int t[][N]={21,2,13,24,25,16,47,38,29,11,32,54,42,21,3,10},i,j;

printf(“\nThe original data:\n”);

for(i=0; iN; i++)

{ for(j=0; jN; j++) printf(“%4d”,t[i][j]);

printf(“\n”);

}

printf(“The result is: %d”,fun(t,N));

}

8、給定程序中,函數fun的功能是:計算形參x所指數組中N個數的平均值(規定所有數均為正數),作為函數值返回;並將大於平均值的數放在形參y所指數組中,在主函數中輸出。

例如,有10個正數:46 30 32 40 6 17 45 15 48 26,平均值為:30.500000

主函數中輸出:46 32 40 45 48

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdlib.h

#include stdio.h

#define N 10

double fun(double x[],double *y)

{ int i,j; double av;

/**********found**********/

av=__1__;

/**********found**********/

for(i=0; iN; i++) av = av + __2__;

for(i=j=0; iN; i++)

/**********found**********/

if(x[i]av) y[__3__]= x[i];

y[j]=-1;

return av;

}

main()

{ int i; double x[N] = {46,30,32,40,6,17,45,15,48,26};

double y[N];

for(i=0; iN; i++) printf(“%4.0f “,x[i]);

printf(“\n”);

printf(“\nThe average is: %f\n”,fun(x,y));

for(i=0; y[i]=0; i++) printf(“%5.0f “,y[i]);

printf(“\n”);

}

9、給定程序中,函數fun的功能是:計算形參x所指數組中N個數的平均值(規定所有數均為正數),將所指數組中小於平均值的數據移至數組的前部,大於等於平均值的數據移至x所指數組的後部,平均值作為函數值返回,在主函數中輸出平均值和移動後的數據。

例如,有10個正數:46 30 32 40 6 17 45 15 48 26,平均值為:30.500000

移動後的輸出為:30 6 17 15 26 46 32 40 45 48

請在程序的下劃線處填入正確的內容並把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1.C中。

不得增行或刪行,也不得更改程序的結構!

#include stdlib.h

#include stdio.h

#define N 10

double fun(double *x)

{ int i, j; double av, y[N];

av=0;

/**********found**********/

for(i=0; iN; i++) av +=__1__;

C語言題庫,求發一份

單選題

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

 A.若e1、e2為變數,e為表達式,則

e1=e2=e使得e1、e2都具有表達式e的值 。

 B.程序中不能定義與庫函數名同名的變數。

 C.一個C源程序可放在多個文件中,但

一個函數不能跨放在兩個不同的文件中。

 D.C語言編譯系統以函數為單位編譯源程序。

2. 若a,b,c都是實型變數,則下列語句中除 (2)  之外,都可能得不到正確的計算結果。

A.if(b*b-4*a*c==0) x1=x2=-b/(2*a);

else x1=(-b+sqrt(b*b-4*a*c))/(2*a), x2=(-b-sqrt(b*b-4*a*c))/(2*a);

B.b=2.0e38+1.0-2.0e38;

C.a=456*768/2;

D.double define=1.0;

3. 以下正確的常量是(3 )。

A.『077』 B.『\0x89』 C.3.14u D.『\012』

4. 若已有聲明「float x= -1234.5678; int m,n=4;」則執行「m=printf(「\n%8.3f\n」,x)/n;」語句後,

變數m的值是 (4) 。

A. 2 B. 3 C. 4 D. 5

5. 若已有聲明「int x1; float x2; long x3; char x4;」,且以下選項均出現在switch語句中,其中正確

的是 (5) 。

A. case 1.1: scanf(“%d”,x1);break;

B. case 1+2: scanf(“%f”,x2); break;

 C. case ‘x’: 

case ‘y’-1: scanf(“%ld”,x3); break;

D. case x4: scanf(“%c”,x4); break;

6. 33.以下表達式中,能夠作為「if(e) 語句」中判斷條件表達式e 的是 (6) 。

 A. x==++(x+1) B. x+=++x||x++ C. x+1=z D. x%2.0!=0

7. 以下局部變數聲明中,正確的是 (7) 。

A.int x=0, void=1;   B.int x=1,y=2x;

C.int x=2,y=sqrt(x);   D.int x=sqrt(y),y=4;

8. 在以下語句中,正確的是 (8) 。

 A.if(ab)m=a;n=b;else m=b;n=a;

 B.if(ab){m=a;n=b;else m=b;n=a;}

 C.if(ab)m=a,n=b;else m=b,n=a;

 D.if(ab){m=a;n=b;}else(a=b){m=b;n=a;}

9.24.已知有聲明:「char c=『1』 ; int x=300 ; float t=35000 ; double d=3.1234567e10 ;」,則以下表達式

求值時除 (9 ) 外,其結果都可能是不準確的。

A. x=t/c B. t=d/x C. t=d/1e5f D. t=x+c

10.若有聲明「int i,k=1; unsigned j;」,則下列語句執行時會出現無限循環的語句

是 (10) 。

A.for(j=15;j0;j-=2) k++;

B.for(j=0;j15;j+=2) k++;

C.for(i=0;i15;i+=2) k++;

D.for(i=15;i0;i-=2) k++;

11.已有聲明「int x=2,y=1,z=0;」,以下表達式的值不為0的是 (11) 。

A. x==(x=0,y=1,z=2)

B. zyx

C. xy==1

D. x(y=2)

12.若e1、e2和e3是表達式,以下選項中與語句while(e1){e2,e3;}功能等價的語句是 (12 ) 。

A. for( ;e1;e3)e2; B. for( ;e1;e2)e3; C. for(e1;e2;e3); D. for(e1; e2, e3; );

13.已有聲明「int x=3;」,以下選項中與「x+=x =x+1」功能不等價的表達式是 (13 ) 。

A.x=x+(x=xx+1) B.x=x+(x=x(x+1)) C.x=x+(x=xx1) D.x=x(x+1), x=x+x

14.若已有聲明「int a=2; 」,則執行語句「printf(“%d”, a, a+1 );」後的輸出結果是 (14) 。

A.語法錯 B. 2,3 C. 2 D. 3

15.語句「if (!n) n++;」中的「!n」等價於如下 (15) 條件的判定。

A.n==0   B.n!=0   C.n0   D.n0

16.若已有聲明「int a=1; 」,則以下表達式中錯誤的是 (16 ) 。

A.-a++ B.+a– C.–a D.++-a

17.下列 (17) C語言表達式能正確表達數學計算式1÷× 2xy。

A. 1/sqrt(2*3.14)*2*pow(x,y) B.1.0/sqrt(2)*2*x**y

C. 1.0/sqrt(6.28)*2x^y  D.1/6.28^0.5*2*pow(x,y)

18. 已有聲明「int a=3,b=3,c=2;」,以下表達式中值為0的是 (18) 。

A. !a!bc B. !a || !b || c C. a==b b=c D. a=b bc

19.

36.若有: int w=1 , x=2 , y=3 , z=4; 則表達式 wx?x–:yz?y–:++z 的值為 (19 ) 。

 A. 4   B. 3     C. 2   D. 1

20. 已知某程序中有以下片斷:

#define p 2.5

main( )

{ float x=p;

}

則main函數中標識符p代表一個 (20)  。

A. float型變數  B. double 型變數 C. float型常量 D. double 型常量

20.

填空題

1.21.設有如下程序段:

int a=2, b, c=5 ;

scanf( 「%d」 , b) ;

b = c– || scanf (「%d」 , c ) a++;

執行該程序段時,若從鍵盤上輸入的數據是 4ƀ3 (ƀ代表空格鍵) , 則變數c 的值為 (21) 。

2. signed和unsigned只能用於聲明int型變數和 (22) 型變數。

3.代數式「||」的C語言表達式是 (23) 。

4.已有聲明「int a=-13,n=7;」,表達式「a%=n%=4」求值後變數a的值為 (24) 。

5.已有聲明「unsigned int a=30; 」 ,那麼 –a 的值為___(25)____。

6.

如下程序執行後的輸出是____(26)____。

#includestdio.h

main ( )

{

int i=1,m=0;

 switch ( i )

{  

 case 1 :

 case 2 : m++;

 case 3 : m++;

}

 printf ( 「%d」 ,m);

}

7.C語言的三個邏輯運算符(!、、||)中,優先順序高於算術運算符的是

  (27) 。

8.已知sizeof(int)的值為2,執行如下程序後輸出結果為 (28) 。

main()

{ int a,b;

a=65536;

b=32767+1;

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

}

9.若有聲明「int a=3,b=0,c=5;」, 則表達式 !a+b+c-1b+c/2 的值是 (29) 。

10.若有聲明「int x=1,y=2;」 ,則表達式 ++x, x+y++ 的值是 (30) 。

三、閱讀程序題

1.在PC機的TC中執行以下程序後的輸出是: (31) 。

main()

{

unsigned x=0x7f39;

int y;

char c;

c=x;

x+=0307;

y=x;

printf(「%d,%x,%c」,x,y,c);

}

2.以下程序運行後的輸出結果是 (32) 。

#includestdio.h

main ( )

{ int x=30, y=45;

while(x!=y)

if(xy)x-=y;

else y-=x;

printf(“%d”, x);

}

3.

以下程序運行後輸出結果的第一行是 (33) ,第二行是 (34) 。

#includestdio.h

#includemath.h

void main()

{ int a=0x65,b,c,count=0;

b=a;

while(b0)

{ b=b/8;

count++;

}

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

while(count0)

{ c=pow(8,count-1);

printf(“%d”,a/c);

a=a%c;

count–;

}

}

4.以下程序運行時輸出結果是 (35) 。

#include stdio.h

main()

{

  int i,x=3,y=5;

for(i=0;i3;i++)

switch(y%x)

{

  case 0: printf(“%d”,y);

case 1: printf(“%d”,y–);break;

case 2: printf(“%d”,–y);break;

}

}

5.以下程序執行後,輸出結果的第一行是 (36) ,第二行是 _(37)______。

#define N 100

main()

{ int i=0,sum=0;

do

{ if(i==(i/2)*2)

continue;

sum++;

if(sum3)

break;

}while(++iN);

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

}

四、完善程序題

1.下列程序的功能是按從鍵盤上輸入的整數m,判斷2m -1是否為素數,若為素數再求2m -1的反序數。例如:m為17,217 –1(131071)是素數,其反序數是170131。

#include stdio.h

(38)

main()

{

int m,j;

long q,k1,k2=0,k3;

scanf(“%d”,m);

k3=k1=pow(2,m)-1;

q=sqrt(k1);

for(j=2;j=q;j++)

if( (39) ) break;

if(jq)

{ while(k30)

{ k2=k2*10+ (40)  ;

k3/=10;

}

printf(“m=%d\npow(2,m)-1=%ld is a prime.\nreverse order %ld\n”,m,k1,k2);

}

else

printf(“m=%d isn’t a prime.\n”,m);

}

2. 以下程序找到並輸出所有滿足給定條件的四位十進位表示的正整數:該數是某個數的平方、該數的後二位是25、組成該整數的各位數字中有兩位是2。例如:1225是滿足所給條件的四位正整數(352=1225)。

#includestdio.h

#includemath.h

main()

{ long i,j,s,d=0;

for(i=1000;i10000;i++)

{ (41) ;

j= (42) ;

if(i==j*j i%100==25)

{ s=i;

while(s0)

{ if( (43) )d++;

s=s/10;

}

if(d==2) printf(“\n %d”,i);

}

}

}

3..下列程序計算下列數學函數展開式的近似值,累加運算在最後一項的絕對值小於10-6時停止。

程序運行時從鍵盤上分別三個實數-1.0、0.5、1.0,作為x的值。

#include stdio.h

#include math.h

#define EPS 1.0e-6

main()

{ double x,n,tn,ft,sn,xn;

int i;

for(i=0;i3;i++)

{ (44) ;  

ft=1.0;

scanf(“%lf”,x);

sn=xn=x;

do{

xn=xn*x*x;

ft=ft*(2*n-3)/(2*n-2);  

tn=ft*xn/ (45) ;

sn=sn+tn;

n=n+1;

}while( (46) );

printf(“f(%lf)=%0.6lf\n”,x,sn);

}

}

《C語言程序設計》試卷答題紙

(本試卷滿分100分)

系科_____________學號_____________姓名_____________成績____________

單項選擇題得分 填空題得分 閱讀程序題得分 完善程序題得分 總分

一 、單項選擇題

(1) (2) (3) (4) (5)

(6) (7) (8) (9) (10)

(11) (12) (13) (14) (15)

(16) (17) (18) (19) (20)

二、填空題

(21) (22)

(23) (24)

(25) (26)

(27) (28)

(29) (30)

三、閱讀程序題

(31) (32)

(33) (34)

(35) (36)

(37

四、完善程序題

(38) (39)

(40) (41)

(42) (43)

(44) (45)

(46)

《C語言程序設計》試卷參考答案

(本試卷滿分100分)

一 、單項選擇題

(1)C (2)D (3)D (4)A (5) B

(6)B (7)C (8)C (9)D (10)A

(11)C (12)A (13)A (14)C (15)A

(16)D (17)A (18)A (19)B (20)D

二、填空題

(21) 4 (22) char

(23) fabs(exp(sqrt(1+sin(x)))) (24) -1

(25) 65506 (26) 2

(27) ! (28) 0 -32768

(29) 1 (30) 4

三、閱讀程序題

(31) -32768, 8000, 9 (32) 15

(33) 3 (34) 145

(35) 4433 (36) 4

(37) 7

四、完善程序題

(38) #include math.h (39) k1%j==0

(40) k3%10 (41) d=0

(42) sqrt(i) (43) s%10==2

(44) n=2.0 (45) (2*n-1)

(46) fabs(tn)EPS

C語言習題 以下定義語句中正確的是() A. int a=b=0 ; B. char A=65+1; b=’b’;

int a=b=0 ;

不能對未定義的b賦值

char A=65+1; b=’b’;

中間是分號,所以b未定義

float a=1 ,*b=a, *c=b;

b和c未定義

大一C語言期末考試求題庫

一、單項選擇題(共10題,每題2分,共20分。在備選答案中選擇一個最佳答案。多選、錯選、不選不得分)

1、不是C語言基本數據類型的是( )。

A、指針類型 B、整型

C、字元型 D、實型

2、設有:int a=3, b= 4, c= 5,x , y; 表達式0 (x=a)(y=b)的值為( )。

A、1 B、0 C、3 D、4

3、設有語句 int a=3 ; 則執行了語句 a+=6;後,變數a 的值為( )。

A、18 B、-3 C、9 D、12

4、執行以下程序段後,輸出的y值為( )

void main()

{ int a[]={2,4,6,8,10};

int y, *p;

p=a[0];

y=*p; printf(「%d」,y);

}

A、2 B、4 C、6 D、8

5、有定義語句:float a[4];則分配給數組a的內存空間為( )位元組。

A、 20 B、 12 C、 16 C、10

6、以下描述錯誤的是( )。

A、break語句可用於while語句。

B、break語句和continue語句的作用是一樣的。

C、在循環語句中使用break語句是為了跳出循環,提前結束循環。

D、在循環語句中使用continue語句是為了結束本次循環,而不終止整個循環。

7、C語言中規定,if語句的嵌套結構中,else總是( )。

A、與最近的if 配對 B、與第一個if 配對

C、按縮進位置相同的if配對 D、與最近的且尚未配對的if 配對

8、說明語句「int (*p)( ); 」的含義是( ) 。

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

B、p是指針變數,指向一個整型數據。

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

D、以上都不對。

9、以下對二維數組c的正確聲明是 ( ) 。

A、int c[3][ ]; B、int c(3,4);

C、int c(2)(2); D、int c[3][2];

10、下述程序段執行後輸出結果為( )。

int x=100, y=200;

printf (“% d”, (x, y));

A、100 B、200 C、100,200 D、編譯出錯

二、填空題(共7題,共10空,每空1分,共10分。將答案填在題中橫線上)

1、C語言提供的三種邏輯運算符是 、 || 和!;

2、函數的返回值是通過函數中的 return 語句獲得的。

3、在”int a[ ][3]={{1},{3,2},{4,5,6},{0}};”定義後,a[2][2]的值為_6__ _;

4、對於”int *pa[5];” pa是一個具有5個元素的_數組指針_,每個元素是一個指向int型變數的__指針__;

5、單向鏈表的尾節點next指針應賦值__ NULL___;

6、在語句for(x=1,y=3;xy;y++)中循環體執行的次數為 0 。

7、int a[5];數組a的首地址為2000,則元素a[1]的地址為 2002 ,元素a[2]的地址為 2004 。

三、程序填空題(共2題,共5空,每空4分,共20分)

1、以下程序完成計算1-1/2+1/3-1/4+1/5+……前n 項和,請填空。

#include stdio.h

int main( )

{ int i, n, flag;

float sum;

scanf(“%d”, n);

flag= 1 ;

sum=0;

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

{ sum+=(float)flag/i;

flag=-flag ;

}

printf(“%.3f\n”, sum);

}

2、以下程序的功能是從鍵盤輸入n個整數,統計其中正數、0、負數的個數,請填空。

#include stdio.h

void main( )

{int a, i, count1,count2,count3;

count1=count2=count3=0 ;

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

{ scanf(「%d」, a);

if(a0) count1++;

else if(a==0) count2++ ;

else count3++;

}

printf(「正數:d個,零:%d個,負數:%d個\n」, count1,count2,count3 );

}

四、運行程序結果題(共4題,每題6分,共24分)

1、寫出程序運行結果。

void main( )

{ int x=1,y=2,t;

int *p1,*p2;

p1=x; p2=y;

t=*p1;*p1=*p2;*p2=t;

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

}

運行結果為:

程序有錯,不能運行!或寫:

x=2,y=1

2、寫出程序運行結果。

#includestdio.h

int max(int a,int b)

{ int c;

c=ab?a:b;

return(c);

}

int min(int a,int b)

{int c;

c=ab?a:b;

return(c);

}

void main()

{ int a=2,b=6;

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

printf(「min=%d\n」,min(a,b));

}

運行結果為:

程序有錯,不能運行!或寫:

max=6

min=2

3、寫出程序運行結果。

#include stdio.h

void main()

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

int i,j,sum=0;

for (i=0;i3;i++)

for(j=0;j3;j++)

if(i==j) sum=sum+a[i][j];

printf(「sum=%d\n」,sum);

}

運行結果為:

程序有錯,不能運行!或寫:

sum=15

4、寫出程序運行結果。

void main( )

{ int n,f;

n=1;

while(n=10)

{ f=f*n;

n+=2;

}

printf(「f=%d\n」,f);

}

運行結果為:

程序有錯,不能運行!或寫:

f=不確定

五、程序設計題(共2題,每題13分,共26分)

1、將一個數組按逆序存放,如元素1、2、3、4、5,按逆序存放後為5、4、3、2、1。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/251866.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-13 17:32
下一篇 2024-12-13 17:32

相關推薦

  • Python第一章題庫

    本篇文章將從以下幾個方面對Python第一章題庫進行詳細的闡述,包括基本語法、數據類型、控制語句、函數和模塊等方面。 一、基本語法 Python是一門簡單易學、功能強大的編程語言,…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • 學堂雲Python語言程序設計答案

    學堂雲Python語言程序設計是一門重要的計算機專業課程。它涵蓋了Python語言及其應用,包括基礎語法、函數、文件處理、數據結構、圖形界面和網路編程等內容。在學習中,我們經常會需…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28

發表回復

登錄後才能評論