1 / 8
文档名称:

IASKC语言程序设计期末考试试卷及1.doc

格式:doc   大小:64KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

IASKC语言程序设计期末考试试卷及1.doc

上传人:雨林书屋 2022/12/1 文件大小:64 KB

下载得到文件列表

IASKC语言程序设计期末考试试卷及1.doc

文档介绍

文档介绍:该【IASKC语言程序设计期末考试试卷及1 】是由【雨林书屋】上传分享,文档一共【8】页,该文档可以免费在线阅读,需要了解更多关于【IASKC语言程序设计期末考试试卷及1 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。语言程序设计期末考试一试卷及答案一、单项选择题

A、b-bB、floatC、<fr>D、_isw
,表达式___B___不符合C语语言法。
A、a*b/c;B、%2C、2,bD、a/b/c

A、'n'
B、'1'
C、"a"
D、'101'
4.
在C程序中,用___B__表示逻辑值“真”。
A、1
B、非0的数
C、非1的数
D、大于
0的数
5.
__C____把x、y定义成float种类变量,。
A、floatx,y=;
B、floatx,y=2*;
C、floatx=,y=x=;
D、floatx=y=;
6.
若变量已正确立义,表达式___C___的值不是2。
A、2&3
B、1<<1
C、a==2
D、1^3
7.
若变量已正确立义,语句“if(a>b)k=0;elsek=1;”和__C____等价。
A、k=(a>b)?1:0;
B、k=a>b;
C、k=a<=b;
D、a<=b?0:1;
8.
设变量定义为“inta,b;”,履行以下语句时,输入_D____,则a和b
的值都是10。
scanf("a=%d,b=%d",&a,&b);
A、1010B、10,10C、a=10b=10D、a=10,b=10

fun(inta,intb,intc)
{c=a*b;}
voidmain( )
{intc;
fun(2,3,c);
printf(”%dn”,c);
}
A、0B、1C、6D、没法确立
在C程序中,若对函数种类未加说明,则函数的隐含种类为__A___。
A、intB、doubleC、voidD、char
表达式strlen(”hello”)的值是___B____。
A、4B、5C、6D、7
设变量定义为“inta[4];”,则表达式__D____不符合C语语言法。
A、*aB、a[0]C、aD、a++
设变量定义为“intx,*p=&x;”,则&*p相当于__A___。
A、pB、*pC、xD、*&x
若变量已正确立义,_A___不可以使指针p成为空指针。
A、p=EOFB、p=0C、p=’’D、p=NULL
关于以下的变量定义,表达式__D____不符合C语语言法。
structnode{
intlen;
char*pk;
}x={2,"right"},*p=&x;
A、p->pkB、*、*p->pkD、*
有以下程序
intrunc(inta,intb)
{return(a+b);}main0
{intx=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r);
}
该程序的输出的结果是(D)
12B)13C)14D)15
关于基种类同样的两个指针变量之间,不可以进行的运算是(C)
<B)=C)+D)-
有以下程序
longfib(intn)
{if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);
}
main0
{printf(“%d\n”,fib(3));
该程序的输出结果是(B)A}2B}4C}6D}8
有以下定义
structperson{charname[9];intage;};
strictpersonclass[10]={“Johu”,17,
“Paul”,19“Mary”,18,“Adam16,};
依据上述定义,能输出字母M的语句是(D)A)prinft(“%c\n”,class[3].mane);
B)pfintf(“%c\n”,class[3].name[1]);C)prinft(“%c\n”,class[2].name[1]);D)printf(“%^c\n”,class[2].name[0]);
以下所列的C语言常量中,错误的选项是(B)
0xFFB))2LD)‘\72’
有以下程序段
intk=0
while(k=1)k++;
while循环履行的次数是(A)
A)无穷次B)有语法错,不可以履行
一次也不履行D)履行1次
以下程序的输出结果是(C)
0B)29C)31D)无定值fun(intx,inty,intz)
{z=x*x+y*y;}main( )
{inta=31;fun(5,2,a);printf(“%d”,a);
}
以下程序段的输出结果是(A)
2143B)1212C)1234D)2112voidfun(int*x,int*y)
{printf(“%d%d”,*x,*y);*x=3;*y=4;}main( )
{intx=1,y=2;
fun(&y,&x);
printf(“%d%d”,x,y);
}
,实参是一个数组名,则向函数传递的是(B)
数组的长度B)数组的首地点
数组每一个元素的地点D)数组每个元素中的值
以下程序的输出结果是(A)
1B)2C)3D)4
longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
returns;
}
main( )
{printf(“%ld\n”,fun(3));}
以下程序的输出结果是(B)A)16B)2C)9D)1#defineSQR(X)X*Xmain( )
{inta=16,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf(“d\n”,a);
}
以下函数返回a所指数组中最小的值所在的下标值fun(int*a,intn)
{inti,j=0,p;
p=j;
for(i=j;i<N;I++)
if(a[i]<A[P])__________;
return(p);
}
在下划线处应填入的是(D)
A)i=pB)a[p]=a[i]C)p=jD)p=i
二、填空题
表示“x≥y≥z”的C表达式是___x>=y&&y>=z____。
以下程序段的输出是__1____。
printf("%on",010<<1^1);
以下程序段的输出是__6,90____。
intk;
floats;
for(k=0,s=0;k<7;k++)
s+=k/2;
printf("%d,%fn",k,s);
以下程序段的输出是__5,25_____。
#definef(a,b,x)a*x+b
printf("%d,%dn",f(3,2,1),f(6,5,f(3,2,1)));
以下程序段的输出是_*#*#____。
main( )
{intk;
for(k=1;k<5;k++){
if(k%2)printf("*");
elsecontinue;
printf("#");
}
}
以下程序段的输出是__58___。
include<>intf(intx)
{staticy=1;y++;
x+=y;
returnx;
}
voidmain( )
{intk;k=f(3);
printf("%d%dn",k,f(k));
}
以下程序段的输出是___5__。
int*p,*q,k=5,j=6;
q=&k;p=q;q=&j;
printf("%d",*p);
函数
voidf(chars[],chart[])
{intk=0;
while(s[k]=t[k])k++;
}
等价于
voidf(char*s,char*t)
{while(_*s++=*t++____);
}
以下程序段的输出是_ne,s____。
char*a[2]={"one","two"},p=a;
printf("%s,",*(p++)+1);
printf("%cn",p-1);
,运转tinputoutputzoooil的输出结果是__zoo___。
voidmain(intargc,char*argv[])
{intk;
char*p=argv[1];for(k=2;k<argc;k++)
if(strcmp(argv[k],p)>0)p=argv[k];
printf("%sn",p);
}
以下程序调用swap函数互换a和b的值,并输出互换后的a和b的值。程序的输出结果是:Afterswap5,3。
voidmain( )
{inta=3,b=5;
swap(&a,&b);
printf("Afterswap%d,%d",a,b);
}
swap(int*p,int*q)
{intt;
t=*p;;
*p=*q;
*q=t;
}