上师大C语言专升本B卷-2009年Word文档格式.doc
- 文档编号:14317792
- 上传时间:2022-10-22
- 格式:DOC
- 页数:12
- 大小:69.50KB
上师大C语言专升本B卷-2009年Word文档格式.doc
《上师大C语言专升本B卷-2009年Word文档格式.doc》由会员分享,可在线阅读,更多相关《上师大C语言专升本B卷-2009年Word文档格式.doc(12页珍藏版)》请在冰豆网上搜索。
if(--m<
4)printf("
%d\n"
m);
elseprintf("
m++);
(A)3
(B)4
(C)5
(D)6
4、在函数调用语句fun(a+b,(x,y),fun(n,m,(a,b)));
中,实参的个数是____3_D_____。
(A)语句有错误
(B)5
(C)4
(D)3
5、已知inta=0,b=8,c=4;
则a||b&
&
!
c的值为___D______。
(A)1
(B)8
(C)6
(D)0
6、下列程序的输出结果是_____C_____。
main()
{floats=2.734;
printf("
%1.2f\n"
s);
(A)2.70
(B)2.7
(C)2.72
(D)2
7、若x=2,y=4,则x>
>
1&
y的结果是____A_D______。
(A)4
(B)2
(C)1
8、当顺利执行了文件关闭操作时,fclose函数的返回值是__D__C_____。
(A)TRUE
(B)-1
(C)0
(D)1
9、若已定义chars[10],则在下面表达式中不表示s[1]的地址是____A_C____。
(A)&
s[0]+1
(B)s+1
(C)s++
(D)&
s[1]
10、下列变量赋值语句中,错误的是______C___。
(A)charc=0x61;
(B)intf=1;
(C)intt=d=a=6;
(D)floata=3;
二、填空题(每小题2分,共40分)
1、编写程序,将1到9这九个数字分成三个三位数,要求:
第2个三位数是第1个三位数的两倍;
第3个三位数是第1个三位数的三倍。
#include<
stdio.h>
inta[9];
intOK(intt,int*s)
{
int*p,*q;
for(p=s;
(1) ;
p++)
{
(2) ;
t=t/10;
for(q=a;
q<
p;
q++)
if(*p==0|| (3) )return(0);
}
}
{intm,count=0;
for(m=123;
m<
=333;
m++)
if(OK(m,a)&
(4) &
(5) )
printf("
NO.%d:
%d%d%d\n"
++count,m,2*m,3*m);
2、下列程序将字符串a复制为字符串b,并输出字符串b。
#include"
string.h"
{chara[]="
ABCDE"
b[20],*p1,*p2;
inti;
(6);
p2=b;
for(;
(7);
p1++,p2++)
*p2=*p1;
(8);
printf("
stringais:
%s\n"
a);
stringbis:
"
);
for(i=0;
b[i]!
='
\0'
;
i++)
printf("
(9)"
b[i]);
\n"
3、有一个已经排好序的数组。
现输入一个数,要求按原来的规律将它插入数组中。
算法如下:
首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
main()
inta[11]={1,4,6,9,13,16,19,28,40,100};
inttemp1,temp2,number,end,i,j;
originalarrayis:
for(i=0;
i<
10;
i++)printf("
%5d"
a[i]);
insertanewnumber:
scanf("
%d"
(10));
end=a[9];
if(number>
end)(11);
else
{
for(i=0;
{
if(a[i]>
number)
{
temp1=a[i];
(12);
for(j=i+1;
j<
11;
j++)
{
temp2=a[j];
(13);
temp1=temp2;
}
break;
}
}
for(i=0;
i++)printf("
%6d"
4、一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如6=1+2+3。
编程找出1000以内的所有完数。
staticintk[10];
inti,j,n,s;
for(j=2;
(14);
n=-1;
s=j;
for(i=1;
j;
if((15))
n++;
(16);
k[n]=i;
if((17))
{
printf("
%disawanshu"
j);
for(i=0;
n;
printf("
%d,"
k[i]);
k[n]);
}
5、输入20个数,输出它们的平均值,输出其中与平均值之差的绝对值为最小的数组元数。
stdio.h"
(18)
voidmain()
{floata[20],pjz=0,s,t,n=5;
inti,k;
for(i=0;
i++){(19)}
pjz=pjz/n;
s=fabs(a[0]-pjz);
for(i=1;
i++)if(fabs(a[i]-pjz)<
s){s=fabs(a[i]-pjz);
(20);
}
%f"
t);
三、请写出以下程序的运行结果。
(每小题5分,共40分)
1、下面程序若输入12345,求输出。
intn,x=0,t,i;
scanf(“%d”,&
n);
do{
t=n%16;
x=x*10+t;
}while(n/=16);
printf(“%d”,x);
2、下面程序,若从键盘输入3,求输出。
#defineN10
inta[N][N],k,i,j,n;
scanf("
&
for(k=n;
k>
=1;
k--){
for(i=0,j=k-1;
i++,j++)
a[i][j]=k;
for(j=0,i=n+1-k;
a[i][j]=k;
for(j=0;
j++){
for(i=0;
printf("
%4d"
a[i][j]);
printf("
3、main()
{inta[10],b[10],*pa,*pb,i;
pa=a;
pb=b;
3;
i++,pa++,pb++)
{*pa=i;
*pb=2*i;
printf("
%d\t%d\n"
*pa,*pb);
pa=&
a[0];
pb=&
b[0];
{*pa=*pa+i;
*pb=*pb*i;
*pa++,*pb++);
4、#include<
intc=5;
f(inta)
staticintb;
b=a-c;
c++;
return(a+b+c);
inta=2,i;
4;
f(i));
5、设程序运行时,从键盘输入21034<
回车>
voidmain()
{charch,p[20];
inti=0;
while((ch=getchar())!
\n'
){
switch(ch){
case'
3'
:
2'
p[i++]=ch;
1'
break;
0'
default:
p[i++]=ch+1;
p[i]='
%s\n"
p);
6、#include<
intfunc(intx[],intn)
intlen=1,t;
for(t=1;
t<
t++)
if(x[t]==x[t-len]) len++;
returnlen;
voidmain(){
inta[10]={1,2,3,7,7,10,4,6,5,9};
printf("
func(a,10));
7、#include<
intage(intn)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 师大 语言 2009
![提示](https://static.bdocx.com/images/bang_tan.gif)