文档库 最新最全的文档下载
当前位置:文档库 › 2022年西安文理学院公共课《C语言》科目期末试卷A(有答案)

2022年西安文理学院公共课《C语言》科目期末试卷A(有答案)

2022年西安文理学院公共课《C语言》科目期末试卷A(有答案)

一、填空题

1、设x为无符号整数。表达式x^(~(~0<

2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数

________完成的。

3、在C语言源程序中,一个变量代表【】。

4、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。

5、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。

6、已有一维数组a,n为元素的个数,且各元素均有值;函数void process

(float*p,int n,float(*fun)(float*,int))为一个可完成下面各种计算的通用函数。请分别写出用于以下计算的各函数中的调用语句_______、_______和

_______。

(1)float arr_add(float*arr,int n)计算数组元素值之和。

(2)float odd_add(float*p,int n)计算下标为奇数的元素之和。

(3)float arr_ave(float*p,int n)计算各元素的平均值。

7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分是_______,改正后为_______。

void add(float a,float b)

{float c;

c=a+b;

return c;

}

8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、

b=20、c=30;交换后,a=20、b=30、c=10。请填空。

_______;a=b;b=c;_______;

9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。

a+=_______;b=a-_______;a-=_______;

10、在C语言中,二维数组元素在内存中的存放顺序是_______。

二、选择题

11、若有说明语句:charc='\72';则变量c( )。

A.包含1个字符

B.包含2个字符

C.包含3个字符

D.说明不合法,c的值不确定

12、对应以下各代数式中,若变量a和x均为double类型,则不正确的C语言表达

式是( )

13、以下不符合C语法的赋值语句是()。

A.m=(2+1,m=1);

B.m=n=0;

C.m=1,n=2

D.n++;

14、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。

A.int a=b=c=5;

B.int a,b,c=5;

C.a=5,b=5,c=5;

D.a=b=c=5;

15、若有说明:inta[10];,则对a数组元素的正确引用是()。

A.a[10]

B.a[3.5]

C.a(5)

D.a[10-10]

16、一个C语言程序由( )。

A.一个主程序和若干子程序组成

B.函数组成

C.若干过程组成

D.若干子程序组成

17、以下描述中正确的是( )

A.while、do-while、for循环中的循环体语句都至少被执行一次

B.do-while循环中,while(表达式)后面的分号可以省略

C.while循环体中,一定要有能使while后面表达式的值变为“假”的操作

D.do-while 循环中,根据情况可以省略 while

18、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()

A.extern

B.register

C.auto

D.static

19、已有函数max(a,B.,为了让函数指针变量p指向函数max,正确的赋值方法是()

A.p=max;

B.*p=max;

C.p=max(a,B.;

D.*p=max(a,B.;

20、执行下列程序后编译将出现错误,错误是()。

#include

int main()

{char a,b,c,*d;

a=\V;

b='\xbe';

c=\0xab";

d="\0127";

printf("%c%c%c%c\n",a,b,c,*D.;

return(0);

}

A.只有a=\';语句不正确

B.b='\xbc';语句不正确

C.d="\0127";语句不正确

D.a='\V;和c=\0xab";语句都不正确

21、以下是有关汉诺塔问题的程序段,若在main函数中有调用语句hanoi(3,'A',B’,C.;则符合程序段运行结果的选项是()。

void move(char getone,char putone)

{printf("%c——>%c\n",getone,putone);

void hanoi(int n,char one,char two,char three)

{if(n==1)move(one,three);

else

{hanoi(n-1,one,three,two);

move(one,three);

hanoi(n-1,two,one,three);

}

}

A)A-->C B)A-->C C)A-->C D)A-->C

A-->B A-->B A-->B A-->B

C-->B C-->A C-->B C-->B

B-->A A-->B A-->C A-->C

C-->B B-->C B-->A A—->B

A-->C A-->C B-->C B-->C

A-->B A-->B A-->C A-->C

22、下面程序段的运行结果是()。

int a[6][6],i,j;

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

for(j=1:j<6;j++)

a[i][j]=(i/j)*(j/i);

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

{for(j=1;j<6;j++)

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

printf("\n")

}

A)11111 B)00001 C)10000 D)10001 11111 00010 01000 01010 11111 00100 00100 00100 11111 01000 00010 01010

11111 10000 00001 10001

23、下面程序段的运行结果是()。

charc[5]={'a',b',\o','c','\o');

printf("%s",C.;

A.'a''b'

B.ab

C.ab口c

D.ab口(其中口表示1个空格)

24、当a=1、b=3、c=5、d=4时,执行以下程序段后x的值是()。

if(a

if(c

else

if(a

if(b

else x=3;

else x=6;

else x=7;

A.1

B.2

C.3

D.6

25、下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空( )。

#include

int main()

{int i=0,j,k;

do{i++;k=316-13*i;}while(【】);

j=k/11;

printf("316=13*%d+11*%d",i,j);

return0;

}

A.k/11

B.k%11

C.k/11==0

D.k/11=0

三、读程序填空

26、已有定义float d1=3.5,d2=-3.5;执行以下语句后的输出结果是_______。printf("*d(1)=%e*d(2)=%.4e*d(3)=%10.4e*\n",dl,dl,d1);printf("*d(4)=%e*d(5)=%.6e*d(6)=%-12.5e*\n",d2,d2,d2);27、以下程序的输出结果是_______。

#include

int main()

{int x=1,y=2;

printf("x=%dy=%d*sum*=%d\n",x,y,x+y);

printf("10 Squared is:%d\n",10*10);

return 0;

}

28、若a、b、c均已正确定义且a=0、b=2、c=3,则以下程序段的输出是_______。

switch(a)

{case 0:switch(b==2)

{case 1:printf("&”);break;

case 2:printf("%”);break;

}

case 1:switch(c)

{case 1:printf("S");

case 2:printf(”*”);break;

default:printf("#”);

}

}

29、以下程序的运行结果是_______。

#include

int main()

{intx,y,z;

x=3;

y=z=4;

printf("%d,",(x>=y>=x)?1:0);

printf("%d\n",z>=y&&y>=x);

return 0;

}

30、下面程序的功能是从3个红球、5个白球、6个黑球中任意取出8个球,且其中必须有白球,输出所有可能的方案。请填空。

#include

int main()

{inti,j,k;

printf("\n hong bai hei\n");

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

for(_______;j<=5;j++)

{k=8-i-j;

if(_______)

printf("%3d%3d%3d\n",i,j,k);

}

return 0;

}

31、以下search函数的功能是利用顺序查找法从数组a的10个元素中对关键字m进行查找。顺序查找法的思路是:从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。若找到,则返回此元素的下标;若仍未找到,则返回值一1。请填空。

#include

int search(int a[10],int m)

{int i;for(i=0;i<=9;i++)

if(_______)

return(i);

return(-1);

int main()

{int a[10],m,i,no;

no=search(_______);

if(_______)

printf("\nOK FOUND!%d",no+1);else printf("\nSorry Not Found!");return(0);

}

32、当运行以下程序时,从键盘输入

girl<回车>

boy<回车>

则下面程序的运行结果是_______。

#include

#include

int main()

{char a[2][80],t;int i,j,m,n,l,max;for(i=0;i<=1;i++)

gets(a[i]);

t=a[0][0];

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

{1=strlen(a[i]);

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

if(a[i][j]>t)

{max=a[i][j];m=i;n=j;

}

printf("%c%d%d\n",max,m,n);

return 0;

}

33、以下程序的运行结果是_______。

#include

int sub(int*s);

int main()

{int i,k;

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

{k=sub(&i);

printf("%3d",k);

}

printf("\n");

return(0);

}int sub(int*s)

{static intt=0;

t=*s+t;

return t;

}

四、编程题

34、以下函数fun的功能是从3个红球(x)、5个白球(y)、6个黑球(z)中任意取出8个,且其中必须要有红球和白球。请编写函数,输出所有方案。

#include

int fun(int x,int y,int z)

{int i,j,k,sum=0;

(请在此处编写函数)

}

int main()

{int sum,x=3,y=5,z=6;

sum=fun(x,y,z);

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

return(0);

}

35、函数fun的功能是:判断输入的3个整型值能否组成三角形,组成的是等边三角形,还是等腰三角形。请在函数中填写正确的内容。

#include

void fun(int a,int b,intc);

int main()

{int a,b,c;

printf("\ninput a,b,c:\n");

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

fun(a,b,c);

return(0);

}

void fun(int a,int b,int c)

{if(a+b>c&&b+c>a8.&a+c>b)

(请在此处填写正确的内容)

Else

printf("不能组成三角形");

}

参考答案

一、填空题

1、【1】~0得到一个全1的数

【2】(~0<

【3】~(~0<

【4】~(~0<

【5】x^(~(~0<

2、【1】scanf【2】printf

3、内存中的一个存储单元

4、【1】按位与【2】地址与

5、13.700000

6、【1】process(a,n,arr_add);

【2】process(a.n,odd_add);

【3】process(a,n,arr_ave);

7、【1】void add(float a,float b)【2】float add(float a,float b)

8、【1】t=a【2】c=t

9、【1】b【2】b【3】b

10、按行主顺序存放

二、选择题

11、A

12、C

13、D

14、A

15、D

16、B

17、C

18、D

19、A

20、D

21、C

22、C

23、B

24、B

25、B

三、读程序填空

26、*d(1)=3.50000e+00*d(2)=3.500e+00*d(3)=囗3.500e+00*

*d(4)=一3.50000e+00*d(5)=-3.50000e+00*d(6)=-3.5000e+00囗x (注:答案中的囗代表空格)

27、x=1 y=2*sum*=310 Squared is:100

28、【1】×<110&&x>=100【2】(x<60)||(x>109)【3】m=0

29、0,1

30、【1】j=1【2】k>=0&&k<=6

31、【1】a[i]==m【2】a,m【3】no>=0

32、y12

33、0 1 3 6

四、编程题

34、for(i=1;i<=x;i++)

{for(j=1;j<=y;j++)

{k=8-i-j;if(k>=0&&k<=z)

{sum=sum+1;

printf("%4d%4d%4d\n",i,j,k);

}

}

}

return sum;

35、{if(a==b&&b==c)printf("这是等边三角形");else if(a==b||b==c||a==c)printf("这是等腰三角形");else

printf(”组成一般三角形”);

}

2022年西安文理学院公共课《C语言》科目期末试卷A(有答案)

2022年西安文理学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x为无符号整数。表达式x^(~(~0<

2022年吉首大学公共课《C语言》科目期末试卷A(有答案)

2022年吉首大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 4、若a是int型变量,则执行表达式a=25/3%3后a的值为_______ 5、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。 6、以下程序段通过指针变量q,给如图所示连续动态存储单元赋值(在此过程中不能移动q)。请填空。(假设程序段中的所有变量均已正确说明。) _______scanf("%d",q+k); 7、执行下面程序段后,k的值是_______。 k=1;n=263; do{k*=n%10;n/=10;} while(n); 8、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node;

9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 10、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。 二、选择题 11、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是( ) A.7 B.8 C.6 D.2 12、下面正确的字符常量是( ) A."c" B. "\\" C. 'w' D. " 13、已知ch是字符型变量,下面不正确的赋值语句是() A.ch='a+b'; B.ch='\o'; C.ch='7'+'9'; D.ch=5+9; 14、根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式 应该为。(注:口表示空格) #include int main() {char ch1,ch2,ch3; 输入语句 printf("%c%c%c",ch1,ch2,ch3); return0; } 输入形式:A口BOC<回车>

2022年集美大学公共课《C语言》科目期末试卷A(有答案)

2022年集美大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是_______。 2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 3、C语言的源程序必须通过【】和【】后,才能被计算机执行。 4、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式.pow (y,fabs(x))的值为_______ 5、在C语言的赋值表达式中,赋值号左边必须是_______ 6、以下程序的运行结果是_______。 #include int main() {char s[]="ab\'cdefg\",*p=s+1; printf("%c”,*(p++)); printf("%s",p+2); return(0); } 7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。 a[0]=1;a[1]=2;swap(a,2);

8、设有如下结构体说明: struct ST {int a;float b; struct ST*c; doublex[3]; }st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。 _______ 9、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 10、下面程序段的运行结果是_______。 char ch[]="600";int a,s=0; for(a=0;ch[a]>= '0'&&ch[a]<='9';a++) s=10*s+ch[a]-'o'; printf("%d",s); 二、选择题 11、若有代数式3ac ,则不正确的C语言表达式是( )。 bc A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/b*3 12、以下正确的叙述是( )。 A.在C程序中,每行中只能写一条语句 B.若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数

2022年西安理工大学公共课《C语言》科目期末试卷A(有答案)

2022年西安理工大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进制数是_______。 2、C语言源程序的基本单位是________ 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 4、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为_______ 5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______ 6、下面程序可求出图中方括号内的元素之积,请填空。 # include int main() { int x[3][3]={7,2,1,3,4,8,9,2,6}; int s,*p; p=_______; s=*p*_______; printf("product=%d",s); return(0); }

7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 10、下面程序wdm的运行结果是_______。 int i,x[10]={2,3,0,3,0,2,3,2,1,3},y[4]={0}; for(i=0;i<10;i++)y[x[i]]++; printf("%d\n",y[3]); 二、选择题 11、下面4个选项中,是合法整型常量的选项是( )。 A.160 B.-0xcdf C.-01 D.-0x48a -0xffff 01a 986 0122e5 011 0xe 066 80x 12、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( ) A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D.可以是字母、数字和下划线中任一种字符 13、以下针对scanf函数的叙述中,正确的是()。

2022年南昌工程学院公共课《C语言》科目期末试卷A(有答案)

2022年南昌工程学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。 2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______ 5、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。 6、下面程序段的运行结果是_______。 Char a[]="123456789",*p; inti=0;p=a; while(*p) {if(i%2==0)*p='*'; p++;i++; } puts(a); 7、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i);

i++; } 8、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 9、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。 #include int main() {int a,b; float x,y; char cl,c2; scanf("a=%d b=%d",&.a,&.b); scanf("x=%f y=%",8.x,8.y); scanf("c1=%cc2=%c”,8.cl,8.c2); printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2); return0; } 10、字符串"ab\n\\012\\\"”的长度是_______。 二、选择题 11、以下不正确的叙述是( )。 A.在C程序中,逗号运算符的优先级最低

2022年武汉工程大学公共课《C语言》科目期末试卷A(有答案)

2022年武汉工程大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后a的值为_______,b的值为_______,c的值为_______。 5、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。 5x7+3x6-4x5+2x1+x3-6x2+x+10 6、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。请填空。(假设程序段中的所有变量均已正确说明。) for(k=0;k<10;k++,m++)scanf("%d",_______); 7、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i);

i++; } 8、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。 union {int n;doublex;}num; num.n=10; num.x=10.5; printf("_______",_______); 9、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。 #include int main() {int a,b; float x,y; char cl,c2; scanf("a=%d b=%d",&.a,&.b); scanf("x=%f y=%",8.x,8.y); scanf("c1=%cc2=%c”,8.cl,8.c2); printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2); return0;

2022年成都工业学院公共课《C语言》科目期末试卷A(有答案)

2022年成都工业学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。 2、在C语言源程序中,一个变量代表【】。 3、C语言源程序的基本单位是________ 4、C语言中的标识符可分为关键字、_______和_______3类。 5、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值 为_______,n的值为_______。 6、下面程序段的运行结果是_______。 char*p="PDP1-0";int i,d; for(i=0;i<7;i++) {d=isdigit(*(p+i)); if(d!=0) printf("%cx",*(p+i)); } 7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______;

9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值 的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 10、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后, a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。 二、选择题 11、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型 为( )。 A.int B.float C.double D.不确定 12、若有代数式3ac ,则不正确的C语言表达式是( )。 bc A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/b*3 13、以下针对scanf函数的叙述中,正确的是()。 A.输入项可以为一实型常量,如scanf("%f",3.5); B.只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d"); C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf ("%4.2f",&f); D.当输入数据时,必须指明变量的地址,如scanf("%f",&f); 14、以下程序的运行结果是()。 #include int main() {int xl=0xabc,x2=0xdef; x2-=xl;

2022年运城学院公共课《C语言》科目期末试卷A(有答案)

2022年运城学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、请读程序段: int x=1; printf("%d\n",~x); 上面程序段的输出结果是_______。 2、C语言的源程序必须通过【】和【】后,才能被计算机执行。 3、在C语言源程序中,一个变量代表【】。 4、若有定义语句:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为_______ 5、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______ 6、下面程序段的运行结果是_______。 char s[20]="abcd"; char*sp=s; sp++; puts(strcat(sp,"ABCD")); 7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。 for(x=0;x<=30;x++) {y=30一x; if(_______)printf("%d,%d\n",x,y); }

8、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。 union {int n;doublex;}num; num.n=10; num.x=10.5; printf("_______",_______); 9、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 10、假设M为已经声明的符号常量,则定义一个具有M×M个元素的双精度型数组a,且所有元素初值为0的形式是_______。 二、选择题 11、下面4个选项中,是非法常量的选项是( )。 12、设有说明语句:int k=7,x=12;则以下能使值为3的表达式是( )。 A..x%=(k%=5) B..x%=(k-k%5) C..x%=k-k%5 D..(x%=k)-(k%=5)

2022年贺州学院公共课《C语言》科目期末试卷A(有答案)

2022年贺州学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、测试char型变量a第6位是否为1的表达式是_______(设最右位是第1位)。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、C语言源程序的基本单位是________ 4、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______ 5、若有定义语句:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为_______ 6、下面程序段的运行结果是_______。 chara[]="12345",*p; int s=0; for(p=a;*p!=\0';p++) s=10*s+*p-'o'; printf("%d\n",s); 7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。 for(x=0;x<=30;x++) {y=30一x; if(_______)printf("%d,%d\n",x,y); } 8、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及 相应的格式说明。

union {int n;doublex;}num; num.n=10; num.x=10.5; printf("_______",_______); 9、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 10、在C语言中,二维数组元素在内存中的存放顺序是_______。 二、选择题 11、设有说明语句:char w;intx;float y;double z;则表达式w*x+z-y值的数据类型为()。 A.float. B.char C.int D.double 12、表达式18/4*sqrt(4.0)/8值的数据类型为() A.int B.float C.double D.不确定 13、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。 A.int a=b=c=5; B.int a,b,c=5; C.a=5,b=5,c=5; D.a=b=c=5; 14、以下C程序的运行结果是。(注:口表示空格) #include

2022年太原科技大学公共课《C语言》科目期末试卷A(有答案)

2022年太原科技大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、请读程序段: unsigned a=16; printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 4、假设m是一个3位数,从左到右依次用a、b、c表示各位的数字,则从左到右各位数字是b、a、c的3位数的表达式是_______。 5、若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后a的值为 _______,b的值为_______,c的值为_______。 6、下面程序段的运行结果是_______。 chara[]="12345",*p; int s=0; for(p=a;*p!=\0';p++) s=10*s+*p-'o'; printf("%d\n",s); 7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]);

8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。请填空。 _______;a=b;b=c;_______; 9、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。 #include int main() {int a,b; float x,y; char cl,c2; scanf("a=%d b=%d",&.a,&.b); scanf("x=%f y=%",8.x,8.y); scanf("c1=%cc2=%c”,8.cl,8.c2); printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2); return0; } 10、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后, a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。 二、选择题 11、下面4个选项中,是不合法的整型常量的选项是 ( )。 A.--0f1 B.-0Xcdf C.-018 D.-0x48eg

2022年西安交通大学公共课《C语言》科目期末试卷B(有答案)

2022年西安交通大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.8 2、c1='A'、c2='a',正确的数据输入形式是_______。 #include int main() {int a,b; float x,y; char cl,c2; scanf("a=%d b=%d",&.a,&.b); scanf("x=%f y=%",8.x,8.y); scanf("c1=%cc2=%c”,8.cl,8.c2); printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2); return0; } 2、C语言源程序的基本单位是________ 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 4、若有定义语句:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为_______ 5、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______

6、在C语言中,&运算符作为单目运算符时表示的是_______运算;作为双目运算 符时表示的是_______运算。 7、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i); i++; } 8、下面程序段的运行结果是_______。 int i=5;char c[6]="abcd"; do{c[i]=c[i-1];}while(--i>0); puts(c); 9、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。 10、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。 二、选择题 11、已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句 c2='A'+'6'-'3';后,c2中的值为( )。 A.D B.68 C.不确定的值 D.C 12、下面4个选项中,是合法转义字符的选项是( )。 A.’\" B. '\ ' C. ' \018' D. '\\o'

2022年洛阳理工学院公共课《C语言》科目期末试卷A(有答案)

2022年洛阳理工学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是_______。 2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 3、C语言的源程序必须通过【】和【】后,才能被计算机执行。 4、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式.pow (y,fabs(x))的值为_______ 5、在C语言中,用关键字_______定义单精度实型变量,用关键字_______定义双精度实型变量,用关键字_______定义字符型变量。 6、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。请填空。(假设程序段中的所有变量均已正确说明。) for(k=0;k<10;k++,m++)scanf("%d",_______); 7、下面程序段中循环体的执行次数是_______。 a=10;b=0; do{b+=2;a-=2+b;}while(a>=0);

8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、 b=20、c=30;交换后,a=20、b=30、c=10。请填空。 _______;a=b;b=c;_______; 9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 10、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。 二、选择题 11、下面4个选项中,是正确的数值常量或字符常量的选项是( ) 12、表达式18/4*sqrt(4.0)/8值的数据类型为() A.int B.float C.double D.不确定 13、设有说明:double y=0.5,z=1.5;int x=10;则能够正确使用C语言库函数的赋值语句是()。 A.z=exp(y)+fabs(x); B.y=log10(y)+pow(y); C.z=sqrt(y-z); D.x=(int)(atan2((double)x,y)+exp(y- 0.2));

2022年沈阳工学院公共课《C语言》科目期末试卷A(有答案)

2022年沈阳工学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。 2、C语言的源程序必须通过【】和【】后,才能被计算机执行。 3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 4、C语言中的标识符可分为关键字、_______和_______3类。 5、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______ 6、下面程序段的运行结果是_______。 char s[20]="abcd"; char*sp=s; sp++; puts(strcat(sp,"ABCD")); 7、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i); i++; } 8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。

a+=_______;b=a-_______;a-=_______; 9、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。请填空。 _______;a=b;b=c;_______; 10、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。 二、选择题 11、若有说明语句:charc='\72';则变量c( )。 A.包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法,c的值不确定 12、若x、i、j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后x的值为( )。 A.4 B.16 C.32 D.52 13、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。 A.int a=b=c=5; B.int a,b,c=5; C.a=5,b=5,c=5; D.a=b=c=5; 14、设有如下程序: #include int main() {char ch1='A',ch2='a';

2022年西安文理学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年西安文理学院计算机科学与技术专业《数据结构与算法》科目 期末试卷A(有答案) 一、选择题 1、哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。 A.哈希函数 B.除余法中的质数 C.冲突处理 D.哈希函数和冲突处理 2、若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是()。 A.快速排序 B.堆排序 C.归并排序 D.直接插入排序 3、线性表的顺序存储结构是一种()。 A.随机存取的存储结构 B.顺序存取的存储结构 C.索引存取的存储结构 D.Hash存取的存储结构 4、已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7}, E={},G的拓扑序列是()。 A.V1,V3,V4,V6,V2,V5,V7 B.V1,V3,V2,V6,V4,V5,V7 C.V1,V3,V5,V2,V6,V7 D.V1,V2,V5,V3,V4,V6,V7 5、循环队列A[0..m-1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是()。 A.(rear-front+m)%m B.rear-front+1 C.rear-front-1 D.rear-front

6、若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b, c,d,e,a, 则根结点的孩子结点()。 A.只有e B.有e、b C.有e、c D.无法确定 7、下列叙述中,不符合m阶B树定义要求的是()。 A.根结点最多有m棵子树 B.所有叶结点都在同一层上 C.各结点内关键字均升序或降序排列 D.叶结点之间通过指针链接 8、每个结点的度或者为0或者为2的二叉树称为正则二叉树。n个结点的正则二叉树中 有()个叶子。 A.log2n B.(n-1)/2 C.log2n+1 D.(n+1)/2 9、一棵非空的二叉树的前序序列和后序序列正好相反,则该二叉树一定满足()。 A.其中任意一个结点均无左孩子 B.其中任意一个结点均无右孩子 C.其中只有一个叶结点 D.其中度为2的结点最多为一个 10、在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是()。 A.直接插入排序 B.起泡排序 C.简单选择排序 D.快速排序 二、填空题 11、若用n表示图中顶点数目,则有______条边的无向图成为完全图。 12、对单链表中元素按插入方法排序的C语言描述算法如下,其中L为链表头结点指针。请填充算法中标出的空白处,完成其功能。

2022年西安交通大学城市学院公共课《C语言》科目期末试卷A(有答案)

2022年西安交通大学城市学院公共课《C语言》科目期末试卷A(有 答案) 一、填空题 1、设x为无符号整数。表达式x^(~(~0<

#include int main() {int a,b; float x,y; char cl,c2; scanf("a=%d b=%d",&.a,&.b); scanf("x=%f y=%",8.x,8.y); scanf("c1=%cc2=%c”,8.cl,8.c2); printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2); return0; } 10、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后, a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。 二、选择题 11、下面4个选项中,是不合法的整型常量的选项是 ( )。 A.--0f1 B.-0Xcdf C.-018 D.-0x48eg 0xfff 017 999 -0680 011 12.456 5e2 03f 12、已知各变量的类型说明如下: inti=8,k,a,b; unsigned long w=5;

2022年西安石油大学公共课《C语言》科目期末试卷B(有答案)

2022年西安石油大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。 char cl,c2; scanf("%4c%4c",&cl,8&c2); 2、C语言源程序的基本单位是________ 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 4、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。 5、若有定义语句:inte=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是_______。 6、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 7、执行下面程序段后,k的值是_______。 k=1;n=263; do{k*=n%10;n/=10;} while(n); 8、下面程序段的运行结果是_______。 int i=5;char c[6]="abcd"; do{c[i]=c[i-1];}while(--i>0); puts(c);

9、设有宏定义如下: #define MIN(x,y)(x)>(y)?(x):(y) #define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。 int a=1,b=3,c=5,s1,s2; s1=MIN(a=b,b-a); s2=T(a++,a*++b,a+b+c); 10、若有以下定义和语句,在程序中可通过指针数组p,用*(p[i]+j)等4种形式引用数组元素s[i][j],另3种形式分别是:_______、_______和_______。(假设i、j已正确说明并赋值。) int s[10][6],*p[10]; for(i=0;i<10;i++)p[i]=s[i]; 二、选择题 11、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( ) A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D.可以是字母、数字和下划线中任一种字符 12、若有说明语句:charc='\72';则变量c( )。 A.包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法,c的值不确定 13、一个C程序的执行是从() A.本程序的main函数开始,到main函数结束 B.本程序的第一个函数开始,到本程序文件的最后一个函数结束

2022年榆林学院公共课《C语言》科目期末试卷A(有答案)

2022年榆林学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、与表达式x^=y-2等价的另一书写形式是_______。 2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 3、结构化程序由________、________ 、________ 3种基本结构组成。 4、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。 5、若有定义语句:int a=2,b=3;float x=3.5,y=2.5;则表达式(float) (a+b)/2+(int)x%(int)y的值为_______ 6、下面程序段的运行结果是_______。 Char a[]="123456789",*p; inti=0;p=a; while(*p) {if(i%2==0)*p='*'; p++;i++; } puts(a); 7、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i);

i++; } 8、设有如下结构体说明: struct ST {int a;float b; struct ST*c; doublex[3]; }st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。 _______ 9、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 10、下面程序段将输出computer。请填空。 char c[]="It is a computer"; for(i=0;_______;i++) {_______;printf("%c",c[j]);} 二、选择题 11、下面不正确的字符串常量是( ) A.'abe' B."12'12" C. "o" D.""

2022年长沙理工大学公共课《C语言》科目期末试卷A(有答案)

2022年长沙理工大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、在C语言源程序中,一个变量代表【】。 4、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_______。 5、在C语言中,用关键字_______定义单精度实型变量,用关键字_______定义双 精度实型变量,用关键字_______定义字符型变量。 6、下面程序段的运行结果是_______。 char s[80],*sp="HELLO!"; sp=strcpy(s,sp); s[0]='h';puts(sp); 7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分 是_______,改正后为_______。 void add(float a,float b) {float c; c=a+b; return c; }

8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。请填空。 _______;a=b;b=c;_______; 9、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 10、设有宏定义如下: #define MIN(x,y)(x)>(y)?(x):(y) #define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。 int a=1,b=3,c=5,s1,s2; s1=MIN(a=b,b-a); s2=T(a++,a*++b,a+b+c); 二、选择题 11、若有说明语句:charc='\72';则变量c( )。 A.包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法,c的值不确定 12、下面4个选项中,是合法浮点数的选项是。( ) A.+1e+1 B.-.60 C.123e D.-e3 5e-9.4 12e-4 1.2e-4. 8e-4 03e2 -8e5 +2e-1 5.e-0 13、已知ch是字符型变量,下面不正确的赋值语句是()

相关文档
相关文档 最新文档