違法信息舉報 客服熱線:400-118-7898
廣告
?
專接本欄目測試廣告

?2021年湖北專升本C語言模擬題

普通專升本 責(zé)任編輯:管理員 2021-12-07

摘要:本文是2021年湖北專升本C語言模擬題,有打算報考2022年湖北專升本相關(guān)專業(yè)的考生可以看一看。下面是詳細(xì)內(nèi)容。

2021年湖北專升本C語言模擬題

一 選擇題(24分,每小題2分)

1.已知函數(shù)fread的調(diào)用形式為fread(buffer,size,count,fp),其中buffer代表的是()。

A 存放讀入數(shù)據(jù)項的存儲區(qū)

B 存放讀入數(shù)據(jù)的地址或指向此地址的指針

C 一個指向所讀文件的文件指針

D 一個整形變量,代表要讀入的數(shù)據(jù)項總數(shù)

2.以下程序的輸出結(jié)果為( )。

main( )

{

int i=010,j=10;

printf("%d,%d\n",i++,j--);

}

A 11,9

B 9,10

C 8,10

D 9,9

3.設(shè)a為int型變量,執(zhí)行下列賦值語句后,a的取值分別是( )。

a=125.534;

a=20.0/3;

a=(int)125.521%4;

a=5<<2;

A 125,6,31,1

B 125,6,1,20

C 125,6.666666,31,20

D 125.534,6.666666,2,20

4.設(shè)i和k都是int類型,則for循環(huán)語句( )。

for(i=0,k=-1;k=1;i++,k++)

printf("****\n");

A 循環(huán)結(jié)束的條件不合法

B 循環(huán)體一次也不執(zhí)行

C 循環(huán)體只執(zhí)行一次

D 是無限循環(huán)

5.以下程序的輸出結(jié)果為( )。

main( )

{

char c;

int i;

for(i=65;i<68;i++)

{

c=i+32;

switch(c)

{

case 'a':

case 'b':

case 'c':printf("%c,",c);break;

default:printf("end");

}

}

}

A a,b,c,end

B a,a,a,end

C a,a,a,

D a,b,c,

6.函數(shù)調(diào)用語句:fseek(fp,-10L,2);的含義是( )。

A 將文件位置指針從文件末尾處向文件頭的方向移動10個字節(jié)

B 將文件位置指針從當(dāng)前位置向文件頭的方向移動10個字節(jié)

C 將文件位置指針從當(dāng)前位置向文件末尾方向移動10個字節(jié)

D 將文件位置指針移到距離文件頭10個字節(jié)處

7.以下程序的輸出結(jié)果為( )。

main( )

{

int i=0,j=0;

while(s1[i]!='\0')

i++;

while(s2[j]!='\0')

s1[i++]=s2[j++];

s1[i]=0;

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

}

A side

B country

C sidetry

D countryside

8.下列說法不正確的是( )。

A 主函數(shù)main中定義的變量在整個文件或程序中有效

B 不同函數(shù)中,可以使用相同名字的變量

C 形式參數(shù)是局部變量

D 在一個函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效

9.在下列程序段中,枚舉變量 c1的值是( )。

enum color { red,yellow,blue=4,green,white}c1;

c1=yellow;

c1=white;

A 1

B 3

C 5

D 6

10.設(shè)有說明 int (*ptr)();其中標(biāo)識符ptr是( )。

A 是一個指向整形變量的指針

B 是一個指針,它指向一個函數(shù)值是int的函數(shù)

C 是一個函數(shù)名

D定義不合法

11.定義由n個指向整形數(shù)據(jù)的指針組成的數(shù)組p,其正確的方式為( )。

A int p;

B int (*p)[n];

C int *p[n];

D int (*p)( );

12.具有相同類型的指針類型變量p與數(shù)組a,不能進(jìn)行的操作是( )。

A p=a;

B *p=a[0];

C p=&a[0];

D p=&a;

二 判斷對錯,對的劃“√”,錯的劃“×”(20分,每小題2分)

1.參加位運算的數(shù)據(jù)可以是任何類型的數(shù)據(jù)。 ( )

2.若有定義和語句:

int a;

char c;

float f;

scanf("%d,%c,%f",&a,&c,&f);

若通過鍵盤輸入:10 A 12 5

則a=10,c=‘A’,f=12.5。 ( )

3.C語言把文件看作是一個字符(字節(jié))的序列。 ( )

4.若有宏定義:

#define S(a,b) t=a;a=b;b=t

由于變量t沒定義,所以此宏定義是錯誤的。 ( )

5.在Turbo C中,下面的定義和語句是合法的:

file *fp;

fp=fopen("a.txt","r"); ( )

6.若有定義:

char s[ ]="china";

則Turbo C系統(tǒng)為數(shù)組s開辟6個字節(jié)的內(nèi)存單元。 ( )

7.若有定義和語句:

int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;

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

sum+=a[i][2-i];

則sum=21。 ( )

8.若有定義和語句:

struct student

{

int num;

char name[10];

float score;

}

s[5]={{1,"lili",98.5},{9,"xiaohua",66}},*p=s;printf("%d",*p++);

輸出結(jié)果是1。 ( )

9.在程序中定義了一個結(jié)構(gòu)體類型后,可以多次用它來定義具有該類型的變量。 ( )

10.在Turbo C中,此定義和語句是合法的:

enum aa{ a=5,b,c}bb;

bb=(enum aa)5; ( )

三 寫出下列程序的運行結(jié)果(36分,每小題6分)

1.

main( )

{

int i=29,j=6,k=2,s;

s=i+i/j%k-9; //s=i+(i/j)%k-9

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

}

2.

main( )

{

int x=31,y=2,s=0;

do

{

s-=x*y;

x+=2;y-=3;

}

while(x%3==0); //先執(zhí)行,后判斷

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

}

3.

main( )

{

int a[6]={10,20,30,40,50,60},i;

invert(a,0,5);

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

printf(“%d,”,a[i]);

printf(“\n”);

}

invert(int s[ ],int i,int j) //倒置

{

int t;

if(i<j)< p="">

{

invert(s,i+1,j-1); //函數(shù)自身的嵌套調(diào)用,形成循環(huán)

t=s[i];

s[i]=s[j];

s[j]=t;

}

}

4.

#include

main()

{

char str[ ]="The C program",c;

int i;

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

{

switch(c)

{

case 'g': ++i; break; //由于++i,跳過了g后面的1個字母

case 'o': continue;

default: printf(“%c”,c); continue;

}

printf(“*”);

}

printf(“\n”);

}

5.

struct w //結(jié)構(gòu)體

{

char low;

char high;

};

union u //共用體

{

struct w byte;

short word;

}uw;

main( )

{

int result;

uw.word=0x1234;

printf("word value:%04x\n",uw.word);

printf("high byte:%02x\n",uw.byte.high);

printf("low byte:%02x\n",uw.byte.low);

uw.byte.low=0x74;

printf("word value:%04x\n",uw.word);

result=uw.word+0x2a34;

printf("the result:%04x\n",result);

}

6.

main()

{

char *s2="I love China!",**s1=&s2;

char *s3,c,*s4="w";

s3=&c;

*s3='H';

s2=s2+2;

printf("%s\t%c\t%s\t%c\n",s2,*s3,s4,**s1);

}

四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(20分,每個空2分)

1.百馬百擔(dān)問題:有100匹馬,馱100擔(dān)貨,大馬馱3擔(dān),中馬馱2擔(dān),兩匹小馬馱1擔(dān),問大、中、小馬各多少匹?

main( )

{

int hb,hm,hl,n=0;

for(hb=0;hb<=100;hb+=(1))

for(hm=0;hm<=100-hb;hm+=(2))

{

hl=100-hb- (3) ;

if(hb/3+hm/2+2*(3)==100)

{

n++;

printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);

}

}

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

}

2.用“起泡法”對輸入的10個字符排序后按從小到大的次序輸出。

#define N 10

char str[N];

void main()

{

int i,flag;

for(flag=1;flag==1;)

{

scanf("%s",str);

flag=0;

printf("\n");

}

sort(___(4)___);

for(i=0;i<n;i++)< p="">

{

printf("%c",str[i]);

}

printf("\n");

}

sort(char str[N]) //冒泡排序

{

int i,j;

char t;

for(j=1;j<n;j++)< p="">

for(i=0;i<10-j;i++)

if(str[i]>str[i+1])

{

t=str[i];

____(5)____;

____(6)____; //交換位置

}

}

3.以下程序是一個函數(shù),功能是求二階矩陣(m行n列矩陣)的所有靠外側(cè)的各元素值之和。(本程序中二階矩陣用一維數(shù)組來表示。)

例如,矩陣為:

3 0 0 3

2 5 7 3

1 0 4 2

則所有靠外側(cè)的各元素值之和為3+0+0+3+2+3+1+0+4+2=18。

add(int m,int n,int arr[])

{

for(i=0;i<m;i=i+m-1)< p="">

for(j=0;j<n;j++)< p="">

sum=sum+____(7)____;

for(j=0;j<n;j=j+n-1)< p="">

for(i=1;____(8)____;i++)

sum=sum+arr[i*n+j];

return(sum);

}

4.用指針作函數(shù)參數(shù),編程序求一維數(shù)組中的最大和最小的元素值。

#define N 10

main()

{

void maxmin(int arr[],int *pt1,int *pt2,int n);

int array[N]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;

p1=&a;

p2=&b;

maxmin(array,p1,p2,N);

printf("max=%d,min=%d",a,b);

}

void maxmin(int arr[],int *pt1,int *pt2,int n)

{

int i;

*pt1=*pt2=arr[0];

for(i=1;i<n;i++)< p="">

{

if(arr[i]>*pt1)

____(9)____ ;

if(arr[i]<*pt2)

____(10)____ ;

}

}

答案

一 選擇題(24分,每小題2分)

1.( B ) 2.( C ) 3.( B )

4.( D ) 5.( D ) 6.( A )

7.( D ) 8.( A ) 9.( D )

10.( B ) 11.( C ) 12.( D )

二 判斷對錯,對的劃“√”,錯的劃“×”(20分,每小題2分)

1.( × ) 2.( √ )

3.( √ ) 4.( × )

5.( × ) 6.( √ )

7.( √ ) 8.( × )

9.( √ ) 10.( √ )

三 寫出下列程序的運行結(jié)果(36分,每小題6分)

1.s=20

2.x=35 y=-4 s=-29

3.60,50,40,30,20,10,

4.e C pr*am

5.word value:1234

6.love China! H w l

high byte:12

low byte:34

word value:1274

the result:3ca8

四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(20分,每個空2分)

1.(1) 3 (2) 2 (3)hm hl

2.(4) str (5) str[i]=str[i+1] (6) str[i+1]=t

3.(7) arr[i*n+j] (8) i<m-1< p="">

4.(9) *ptr1=arr[i] (10) *ptr2=arr[i]

更多資料

廣東省專升本《大學(xué)語文》真題

云南專升本《高等數(shù)學(xué)》真題(2019年)

統(tǒng)招專升本《高等數(shù)學(xué)》真題回憶版(2021年)

更多課程

《市場營銷學(xué)》公開課—業(yè)務(wù)成長戰(zhàn)略

1節(jié)課

《基礎(chǔ)會計》公開課—會計要素-反映財務(wù)狀況的會計要素

1節(jié)課

《管理學(xué)》公開課——馬斯洛需要層次理論

1節(jié)課

溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請考生以權(quán)威部門公布的內(nèi)容為準(zhǔn)!

專升本備考資料免費領(lǐng)取

去領(lǐng)取

資料下載
  • 統(tǒng)招專升本《大學(xué)語文》真題資料

    下載
  • 統(tǒng)招專升本《大學(xué)語文》真題回憶版(2021年)

    下載
  • 統(tǒng)招專升本《大學(xué)語文》備考資料一

    下載
  • 全國版專接本《大學(xué)語文》真題匯編

    下載