2019春C语言试卷 A

发布 2021-04-23 14:23:28 阅读 5455

杭州电子科技大学学生考试卷( a )卷。

说明: 请将全部答案都书写在最后页答题纸上,否则答题无效。

考试结束后请将试卷与答题纸分开一起交上来。

试题。一、单选题,根据题目从a、b、c、d中选择一个正确的选项(每小题1分,共13分)

1. 设:int x=17,y=5;,执行语句“x%=x–y”后x的值是()。

a. -5 b. 5 c. 2 d. 3

2.下面程序的输出是()。

#include<>

void main()

int x=5,y=2;

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

a. 0.4 b. 2.5 c. 2 d. 不确定的值。

3. 设int a=2;,表达式“a%2!=0”的值为

a. 真 b. 假 c. 1 d. 0

4. 假设变量x,y,f都是整型变量,且x,y已赋值,下面能正确输出|x-y|值的程序段是:

a.if(y>x)

f=y-x;

elsef=x-y;

printf("%d",f);

b.if(y>x)

f=y-x;

printf("%d",f);

elsef=x-y;

printf("%d",f);

c.if(y>x)

f=y-x;

printf("%d",f);

else{ f=x-y;

printf("%d",f);

d.if(y>x)

f=y-x;

else f=x-y;

printf("%d",f);

5.下面程序是在主函数中输入两个实数,通过调用max函数求最大值。其中语句a正确的是()。

float max(float x, float y )

float z;

z=x>y? x : y;

return(z);

void main()

float a,b;

float m;

scanf("%f%f",&a,&b);

语句a;printf("%f",m);

a、 m=max( float a, float b); b、 m=max(a,b);

c、 max(a,bd、 m=float max( a, b);

6.要为字符型变量a赋初值,下列语句中哪一个是正确的( )

a、char a=%;b、char a="k"; c、char a='3'; d、char a=*;

7.下列各语句定义数组,其中哪一个是不正确的( )

a、char a[3][10]=;

b、int x[2][2]=;

c、int m[3]=;

d、float x[2]

8. 若有float a=1.5,b=3.5, *pa=&a; *pa*=3;pa=&b; 则正确的选项是( )

a、pa的值是1.5 b、*pa的值是4.5 c、pa的值是3.5 d、*pa的值是3.5

9. 下面程序段for循环的执行次数( )

int a,b=6,k;

for(k=0,a=0;a k++;

a、6次 b、 2次 c、4次 d、 3次。

10.执行下面程序后的输出结果是( )

#include<>

void main( )

int a=1,b=1;

a=b++;

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

a、1, 2 b、 1, 1 c、2, 1 d、 2, 2

11. 判断char型变量c为数字字符的正确表达式为( )

a、'0'<=c<='9b、c>='0'||c<='9'

c、 '0'<=c&&c<='9' d、 c>=0&&c<=9

12.有数组定义语句“char a[20];”则能正确输入字符串到数组a中的语句为()

a、gets(ab、scanf("%s", a)

c、scanf("%s", ad、gets(a[20]);

13.break语句可以用在( )

a、switch和循环语句中 b、循环语句中 c、switch语句中 d、所有语句中。

试题。二、程序阅读,回答问题(每个小问题3分,共27分)

#include <>

void main()

int i, m;

scanf("%d", m);

for(i = 2; i<=m/2; i++)

printf("%d#", i

问题1。运行时输入9,写出运行结果。

#include<>

int cal(int d1,int d2,char p)

if(p=='return (d1*d2);

else return(d1+d2);

void main()

int a,b,c,r;

char op1,op2;

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

if(op1=='op2=='

r=cal(a,cal(b,c,op2),op1);

else r=cal(cal(a,b,op1),c,op2);

printf("%d",r);

问题2。运行时输入4+5*3,写出运行结果。

#include<>

void f1(int q,int *p)

*p=(*p)+(p);

q=q*q;

void main()

int a,b;

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

f1(a,&b);

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

问题3。运行时输入9 3,写出运行结果。

#include<>

void main()

int a[4][4],s,i,j ;

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

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

a[i][j]=2*i+j+1;

for(i=0;i<4;i输出1

for(i=0;i<4;i++)输出 2

s=0;for(j=0;j<4;j++)

s=s+a[j][i];

printf("%d ",s);

问题4。写出运行后输出1 的这部分内容。

问题5。写出运行后输出2 的这部分内容。

#include<>

void fun (int *a,int n,int x)

int j;

for(j=0; ja+j)=x;

void main()

int a[7]=,i;

fun(a,7,6); 第11行。

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

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

问题6。写出运行结果。

问题7。将第11行改为“fun(a+2,5,6); 写出程序运行结果。

#include<>

void fun1(int a,int n)

int j,k,t;

k=0;for(j=1; j if(a[k]>a[j]) k=j;

t=a[k];

a[k]=a[n-1];

a[n-1]=t;

void fun2(int a,int n)

int i,j,k,t;

for(i=0;i

void main()

int a[7]=,i;

fun1(a,7);

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

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

问题8。写出运行结果。

问题9。主函数中函数调用语句“fun1(a,7)”改为fun2(a,7); 写出运行结果。

试题。四、程序填空。根据程序功能,填空完成程序所规定的功能(共30分,每空2分)

1.程序功能:输入一个正整数n,计算并输出s的前n项和。

s=1-1/3+1/5-1/7+1/9+..

程序:#include<>

void main()

double s=0,t,j=1;

int i,n,f=1

scanf("%d",&n);

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

{ t=f*1.0/j;

c语言 2019春C语言上机试卷C04答案

20xx年春二级c语言上机试卷 试卷代号c04 答案。一 改错题 16分 程序功能 由一个取值在0 32767范围内的正整数x生成一个由十六进制数字字符组成的字符串。生成规则如下 设x的质因数分解式为qnr n qn 1r n 1 q2r 2 q1r 1 其中q1代表质数2,q2代表q1之后的下一个...

2023年春C语言作业

以下选项中属于c语言的数据类型是 d a.复数型。b.逻辑型。c.集合型。d.双精度型。c语言中的标示符只能由字母 数字和下划线三种字符组成,且第一个字符 c a.必须是字母。b.必须是下划线。c.必须是字母或下划线。d.可以是字母或数字或下划线中的任意一种。下面四个选项当中,均是关键字的是 b a...

2019C语言试卷C

大连职业技术学院。2010 2011 学年第一学期。c语言程序设计试卷 c 本试卷共 5 页,计六道大题 答题说明 1 考生必须写清答题纸上要求填写的考试科目 系别 班级 姓名 考号等项内容 2 考生必须依照题签上的题目顺序,在答题纸上写清题号,按顺序答题。一 单项选择题 本大题共10小题,每小题1...