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

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

一、填空题

1、请读程序段:

int a=1,b=2;

if(a&b)printf("***\n");

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

以上程序段的输出结果是_______。

2、C语言源程序的基本单位是________

3、一个C语言源程序由若干函数组成,其中至少应含有一个________

4、表达式x=6应当读做_______

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 s[80],*sp="HELLO!";

sp=strcpy(s,sp);

s[0]='h';puts(sp);

7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。

a[0]=1;a[1]=2;swap(a,2);

8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、

cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为

_______。

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、设有以下宏定义:

#define WIDTH80

#define LENGTH(WIDTH+40)

则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。二、选择题

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

A.D

B.68

C.不确定的值

D.C

12、下面4个选项中,是不合法的用户标识符的选项是( )。

A.A

B.float

C.b-a

D._123

P_01 a0 goto temp

Do A int INT

13、设x、y和z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x、y 和z的值是()。

A.x=10

B.x=10

C.x=10

D.x=10

y=15 y=10 y=10 y=5

z=10 z=10 z=15 z=10

14、若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是()

A.scanf("%d%lx,%le",&x,&y,&z);

B.scanf("%2d*%d%1f",&x,&y,&z);

C.scanf("%x%*d%o”,&x,&y);

D.scanf("%x%0%6.2f",&x,&y,&z);

15、若有以下程序段:

int a[]={4,0,2,3,1},i,j,t;

for(i=l;i<5;i++)

{t=a[i];j=i-1;

while(j>=0&&t>a[j]

{a[j+1]=a[j];j--;}

a[j+1]=t;

则该程序段的功能是()。

A.对数组a进行插入排序(升序)

B.对数组a进行插入排序(降序)

C.对数组a进行选择排序(升序)

D.对数组a进行选择排序(降序)

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

A.必须在最开始

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

C.可以任意

D.必须在最后

17、下列程序段不是死循环的是()。

A)i nti=100;

while(1)

{i=i%100+1;if(i>100)break;

B.for(;;);

C.int k=0;do{++k;}while(k>=0);

D.int s=36;while(s);--s;

18、C语言规定,简单变量作为实参时,它和对应形参之间的数据传递方式是()

A.地址传递

B.单向值传递

C.由实参传给形参,再由形参传回给实参

D.由用户指定传递方式

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

char pl[]="abcdefgh",*p=pl;

p+=3;

printf("%d\n",strlen(strcpy(p,"ABCD")));

A.8

B.12

C.4

D.7

20、设有以下程序段:

char str[4][10]={first","second","third","fourth"),

*strp[4];int n;

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

strp[n]=str[n];

若k为int型变量且0≤k<4,则对字符串的不正确引用是()。

A.strp

B.str[k]

C.strp[k]

D.*strp

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

#include

int f(int x,int y)

{return(y-x)*x;}

int main()

{int a=3,b=4,c=5,d;

d=f(f(a,C.,f(a,B.+f(c,B.);

printf("%d\n",D.;

return(0);

}

A.-48

B.58

C.-58

D.47

22、对两个数组a和b进行如下初始化:

char a[]="ABCDEF";charb[]={'A','B','C','D','E','F'};则以下叙述正确的是()。

A.a与b数组完全相同

B.a与b长度相同

C.a和b中都存放字符串

D.a的长度比b长

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

aa bb<回车>

ccdd<回车>

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

#include

int main()

{char al[5],a2[5],a3[5],a4[5];

scanf("%s%s",al,a2);

gets(a3);gets(a4);

puts(a1);puts(a2);

puts(a3);puts(a4);

return 0;

}

A)aa B)aa C)aa D)aa bb

bb bb bb cc

cc cc dd dd

cc dd dd ee

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

#include

int main()

{int a,b,d=241;

a=d/100%9;

b=(-1)8&.8&(-1);

printf("%d,%d",a,B.;

return0;

}

A.6,1

B.2,1

C.6,0

D.2,0

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

for(y=1;y<10;)y=((x=3*y,x+1),x-1);

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

A.x=27,y=27

B.x=12,y=13

C.x=15,y=14

D.x=y=27

三、读程序填空

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 n=100;

char c;

float f=10.0;

double x;

x=f*=n/=(c=48);

printf("%d%d%3.1f%3.1f\n",n,c,f,x);

return 0;

}

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

#include

int main()

{intx,y=-2,z=0;

if((z=y)<0)x=4;

else if(y==0)x=5;

else x=6;

printf("\t%d\t%d\n",x,z);

if(z=(y==0))x=5;

x=4;

printf("\t%d\t%d\n",x,z);

if(x=z=y)x=4;

printf("\t%d\t%d\n",x,z);

return 0;

}

29、某服装店经营套服且单件出售。若一次购买不少于50套,则每套80元;若不

足50套,则每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能

是读入所买上衣c和裤子t的件数,计算应付款数m。请填空。

#include

int main()

{int c,t,m;

printf("input the number of coat and trousers you want to buy:\n");

scanf("%d%d",&c,&t);

if(_______)

if(c>=50)m=c*80;else m=c*90;

else if(_______)

if(t>=50)m=t*80+(c-t)*60;

else m=t*90+(c-t)*60;

else if(_______)m=c*80+(t-c)*45;

else m=c*90+(t-c)*45;

printf("%d",m);

return 0

}

30、下面程序的功能是打印100以内个位数为6且能被3整除的所有数。请填空。

#include

int main()

{inti,j;

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

{j=i*10+6;

if(_______)continue;

printf("%d",j);

}

return0;

}

31、以下程序的运行结果是_______,fun函数的作用是_______。

#include

#include

int fun(int y,int x)

{int z;

z=abs(x-y);

return(z);

}

int main()

{int a=-1,b=-5,c;

c=fun(a,b);

printf("%d',c);

return(0);

}

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

#include

int main()

{int a[9]={0,6,12,18,42,44,52,67,94} int x=52,i,n=9,m;

i=n/2+1;

m=n/2;

while(m!=0)

if(x

{i=i-m/2-1;m=m/2;}

else if(x>a[i])

{i=i+m/2+1;m=m/2;}

else break;

printf("The index is:%d\n",i);

return 0;

}

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

#include

void fib(int n,int*s);

int main()

{intx;fib(7,&x);

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

return(0);

void fib(int n,int*s)

{int fl,f2;

if(n==1lin==2)*s=1;

else{fib(n一1,&f1);

fib(n一2,8.f2);

*s=f1+f2;

}

}

四、编程题

34、编写程序实现功能:输入整数a和b,若a2+b2>100,则输出a2+b2百位以上数字,否则直接输出a2+b2的和

35、已有变量定义和函数调用语句int x=57;isprime(x);函数isprime()用来判断一个整型数a是否为素数;若是素数,则函数返回1,否则返回0。请编写isprime函数。

int isprime(int a)

{

}

参考答案

一、填空题

1、$$$

2、函数

3、主函数(或main函数)

4、将常量6赋给变量x

5、13.700000

6、hELLO!

7、【1】a[0]=2a[1]=1

【2】因实参是地址,已对指定地址中的内容进行了交换。

8、【1】scanf("%d%f%f%c%c”,&a,&.b,8.c1,8.c2);【2】3囗6.5囗12.6aA<回车>

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

9、a=3囗b=7x=8.5囗y=71.82c1=ADc2=a<回车>

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

10、2400

二、选择题

11、A

12、C

13、A

14、D

15、B

16、C

17、C

18、B

19、C

20、A

21、A

22、D

23、A

24、B

25、C

三、读程序填空

26、a=+00325囗囗囗x=+3.14159e+00(注:答案中的囗代表空格)

27、24820.020.0

28、4 -2

4 0

4 -2

29、【1】c==t【2】c>1【3】c>=50

30、【1】break【2】i<=10

31、【1】4

【2】计算两个数之差的绝对值,并将差值返回调用函数。

32、The index is:6

33、【1】计算要波拉契级数第七项的值【2】x=13

四、编程题

34、#include

int main()

{int a,b,x,y;

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

x=a*a+b*b;

if(x>100)

{y=x/100;printf("%d",y);}

else printf("%d",a+b);

return 0

}

35、int isprime(int a)

{int i;

for(i=2;i

if(a%i==0)return 0;

return 1;

}

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

2022年河南大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、请读程序段: int a=1,b=2; if(a&b)printf("***\n"); else printf("$$ $\n"); 以上程序段的输出结果是_______。 2、C语言源程序的基本单位是________ 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、表达式x=6应当读做_______ 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 s[80],*sp="HELLO!"; sp=strcpy(s,sp); s[0]='h';puts(sp); 7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。 a[0]=1;a[1]=2;swap(a,2);

8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 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、设有以下宏定义: #define WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。二、选择题

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

2022年成都东软学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、请读程序段: int x=1; printf("%d\n",~x); 上面程序段的输出结果是_______。 2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、在C语言中的实型变量分为两种类型,它们是_______和_______。 5、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为_______。 6、请填空: 建立如图所示存储结构所需的说明语句是_______。 建立如图所示为变量a输入数据的输入语句是_______。 建立如图所示存储结构所需的赋值语句是_______。 7、下面程序段的运行结果是_______。 x=2;

do{printf("*");x--;)while(!x==0); 8、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 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 WIDTH80 #define LENGTH(WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。 二、选择题 11、对应以下各代数式中,若变量a和x均为double类型,则不正确的C语言表达式是( )

2022年河南大学公共课《大学计算机基础》期末试卷A(有答案)

2022年河南大学公共课《大学计算机基础》期末试卷A(有答案) 一、单项选择题 1、下面关于二进制的运算中,错误的是() A.10+01=11 B.11+01=111 C.11-01=10 D.10-01=01 2、与二进制数0111对应的十进制数是() A.5 B.6 C.7 D.8 3、二进制数101101.11对应的十六进制数是() A.2D.3 B.B1.C C.2 D.C D. 4、十六进制数D3.6转换成二进制数是() A. 11010011.011 B. 11100011.110 C. 11000011.110 D. 11000011.011 5、下面是关于计算机病毒的两种论断,经判断(1)计算机病毒也是一种程序,它在某些条件上激活,起干扰破坏作用,并能传染到其他程序中去;(2)计算机病毒只会破坏磁盘上的数据,() A.只有(1)正确 B.只有(2)正确 C. (1)和(2)都正确 D. (1)和(2)都不正确 6、使用拼音输入汉字的编码,属于() A.外码 B.机内码 C.交换码 D.字形码 7、以下可用来连接移动硬盘的接口是() A.LPT

B.机内码 C.VGA D.区位码 8、在已最大化的Windwos窗口中,要阅读窗口中没有显示的内容,可使用窗口的() A.窗口边框 B.滚动条 C.控制菜单 D.还原按钮 9、Windows 7 安装所需最少硬盘容量为() A. 400MB B. 850MB C. 1000MB D. 1200MB 10、Windows 7系统提供了4种桌面图标的排列方式,分别是按:名称、大小,以及 () A.访问频率和最近访问日期排列 B.项目类型和访问频率排列 C.项目类型和修改日期排列 D.项目类型和创建日期排列 11、以下有关Windows 7用户账户管理的叙述中,正确的是() A.新建用户账户时,必须设置账户密码 B.可创建的账户类型有标准用户和管理员两种 C.已创建的用户账户类型不能被更改

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=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。 2、在C语言源程序中,一个变量代表【】。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、在C语言中,用“\”开头的字符序列称为转义字符。转义字符“\n”的功能是_______;转义字符“\r”的功能是_______。 5、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。 6、若有以下定义和语句,在程序中可通过指针数组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]; 7、执行下面程序段后,k的值是_______。 k=1;n=263; do{k*=n%10;n/=10;} while(n); 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、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。 char cl,c2; scanf("%4c%4c",&cl,8&c2); 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、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( )。 A.int B.float C.double D.不确定 12、下面正确的字符常量是( ) A."c" B. "\\" C. 'w' D. " 13、已有如下定义和输入语句,若要求al,a2,c1,c2的值分别为10、20、A和B,当从第一列开始输入数据时,正确的数据输入方式是。(注:口表示空格) int a1,a2; char c1,c2; scanf("%d%c%d%c”, &a1,&c1,&a2,&c2); A.10A□20B<回车> B.10□A□20□B<回车>

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

2022年河北大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x为无符号整数。表达式x^(~(~0< book囗<回车>(囗表示空格),则下面程序段的运行结果是_______。 char al[80],a2[80],*sl=al,*s2=a2; gets(s1);gets(s2); if(!strcmp(sl,s2)) printf("x"); else printf("#"); printf("%d",strlen(strcat(sl,s2)) } 7、下面程序段中循环体的执行次数是_______。

a=10;b=0; do{b+=2;a-=2+b;}while(a>=0); 8、执行以下程序时,若从第一列开始输入数据,为使变量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; } 9、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。 union {int n;doublex;}num; num.n=10; num.x=10.5;

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

2022年成都大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、请读程序段: unsigned a=16; printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。 2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。 5x7+3x6-4x5+2x1+x3-6x2+x+10 5、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。 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、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 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、在C语言中,char型数据在内存中的存储形式是()。 A.补码 B.反码 C.原码 D.ASCII码 12、设有说明语句:char w;intx;float y;double z;则表达式w*x+z-y值的 数据类型为()。 A.float. B.char C.int D.double

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

2022年营口理工学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。 2、一个C语言源程序由若干函数组成,其中至少应含有一个________ 3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数 ________完成的。 4、在C语言的赋值表达式中,赋值号左边必须是_______ 5、若有定义语句:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为_______ 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、下面程序段是找出整数的所有因子。请填空。

scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i); i++; } 8、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。 char cl,c2; scanf("%4c%4c",&cl,8&c2); 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、下面4个选项中,是合法整型常量的选项是( )。 A.160 B.-0xcdf C.-01 D.-0x48a -0xffff 01a 986 0122e5

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

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

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、下面4个选项中,是C语言关键字的选项是( )。 A.auto B. switch C. signed D. if Enum typedef union struct include continue scanf type 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、已知ch是字符型变量,下面不正确的赋值语句是() A.ch='a+b'; B.ch='\o'; C.ch='7'+'9'; D.ch=5+9; 15、下面程序段(每行代码前面的数字表示行号)。

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

2022年武汉东湖学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为_______,n的值为_______。 5、若有定义语句:ints=6;则表达式s%2+(s+1)%2的值为_______ 6、函数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); } 7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。 a[0]=1;a[1]=2;swap(a,2); 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; } 10、在C语言中,二维数组元素在内存中的存放顺序是_______。 二、选择题

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

2022年贵阳人文科技学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。 2、C语言的源程序必须通过【】和【】后,才能被计算机执行。 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。 5、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。 6、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。 7、下面程序段的运行结果是_______。 x=2; do{printf("*");x--;)while(!x==0); 8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=_______;b=a-_______;a-=_______; 9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值 的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 10、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40

则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。 二、选择题 11、下列4组选项中,不是C语言关键字的选项是。() A.define B.getc C.include D.while IF char scanf go Type printf case pow 12、在C语言中,要求运算数必须是整型的运算符是( )。 (A) / B.++ C.!= D.% 13、已有定义inta=-2;和输出语句:printf("%81x”,A.;以下正确的叙述() A.整型变量的输出格式符只有%d一种 B.%x是格式符的一种,它可以适用于任何一种类型的数据 C.%x是格式符的一种,其变量的值按十六进制输出,但%81x是错误的 D.%81x不是错误的格式符,其中数字8规定了输出字段的宽度 14、设x、y均为float型变量,则以下不合法的赋值语句()。 A.++x; B.yy=(x%2)/10; C.x*=y+8; D.x=y=0; 15、对以下定义语句的正确理解是()。 int a[10]={6,7,8,9,10}; A.将6,7,8,9,10依次赋给a[1]~a[5] B.将6,7,8,9,10个初值依次赋给a[o]~a[4] C.将6,7,8,9,10个初值依次赋给a[6]~a[10] D.因为数组长度与初值的个数不相同,所以此初始化语句不正确

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

2022年华东理工大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、在C语言中,&运算符作为单目运算符时表示的是_______运算;作为双目运算符时表示的是_______运算。 2、C语言源程序的基本单位是________ 3、一个C语言源程序由若干函数组成,其中至少应含有一个________ 4、在C语言的赋值表达式中,赋值号左边必须是_______ 5、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。 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=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; } 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、在C语言中,二维数组元素在内存中的存放顺序是_______。 二、选择题 11、下面4个选项中,是不合法的浮点数的选项是( )。 A.160. B.123 C.-18 D.-e3

2022年山西经贸职业学院公共课《C语言》科目期末试卷A(有答案)

2022年山西经贸职业学院公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过 连接后,生成文件的后缀是 2、下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分 是_______,改正后为_______。 void add(float a,float b) {float c; c=a+b; return c; } 3、下面程序段是找出整数的所有因子。请填空。 scanf("%d",&x); i=1;for(;_______;) {if(x%i==0)printf("%3d",i); i++; } 4、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及 相应的格式说明。 union {int n;doublex;}num;

num.n=10; num.x=10.5; printf("_______",_______); 5、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。 struct s{char data; _______ }node; 6、运算符%两侧运算量的数据类型必须都是_______;运算符++和一一的运算量必须是_______。 7、字符串"ab\n\\012\\\"”的长度是_______。 8、以下程序段通过指针变量q,给如图所示连续动态存储单元赋值(在此过程中不能移动q)。请填空。(假设程序段中的所有变量均已正确说明。) _______scanf("%d",q+k); 9、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。请填空。(假设程序段中的所有变量均已正确说明。)

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、请读程序段: unsigned a=16; printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是 _______。 2、结构化程序由________、________ 、________ 3种基本结构组成。 3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过 连接后,生成文件的后缀是 4、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为 _______。 5、设a、b、c均为int类型变量,请用C语言的表达式描述以下命题。 (1)a或b中有一个大于c_______ (2)a、b和c中只有2个为正数_______ (3)c是偶数_______ 6、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。 7、下面程序段的运行结果是_______。 x=2; do{printf("*");x--;)while(!x==0); 8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。

a+=_______;b=a-_______;a-=_______; 9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 10、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。 二、选择题 11、下面4个选项中,是合法整型常量的选项是( )。 A.160 B.-0xcdf C.-01 D.-0x48a -0xffff 01a 986 0122e5 011 0xe 066 80x 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、已有如下定义和输入语句,若要求al,a2,c1,c2的值分别为10、20、A和B,当从第一列开始输入数据时,正确的数据输入方式是。(注:口表示空格) int a1,a2; char c1,c2; scanf("%d%c%d%c”, &a1,&c1,&a2,&c2); A.10A□20B<回车> B.10□A□20□B<回车> C.10A□20B<回车> D.10A20□B<回车> 14、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。

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

2022年河南农业大学公共课《C语言》科目期末试卷A(有答案) 一、填空题 1、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。 2、C语言源程序的基本单位是________ 3、在C语言源程序中,一个变量代表【】。 4、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式 ch='a'+'8'-3'的值为_______。 5、在C语言中,用关键字_______定义单精度实型变量,用关键字_______定义双精度实型变量,用关键字_______定义字符型变量。 6、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。请填空。(假设程序段中的所有变量均已正确说明。) for(k=0;k<10;k++,m++)scanf("%d",_______); 7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。 for(x=0;x<=30;x++) {y=30一x; if(_______)printf("%d,%d\n",x,y); }

8、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。 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、下面程序段将输出computer。请填空。 char c[]="It is a computer"; for(i=0;_______;i++) {_______;printf("%c",c[j]);} 二、选择题 11、下面4个选项中,是不合法的浮点数的选项是( )。 A.160. B.123 C.-18 D.-e3 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、阅读以下程序,当输入数据的形式为25,13,10<回车>,程序的输出结果 #include int main() {int x,y,z; scanf("%d%d%d”,8.x.&y,&z); printf("x+y+z=%d\n",x+y+z); return0;

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

2022年河南职业技术学院公共课《C语言》科目期末试卷B(有答案) 一、填空题 1、C语言源程序的基本单位是________ 2、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素 交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是 _______。 a[0]=1;a[1]=2;swap(a,2); 3、函数swap(int x,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。 a[o]=1;a[1]=2; swap(a[o],a[1]); 4、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数 是_______。 5、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。 6、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为_______。 7、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、 cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为 _______。 8、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型变量)后,v的值是_______。

9、在C语言中,二维数组元素在内存中的存放顺序是_______。 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、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( )。 A.int B.float C.double D.不确定 12、下面4个选项中,是合法转义字符的选项是( )。 A.’\" B. '\ ' C. ' \018' D. '\\o' '\\ ' ' \017' '\f' '\10l' '\n' '\ " ' xab' ' xlf' 13、设有以下程序: #include int main() {int a=201,b=012; printf("%2d,%2d\n",a,B.; return 0; .} 程序执行后的输出结果是()。 A.01,12 B.201,10 C.01,10 D.20,01 14、设有如下程序:

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;

相关主题
相关文档
最新文档