C语言程序设计模拟试题2(附答案)new

  • 格式:doc
  • 大小:71.50 KB
  • 文档页数:20

下载文档原格式

  / 20
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》模拟试卷二

一、填空题。(每空2分,共30分)

1.设有变量说明语句

int x=1,y=2;

则执行下述printf语句的输出结果是______ _____。

printf("%f\n",1.0+x/y);

2.执行下述程序

#include

main()

{

int x,y;

scanf("%2d%*2s%1d",&x,&y);

printf("%d\n",x+y);

}

若从键盘输入

12345671

则程序的输出结果是________。

3.以下程序的功能是:从键盘上输入若干名学生的成绩(百分制,可带小数,以输入负数或0为结束标志),统计并输出最高成绩和最低成绩。请填空。

#include

main()

{

float x,amax,amin;

scanf("%f",&x);

amax=x;

amin=x;

while ( )

{

if (x>amax)

amax=x;

else if (x

amin=x;

scanf("%f',&x);

}

printf("\namax=%f\namin=%f\n",amax,amin);

}

4.设n 是整型变量,且已具有某正整数值。根据下述数学式

1

114131312121+⋅++⋅+⋅+n n 求s 的值并输出。 可编写如下之程序段实现之。请填空。

int k;

double s,d;

s=0.0;

d=1.0;

K=0;

do

{

s=s+d; ___ _________;

d=1.0/(k*(k+1));

} while (k<=n);

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

5.执行下述程序的输出结果是____ ____。

#inclued

main()

{

int a[6],i;

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

{

a[i]=9*(i-2+4*(i>3))%5;

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

}

printf("\n");

}

6.执行下述程序时的输出结果是_________ ________。

#include

main()

{

int a[]={2,4,6,},*ptr=&a[0],x=8,y,z;

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

z=(*(ptr+y)

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

}

7.执行下述程序的输出结果是_____ _______。

#include

main()

{

int a[][2]={10,20,30,40,50,60},(*p)[2];

p=a;

printf("%d\n",*(*(p+2)+1));

}

8.执行以下程序的输出结果是___ ______。

#include

main()

{

int s,i,sum();

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

s=sum(i);

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

}

sum(int k)

{

int x=0;

return (x+=k);

}

9.下述函数定义用来求出两个整数之和,并通过函数的模拟传地址调用,传回两整数相加之和值,请填空。

void add(int x,int y,____ ___)

{

*z=x+y;

}

10.函数func的功能是将整型变量x的值转换成二进制数,并将该二进制数的每一位存入由整型指针b所指向的一维数组a,最低位存放于a[0]中,次低位存放于a[1]中,依此类推。请填空。 void func(int x,int *b)

{

int r;

do

{

r=x%2;

_____________=r;

x/=2;

} while (x);

}

11.以下程序中函数invert实现将数组内所有数组元素的值逆置。比如,执行本程序将输出 10 9 8 7 6 5 4 3 2 1

请填空。

#include

main()

{

int a[10]={1,2,3,4,5,6,7,8,9,10},i,n=10;

invert(a,n-1);

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

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

printf("\n");

}

invert(int *s,int num)

{

int *t,k;

t=s+num;

while (____ ________)

{

k=*s;

*s=*t;

*t=k;

s++;

t--;

}

}

12.若有以下定义和说明,则结构体变量w在内存中所占的字节数是_____

union aa

{

float x;