当前位置:文档之家› 2022年湖州师范学院公共课《C语言》科目期末试卷B(有答案)

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、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。

5、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。

6、请读程序段:

unsigned a=16;

printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。

7、执行下面程序段后,k的值是_______。

k=1;n=263;

do{k*=n%10;n/=10;} while(n);

8、设有以下宏定义:

#define WIDTH 80

#define LENGTH WIDTH+40

则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。

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

10、下面程序段的运行结果是_______。

char*p="PDP1-0";int i,d;

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

{d=isdigit(*(p+i));

if(d!=0)

printf("%cx",*(p+i));

}

二、选择题

11、已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )。

A.D

B.68

C.不确定的值

D.C

12、下面4个选项中,是正确的八进制数或十六进制数的选项是()。

13、C语言规定:在一个源程序中,main函数的位置( )

A.必须在最开始

B.必须在系统调用的库函数的后面

C.可以任意

D.必须在最后

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

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

B.函数组成

C.若干过程组成

D.若干子程序组成

15、以下对二维数组a的正确说明是()。

A.inta[3][];

B.float a(3,4);

C.double a[ ][4];

D.float a(3)(4);

16、以下程序的运行结果是()。

#include

int main()

{int xl=0xabc,x2=0xdef;

x2-=xl;

printf("%X\n",x2);

return 0

}

A.ABC

B.0Xabc

C.0X333

D.333

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

A.p=max;

B.*p=max;

C.p=max(a,B.;

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

18、以下程序有语法性错误,有关错误原因的正确说法是()。

#include

int main()

{int G=5,k;

void prt_char();

-----

k=prt_char(G);

---

}

A.语句void prt_char();有错,它是函数调用语句,不能用void说明

B.变量名不能使用大写字母

C.函数说明和函数调用语句之间有矛盾

D.函数名不能使用下划线

19、语句while(!E);中的表达式!E等价于()。

A.E==0

B.E!=1

C.E!=0

D.E==1

20、以下for循环的执行次数是()。

for(x=0,y=0;(y=123)&&(x<4);x++);

A.是无限循环

B.循环次数不定

C.执行4次

D.执行3次

21、以下程序()。

#include

int main()

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

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

else printf("$$$\n");

return 0;

}

A.有语法错不能通过编译

B.可以通过编译但不能通过连接

C.输出***

D.输出$$$

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

#include

int main()

{chara[]="morming",t;int i,j=0;

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

if(a[j]

t=a[j];a[j]=a[7];

a[7]=a[j]; puts(a);

return 0;

}

A)mogninr B)mo C)morning D)mornin

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

#include

int main()

{char str[]="SSSWLIA",c;int k;

for(k=2;(c=str[k])!=\o';k++)

{switch(C.

{case'I':++k;break;

case'L':continue;

default:putchar(C.;continue;

putchar('*’);

}

return 0;

}

A.SSW*

B.SW*

C.SW*A

D.SW

24、以下程序的运行结果是()。

#include

int fun(int a,int B.

{if(a>B.return(a+B.;

else return(a-B.;

int main()

{int x=3,y=8,z=6,r;

r=fun(fun(x,y),2*z);

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

return(0);

}

A.-16

B.-17

C.17

D.16

25、若运行以下程序时,从键盘输入3.62.4<回车>,则下面程序的运行结果是()

# include

# include

int main()

{ float x,y,z;

scanf("%f%f",&x,&y);

z=x/y;

while(1)

if(fabs(z)>1.0){x=y;y=z;z=x/y;}

else break;

printf("%f\n",y);

return 0;

}

A)1.500000 B)1.600000 C)2.000000 D)2.400000

三、读程序填空

26、以下程序的输出结果是_______。

#include

int main()

{int a=325;

double x=3.1415926;

printf("a=%+06dx=%+e\n",a,x);

return 0;

27、以下程序的输出结果是_______。

#include

int main()

{int a=252;

printf("a=%oa=%#o\n",a,a);

printf("a=%xa=%#x\n",a,a);

return 0;

}

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

#include

int sub(int n);int main()

{int i=5;

printf("%d\n",sub(i));

return(0);

}

int sub(int n)

{int a;

if(n==1)return 1;

a=n+sub(n一1);

return(a);

29、以下程序的功能是求3个数的最小公倍数。请填空。

#include

int max(int x,int y,int z)

{if(x>y8.8.x>z)return(x);

else if(_______)return(y);

else return(z);

int main()

{intx1,x2,x3,i=1,j,x0;

printf("Input 3 number:");

scanf("%d%d%d",8.x1,&.x2,8.x3);

x0=max(xl,x2,×3);

while(1)

{j=x0*i;

if(_______)break;

i=i+1;

printf("The is%d%d%d zuixiaogongbei is%d\n",xl,x2,x3,j);

return(0);

}

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

#include

int main()

{int y=2,a=1;

while(y--!=-1)

{do{a*=y;a++;}while(y-一);}

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

return 0;

}

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

BOOK<回车>

CUT<回车>

GAME<回车>

PAGE<回车>

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

#include

#include

int main()

{int i;

char str[10],temp[10]="Control";

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

{gets(str);

if(strcmp(temp,str)<0)strcpy(temp,str);

}

puts(temp);

return 0;

}

32、以下程序的输出结果是_______。#include

int main()

{inta=2,b=7,c=5;

switch(a>0)

{case 1:switch(b<0)

{case 1:printf("@");break;

case 2:printf("!");break;

case 0:switch(c==5) {case0:printf("*");break;

case 1:printf("#");break; default:printf("#");break; default:printf("&");

}

printf("\n");

return0;

}

33、运行以下程序时,从键盘输入abcdef和ABCD,则下面程序的运行结果是_______。

#include

#include

int fun(char*a,char*b)

{int num=0,n=0;

while(*(a+num)!=\o')num++;

while(b[n]){*(a+num)=b[n];num++;n++;}

return num;

int main()

{charsl[81],s2[81],*pl=s1,*p2=s2;

gets(p1);gets(p2);

printf("%d\n",fun(pl,p2));

return(0);

}

四、编程题

34、从键盘输入若干整数(数据个数应少于50),其值在0~4的范围内,用-1作为输入结束的标志;统计同一整数的个数。试编程。

35、假设A、B两名工人生产同一产品,两人每月生产的数量如下:

其中各行的3个数据分别表示月份、A工人生产量、B工人生产量。请编写程序,将这些数据写到d盘file1文件夹中的二进制文件e1252.dat中。

参考答案

一、填空题

1、A囗囗囗B囗囗囗<回车>

2、【1】.c【2】.obj【3】.exe

3、主函数(或main函数)

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

5、9

6、1,4,16

7、36

8、880

9、按行主顺序存放

10、1*0*

二、选择题

11、A

12、C

13、C

14、B

15、C

16、D

17、A

18、C

19、A

20、C

21、D

22、B

23、B

24、B

25、B

三、读程序填空

26、a=+00325囗囗囗x=+3.14159e+00

(注:答案中的囗代表空格)

27、a=374囗囗a=0374

a=fc囗囗a=0xfc

(注:答案中的囗代表空格)

28、15

29、【1】y>x&&y>z【2】j%x1==0&&j%x2==0&&j%x3==0

30、m=1

31、PAGE

32、【1】x<0【2】×/10【3】y!=-2

33、10

四、编程题

34、#include

#define M50

int main()

{int a[M],c[5],i,n=0,x;

printf("Enter 0 or 1 or 2 or 3 or 4,to end with-1\n");scanf("%d",8&x);

while(x!=-1)

{if(x>=0&&x<=4)

{a[n]=x;n++;}

scanf("%d",&.x);

}

for(i=0;i<5;i++)c[i]=0;

for(i=0;i

printf("The result is:\n");

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

printf("%d:%d\n",i,c[i]);

return 0;

}

35、#include

struct workertint month;int worka;int workb;};

int main()

{int i;

struct worker wk;

FILE*fp;

fp=fopen("d:\\filel\\el2_52.dat","wb");

if(fp==NULL)

{ printf("Error!\n");

exit(O);}

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

{ scanf("%d%d%d",&. wk. month,8. wk. worka,8. wk. workb);

fwrite(&. wk, sizeof(struct worker),1, fp);)

fclose(fp);

}

return 0;

}

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、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。 5、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。 6、请读程序段: unsigned a=16; printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。 7、执行下面程序段后,k的值是_______。 k=1;n=263; do{k*=n%10;n/=10;} while(n); 8、设有以下宏定义: #define WIDTH 80

#define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。 9、在C语言中,二维数组元素在内存中的存放顺序是_______。 10、下面程序段的运行结果是_______。 char*p="PDP1-0";int i,d; for(i=0;i<7;i++) {d=isdigit(*(p+i)); if(d!=0) printf("%cx",*(p+i)); } 二、选择题 11、已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )。 A.D B.68 C.不确定的值 D.C 12、下面4个选项中,是正确的八进制数或十六进制数的选项是()。 13、C语言规定:在一个源程序中,main函数的位置( ) A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后

湖州师范C语言程序设计试卷A

while(p1!=NULL) { printf("%d\n",p1->x); p1=p1->next; } } 输出结果。 6、#include void main() { char ch; int k=0; for(ch='A';ch<'H';ch++,k++) if(k%2==0) printf("%c ",ch); printf("\n"); } 输出结果: 五、编程题(40分,每题10分) 1、请编写程序:从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,输出到磁盘文件“upper.txt”中去保存。输入的字符串以“!”结束。(10分) 2、输入n值,打印下列图形。(例如n=5时)(15分) 1 2 3 4 5 1 1 2 3 4

1 1 1 1 2 1 1 1 1 1 3、有4名学生每个学生考4门课程,要求在用户输入学生学号以后能输出该生的全部成绩,用指针型函数来实现。请编写函数float *search().(15分) main() {static float score[][4]={{60,76,80,90},{45,86,57,90},{58,95,80,71},{78,50,60,85}}; float search(),p; int i,m; printf(“enter the number of student:”); scanf(“%d”,&m); printf(“the score of NO.%dare:\n”,m); p=search(score,m); for(i=0;i<4;i++) printf(“%52f\t”,*(p+i)); } float search(float (pointer)[4],int n) { }

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、若有定义语句:ints=6;则表达式s%2+(s+1)%2的值为_______ 5、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。 6、设x是一个整数(16bit),若要通过xly使x低8位置1,高8位不变,则y的八进制数是_______。

7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 8、下面程序段的运行结果是_______。 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); 9、下面程序段将输出computer。请填空。 char c[]="It is a computer"; for(i=0;_______;i++) {_______;printf("%c",c[j]);} 10、若想输出b数组的10个元素,则下面存在错误的程序行是_______。(每个程序行前面的数字代表行号。) 1 int main() 2 {int b[10]={1,3,5,7,9,2,4,6,8,10},k; 3 for(k=0;k<10;k++,b++) 4 printf("%4d",*b); 5 return0; 6 } 二、选择题

2022年塔里木大学公共课《C语言》科目期末试卷B(有答案)

2022年塔里木大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 2、一个C语言源程序由若干函数组成,其中至少应含有一个________ 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过 连接后,生成文件的后缀是 4、表达式pow(2.8,sqrt(double(x))值的数据类型为_______。 5、在C语言中,用“\”开头的字符序列称为转义字符。转义字符“\n”的功能是_______;转义字符“\r”的功能是_______。 6、与表达式x^=y-2等价的另一书写形式是_______。 7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素 交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是 _______。 a[0]=1;a[1]=2;swap(a,2); 8、假设M为已经声明的符号常量,则定义一个具有M×M个元素的双精度型数 组a,且所有元素初值为0的形式是_______。 9、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。

10、定义语句int*f();int(*f)();的含义分别为_______和_______。 二、选择题 11、若有定义语句:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。 A.2.500000 B.2.750000 C.3.500000 D.0.000 000 12、下面4个选项中,是不合法的用户标识符的选项是( )。 A.A B.float C.b-a D._123 P_01 a0 goto temp Do A int INT 13、C语言规定:在一个源程序中,main函数的位置( ) A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 14、以下叙述不正确的是( ) A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数 C.C程序的基本组成单位是函数 D.在C程序中,注释说明只能位于一条语句的后面 15、下面程序段(每行代码前面的数字表示行号)()。 1 float a[10]={0.0}; 2 int i; 3 for(i=0;i<3;i++)scanf("%d",&a[i]);

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

2022年喀什大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 3、C语言源程序的基本单位是________ 4、在C语言中的实型变量分为两种类型,它们是_______和_______。 5、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为 _______。 6、请读以下函数: getbits(unsigned x,unsigned p,unsigned n)' {x=((x<<(p+1-n))&((unsigned)~0>>n)); return(x); } 假设机器的无符号整数字长为16位。若调用此函数时x=0115032,p=7,n=4,则函数返回值的八进制数是_______。 7、下面程序段的运行结果是_______。 x=2;

do{printf("*");x--;)while(!x==0); 8、下面程序段的运行结果是_______。 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); 9、下面程序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]); 10、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。请填空。(假设程序段中的所有变量均已正确说明。) for(k=0;k<10;k++) printf("%d,",_______); printf("\n"); 二、选择题 11、下面4个选项中,是不合法的转义字符的选项是() A.'\"' B.'\1011 ' C.'\0ll' D.'\abe' \\ '\' '\f' '\0ll' \xf' ' \a' '\]' 'xlf'

2022年井冈山大学公共课《C语言》科目期末试卷B(有答案)

2022年井冈山大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 4、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为 _______。 5、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。 5x7+3x6-4x5+2x1+x3-6x2+x+10 6、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。 for(x=0;x<=30;x++) {y=30一x; if(_______)printf("%d,%d\n",x,y); } 8、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。

9、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的 上限为_______。 10、若有定义:int a[]={2,4,6,8,10,12,14,16,18,20,22,24}, *q[3],k;则下面程序段的输出是_______。 for(k=0;k<3;k++)q[k]=8.a[k*4];printf("%d\n",q[2][3]); 二、选择题 11、若有说明语句:charc='\72';则变量c( )。 A.包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法,c的值不确定 12、下面4个选项中,是非法常量的选项是( )。 13、一个C程序的执行是从() A.本程序的main函数开始,到main函数结束 B.本程序的第一个函数开始,到本程序文件的最后一个函数结束 C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序的第一个函数开始,到本程序main函数结束 14、一个C语言程序由( )。 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成 15、若有初始化inta[][3]={1,2,3,4,5,6,7};,则以下错误的叙述是()

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

2022年山西师范大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。 union {int n;doublex;}num; num.n=10; num.x=10.5; printf("_______",_______); 2、C语言源程序的基本单位是________ 3、结构化程序由________、________ 、________ 3种基本结构组成。 4、若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后a的值为 _______,b的值为_______,c的值为_______。 5、C语言中的标识符可分为关键字、_______和_______3类。 6、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。 7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分是_______,改正后为_______。 void add(float a,float b) {float c; c=a+b; return c;

} 8、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。 9、在C语言中,二维数组元素在内存中的存放顺序是_______。 10、已有一维数组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)计算各元素的平均值。 二、选择题 11、下面4个选项中,是非法常量的选项是( )。 12、下面4个选项中,是合法转义字符的选项是( )。 A.’\" B. '\ ' C. ' \018' D. '\\o' '\\ ' ' \017' '\f' '\10l' '\n' '\ " ' xab' ' xlf' 13、以下叙述不正确的是( ) A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数

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

2022年湘潭大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。 union {int n;doublex;}num; num.n=10; num.x=10.5; printf("_______",_______); 2、在C语言源程序中,一个变量代表【】。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。 5、在C语言的赋值表达式中,赋值号左边必须是_______ 6、请读程序段: int x=1; printf("%d\n",~x); 上面程序段的输出结果是_______。 7、下面程序段的运行结果是_______。 x=2; do{printf("*");x--;)while(!x==0);

8、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。9、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。10、若有以下定义和语句: int*p[3],a[6],i; for(i=0;i<3;i++) p[i]=8&a[2*i]; 则*p[0]引用的是a数组元素_______,*(p[1]+1)引用的是a数组元素_______。 二、选择题 11、若x、i、j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后x的值为( )。 A.4 B.16 C.32 D.52 12、在C语言中,要求运算数必须是整型的运算符是( )。 (A) / B.++ C.!= D.% 13、一个C语言程序由( )。 A.一个主程序和若干子程序组成 B.函数组成

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

2022年福州理工学院公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、设有如下结构体说明: struct ST {int a;float b; struct ST*c; doublex[3]; }st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。 _______ 2、在C语言源程序中,一个变量代表【】。 3、C语言源程序的基本单位是________ 4、C语言中的标识符可分为关键字、_______和_______3类。 5、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%= (n%=2)后x的值为_______。 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、设有宏定义如下: #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); 9、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。 10、函数process是一个可对两个整型数a和b进行计算的通用函数;函数max()可求这两个数中的较大者,函数min()可求它们中的较小者。已有调用语句process(a,b,max);和process(a,b,min);。请填空。 void process(_______) {int result; result=(*fun)(x,y); printf("%d\n",result); } 二、选择题 11、设有说明语句: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) 12、下面4个选项中,是非法常量的选项是( )。

2022年河北师范大学公共课《C语言》科目期末试卷B(有答案)

2022年河北师范大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 2、在C语言源程序中,一个变量代表【】。 3、结构化程序由________、________ 、________ 3种基本结构组成。 4、若有定义语句:ints=6;则表达式s%2+(s+1)%2的值为_______ 5、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_______。 6、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是 _______。 7、下面程序段的运行结果是_______。 x=2; do{printf("*");x--;)while(!x==0); 8、字符串"ab\n\\012\\\"”的长度是_______。 9、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。 10、以下程序段通过指针变量q,但不移动q,将如图所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。请填空。(假设程序段中的所有变量均已正确说明。)

for(k=0;k<10;k++) printf("%d,",_______); printf("\n"); 二、选择题 11、在C语言中,要求运算数必须是整型的运算符是( )。 (A) / B.++ C.!= D.% 12、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( )。 A.int B.float C.double D.不确定 13、以下叙述正确的是 A.在C程序中,main函数必须位于程序的最前面 B.C程序的每行中只能写一条语句 C.C语言本身没有输入输出语句 D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误 14、一个C语言程序由( )。 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成 15、若有定义float x[4]={1.3,2.4,5.6},y=6;,则错误的语句是()。 A.y=x[3]; B.y=x+1; C.y=x[2]+1; D.x[0]=y; 16、已知ch是字符型变量,下面不正确的赋值语句是()

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、若有定义语句: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的值是_______。 5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______ 6、设x为无符号整数。表达式x^(~(~0<

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

2022年宁波大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 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、若x和a均是int型变量,则执行表达式(1)后的x值为_______,执行表达式(2)后的x值为_______。 (1)x=(a=4,6*2)(2)x=a=4,6*2 6、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数 是_______。 7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 8、下面程序段的运行结果是_______。 int i=5;char c[6]="abcd"; do{c[i]=c[i-1];}while(--i>0); puts(c);

9、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。10、若有以下定义和语句: int*p[3],a[6],i; for(i=0;i<3;i++) p[i]=8&a[2*i]; 则*p[0]引用的是a数组元素_______,*(p[1]+1)引用的是a数组元素_______。 二、选择题 11、下面4个选项中,是不合法的用户标识符的选项是( )。 A.A B.float C.b-a D._123 P_01 a0 goto temp Do A int INT 12、已知各变量的类型说明如下: int k,a,b; unsigned long w=5; double x=1.42;则以下不正确的表达式是( )。 A.x%(-3) B.w+=-2 C.k=(a=2,b=3,a+B. D.a+=a-=(b=4)*(a=3) 13、一个C程序的执行是从()

2022年上海师范大学公共课《C语言》科目期末试卷B(有答案)

2022年上海师范大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 2、一个C语言源程序由若干函数组成,其中至少应含有一个________ 3、在C语言源程序中,一个变量代表【】。 4、假设m是一个3位数,从左到右依次用a、b、c表示各位的数字,则从左到右各位数字是b、a、c的3位数的表达式是_______。 5、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式 ch='a'+'8'-3'的值为_______。 6、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 7、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 8、下面程序段的运行结果是_______。 int i=5;char c[6]="abcd"; do{c[i]=c[i-1];}while(--i>0); puts(c); 9、下面程序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]); 10、已有一维数组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)计算各元素的平均值。 二、选择题 11、下面4个选项中,是不合法的整型常量的选项是 ( )。 A.--0f1 B.-0Xcdf C.-018 D.-0x48eg 0xfff 017 999 -0680 011 12.456 5e2 03f 12、在C语言中,要求运算数必须是整型的运算符是( )。 (A) / B.++ C.!= D.% 13、一个C程序的执行是从() A.本程序的main函数开始,到main函数结束 B.本程序的第一个函数开始,到本程序文件的最后一个函数结束 C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序的第一个函数开始,到本程序main函数结束 14、一个C语言程序由( )。

2022年沈阳师范大学公共课《C语言》科目期末试卷B(有答案)

2022年沈阳师范大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、假设变量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;_______; 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 4、若x和a均是int型变量,则执行表达式(1)后的x值为_______,执行表达式(2)后的x值为_______。 (1)x=(a=4,6*2)(2)x=a=4,6*2 5、若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后a的值为 _______,b的值为_______,c的值为_______。 6、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数 是_______。 7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。 for(x=0;x<=30;x++) {y=30一x; if(_______)printf("%d,%d\n",x,y); } 8、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。

9、字符串"ab\n\\012\\\"”的长度是_______。 10、下面程序段的运行结果是_______。 char*s1="AbcdEf", *s2="aB"; int t;s1++; t=(strcmp(s1,s2)>0); printf("%d\n",t); 二、选择题 11、下面不正确的字符串常量是( ) A.'abe' B."12'12" C. "o" D."" 12、若有代数式|x3+log10x|,则正确的C语言表达式是() A.fabs(x*3+log(x)) B.abs(pow(x,3)+log(x)) C.abs(pow(x,3.0)+log(x)) D.yfabs(pow(x,3.0)+log(x)) 13、C语言规定:在一个源程序中,main函数的位置( ) A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 14、以下叙述不正确的是( ) A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数 C.C程序的基本组成单位是函数 D.在C程序中,注释说明只能位于一条语句的后面 15、下面程序段(每行代码前面的数字表示行号)()。

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

2022年温州理工学院公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、设有如下结构体说明: struct ST {int a;float b; struct ST*c; doublex[3]; }st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。 _______ 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、在C语言源程序中,一个变量代表【】。 4、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。 5、C语言中的标识符可分为关键字、_______和_______3类。 6、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是 _______。 7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分 是_______,改正后为_______。 void add(float a,float b) {float c; c=a+b; return c;

} 8、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。9、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。 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、下面4个选项中,是不合法的浮点数的选项是( )。 A.160. B.123 C.-18 D.-e3 12、若x、i、j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后x的值为( )。 A.4 B.16 C.32 D.52 13、C语言规定:在一个源程序中,main函数的位置( ) A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 14、以下叙述正确的是

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

2022年南昌工程学院公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 3、结构化程序由________、________ 、________ 3种基本结构组成。 4、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。 5、若有定义语句:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为_______ 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、假设M为已经声明的符号常量,则定义一个具有M×M个元素的双精度型数组a,且所有元素初值为0的形式是_______。 9、下面程序段将输出computer。请填空。 char c[]="It is a computer"; for(i=0;_______;i++) {_______;printf("%c",c[j]);}

10、下面程序段的运行结果是_______。 char s[80],*sp="HELLO!"; sp=strcpy(s,sp); s[0]='h';puts(sp); 二、选择题 11、设以下变量均为int类型,则值不等于7的表达式是( )。 A.(x=y=6,x+y,x+1) B.(x=y=6,x+y,y+1) C.(x=6,x+1,y=6,x+y) D.(y=6,y+1,x=y,x+1) 12、若有定义语句:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int) (x+y)%2/4的值是( )。 A.2.500000 B.2.750000 C.3.500000 D.0.000 000 13、一个C语言程序由( )。 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成 14、C语言规定:在一个源程序中,main函数的位置( ) A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 15、若有说明:inta[3][4];,则对a数组元素的非法引用是()。 A.a[o][2*1] B.a[1][3] C.a[4-2][ o] D.a[o][4] 16、已有定义intx;floaty;且执行scanf("%3d%f”,&x,&y);语句,若从第一列开始输入数据12345口678<回车>,则 y的值为( )。(注:口表示空格)

2022年北京师范大学公共课《C语言》科目期末试卷B(有答案)

2022年北京师范大学公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、C语言源程序的基本单位是________ 4、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_______。 5、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为 _______ 6、在C语言中,&运算符作为单目运算符时表示的是_______运算;作为双目运算 符时表示的是_______运算。 7、下面程序段的运行结果是_______。 x=2; do{printf("*");x--;)while(!x==0); 8、下面程序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]);

9、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。 10、下面程序可求出图中方括号内的元素之积,请填空。 # 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); } 二、选择题 11、下面4个选项中,是合法整型常量的选项是( )。 A.160 B.-0xcdf C.-01 D.-0x48a -0xffff 01a 986 0122e5 011 0xe 066 80x 12、下面4个选项中,是合法浮点数的选项是。( ) A.+1e+1 B.-.60 C.123e D.-e3 5e-9.4 12e-4 1.2e-4. 8e-4

2022年杭州科技职业技术学院公共课《C语言》科目期末试卷B(有答案)

2022年杭州科技职业技术学院公共课《C语言》科目期末试卷B(有 答案) 一、填空题 1、C语言源程序的基本单位是________ 2、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i); i++; } 3、执行下面程序段后,k的值是_______。 k=1;n=263; do{k*=n%10;n/=10;} while(n); 4、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。 5、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是_______。 6、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式.pow (y,fabs(x))的值为_______ 7、假设变量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;_______; 8、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。 9、下面程序段的运行结果是_______。 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); 10、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。请填空。(假设程序段中的所有变量均已正确说明。) for(k=0;k<10;k++,m++)scanf("%d",_______); 二、选择题 11、已知各变量的类型说明如下: inti=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下正确的表达式是( )。 A..a+=a-=(b=4)*(a=3) B..a=a*3=26

相关主题
文本预览
相关文档 最新文档