2013-2014第一学期c语言程序设计期末考试试题 下载本文

A.只能是0或1 B.只能是0或非0正数 C.只能是整形或字符型数据 D.可以是任何类型的数据。 二填空题

1. 若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是__1__ 2. 若有以下定义和语句:int a[4]={0,1,2,3},*p;p=&a[1];则++(*p)的值是__2__ 3. 语句 for(i=1;i==10;i++) if(i%5==0) break; 循环次数是_0__ 4. 若有以下程序段

int a[5]={2,4,6,8,10},*p,k; p=&a[2]; k=*(p--);

则程序段执行后k的值为__4___

5.以下程序的功能是计算1*2*3+3*4*5+5*6*7+…+99*100*101 请填空 main() {

int i,sum=0; for(i=1;i<=99;)

5 / 13

sum=sum+i*(i++)*(i++); printf(“%d\\n”,sum); } }

5. 下面程序的功能是统计0至9之间的不同的数字组成的三位数的个数 main() {

int i,j,k,count=0; for(i=1;i<=9;i++) for(j=0;j<=9;j++) if(i==j)

continue; else

for(k=0;k<=9;k++)

if(k!=i&&k!=j)

count++;

printf(“%d\\n”,count); }

三、写程序的运行结果 1.void fun(int *a,int *b) {

6 / 13

int *k; k=a;a=b;b=k; } main() {

int a=3,b=6,*x=&a,*y=&b; fun(x,y);

printf(“%d,%d\\n”,a,b); }

结果为3,6 2.f(int n) {

float r; r=n/2.0; return r; } main() {

float x; x=f(3);

printf(“%3.1f\\n”,x); }

7 / 13

结果1.0 3.main() {

int i,b,k=0; for(i=1;i<=5;i++) { b=i%2; while(b>=0) { k++; b--; }; }

printf(“%d,%d\\n”,k,b); } 结果8,-1 4,

void func(int a) {

static int m=1; m+=a;

printf(“%d\\n”,m);

8 / 13