安徽理工大学历年C语言程序设计专升本

本试卷为安徽理工大学历年C语言程序设计专升本,题目包括:填空题。

本卷包括如下题型:

一、填空题

C语言程序设计专升本

一、填空题 (共40题,每题2.5分,共计100分)

1、在c语言中,格式输入库函数为________,格式输出库函数为________。
2、&& 0 || 2的值为________。
3、已知字母a的ascii码为65。以下程序运行后的输出结果是 ________ 。
main()
{
char a, b;
a='a'+'5'-'3';
b=a+'6'-'2' ;
printf("%d %c\n", a, b);
}
4、以下程序的功能是:将值为三位正整数的变量x 中的数值按照个位.十位、百位的顺序拆 分并输出。请填空。
#include<stdio.h>
main()
{
int x=256;
printf("%d-%d-%d\n", ________,x/10%10,x/100);
}
5、以下程序中给指针p分配三个double型动态内存单元,请填空。
#include <stdlib.h>
main ( )
{
double *p;
p=(double *) malloc( ________);
p[0]=1.5;
p[1]=2.5;
p[2]=3.5;
printf("%f%f%f\n",p[0],p[1],p[2]);
}
6、以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9-10,并输出结果。请填空。
int fun( int n)
{
int m=0,f=1,i;
for(i=1; i<=n; i++)
{
m+=i*f;
f= ________ ;
}
return m;
}
main()
{
printf("m=%d\n", ________ );
}
7、以下程序中,select 函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。
#define N 3
#define M 3 select(int a[N][M],int *n)
{
int i,j,row=1,colum=1;
for(i=0;i<N;i++) for(j=0;j<M;j++) if(a[i][j]>a[row][colum])
{
row=i;
colum=j;
}
*n= ________;
return ________;
}
main()
{
int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
max=select(a,&n);
printf("max=%d,line=%d\n",max,n);
}
8、执行以下程序时输入1234567<cr>,则输出结果是____ 。
#include <stdio.h>
main()
{
int a=1,b;
scanf("%2d%2d",&a,&b);
printf("%d %d\n",a,b)
}
9、c语言约定用____________作为字符串的结束标志。
10、若i为整型变量,且i%2==0的值为1,则变量i为________数。
11、以下程序的输出结果是________。
main ( )
{
if(2*2==5<2*2==4) printf("t");
else printf("f");
}
12、有以下程序
#include < stdio.h >
main()
{
int m,n;
scanf("%d%d",&m,&n);
while (m!=n)
{
while(m>n) m=m-n;
while(m<n)n=n-m;
}
printf("%d\n",m);
}
程序运行后,当输入14 63<回车>时,输出结果是________。
13、下面程序的运行结果是: ________
int f( int a[], int n)
{
if(n>1) return a[0]+f(&a[1],n-1);
else return a[0];
}
main ( )
{
int aa[3]={1,2,3},s;
s=f(&aa[0],3);
printf("%d\n",s);
}
14、设有如下宏定义
#define MYSWAP(z,x,y)
{
z=x;
x=y;
y=z;
}
以下程序段通过宏调用实现变量a、b内容交换,请填空。 float a=5,b=16,c;
MYSWAP( ________ ,a,b);
15、编译预处理包括宏定义、______、条件编译等。
16、下列程序段的运行结果是_____。
char s1[20]="abcdef", s2[5]="abc";
strcpy(s1,s2);
printf("%c", s1[0]);
17、struct
{
int x;
char *y;
}
tab=
{
1,
"ab"
},*p=tab;
则:表达式p->x的结果为【1】。
18、读取文件的函数名是【1】。
19、ferror函数用来检测文件读写时是否发生错误,若未发生读写错误,则返回值是________。
20、实参与形参占用独立的(   )
21、以下程序的输出结果为________。
main()
{
char m ,n ;
m=getchar();
/*(输入d)*/n=m-34;
printf("%c",n);
}
22、源程序的基本单位是【】。
23、在c语言中,对一维整型数组初始化时如果只给一部分元素赋初值,那么其他元素值均为________。
24、局部变量又称内部变量,是在函数( )定义的变量。
25、#include <stdio.h>
void main()
{
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for (i=1;i<3;i++) for (j=0;j<i;j++) s+=a[i][j];
printf("%d\n",s);
}
26、字符读写函数( )是用于把一个字符写入磁盘文件。
27、c程序是由函数构成的,其中必须有且只有一个______函数。
28、在c语言中,可以用/*…*/对c程序中的任何部分作______。
29、下列程序段的运行结果是_____。
struct student
{
long num;
char name[20];
char sex;
float score;
}
a={1021103,"jiang ping",'m',85.5};
main( )
{
printf("%ld\n",a.num);
}
30、在c语言中,'\n'表示________。
31、输入求数组有几个元素的语句(arr,size)
32、C语言替换字符的函数是什么?
33、c语言中字符()以存在计算机中,整数以()储存在计算机中
34、以下程序的运行结果是_____________。
main( )
{
int k, s ,a[3][3]={1,2,3,4,5,6,7,8,9};
s=0;
for( k=0; k<3; k++)s=s+ a[k][k];
printf("%d,",s);
}
35、改正下列程序中不正确的语句。
main()
{
int n ;
float s=1.0;
for(n=10;n>1;n--) s=s+1/n;
printf("%6.1f\n",s);
}
36、以下程序在输入5,2之后的执行结果是________。
#include<stdio.h>
void main()
{
int s,t,a,b;
scanf("%d,%d",&a,&b);
s=1;
t=1;
if(a>0) s=s+1;
if(a>b) t=s+t;
else if(a==b) t=5;
else t=2*s;
printf("s=%d,t=%d\n",s,t);
}
37、以下程序对输入的一个小写字母,将字母循环后移5个位置后输出。如‘a’变成‘f’,‘w’变成‘b’。请在 内填入正确的内容。
#include <stdio.h>
void main()
{
char c;
c=getchar();
if(c>=’a’&&c<=’u’) ;
else if(c>=’v’&&c<=’z’) ;
putchar(c);
}
38、当执行以下程序时,如果输入abc,则输出结果是:
#include <stdio.h>
#include <string.h>
void main()
{
char ss[10]="1,2,3,4,5";
gets(ss);
strcat(ss,"6789");
printf("%s\n",ss);
}
39、C语言提供的三种逻辑运算符是______。
40、C语言源程序经过编译后,生成文件的后缀名是 ___。