黑龙江科技大学2022年C语言程序设计

本试卷为黑龙江科技大学2022年C语言程序设计,题目包括:填空题。

本卷包括如下题型:

一、填空题

C语言程序设计

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

1、若a和b 均为int 型变量,则以下语句的功能是________。 a+=b; b=a-b; a-=b;
2、逻辑运算符"&&、||、 !"中的优先级是________。
3、在c语言中,二维数组元素在内存的存放顺序是________.
4、下面是实现打印九九乘法表的程序,请在画线的位置填上适当的语句,使程序(段)完整。
main()
{
int i , j , k;
for(i=1; ________; i++)
{
for(j=1; ________; j++) printf("%d*%d=%d", ________);
printf("\n");
}
}
5、设a=12,a定义为整型变量,表达式a*=2+3的值为________。
6、c语言变量按其作用域分为 全局变量和局部变量。按其生存期分为________存储 和________存储 。
7、下面程序的运行结果是:________。
fun(int t[],int n)
{
int i,m;
if(n==1)return t[0];
else if(n>=2)
{
m=fun(t,n-1);
return m;
}
}
main()
{
int a[]={11,4,6,3,8,2,3,5,9,2};
printf("%d\n",fun(a,10));
}
8、有以下程序
#include <stdio.h>
main()
{
char a[20]="how are you?",b[20];
scanf("%s",b);
printf("%s %s\n",a,b);
}
程序运行时从键盘输入: how are you?<回车> 则输出结果为 ________。
9、表达式7+10>2 && 25 %5的结果是 ________ 。
10、结构化程序设计的3种基本结构是:顺序结构、_______结构、循环结构,这三种基本结构构成了复杂的c语言程序。
11、在c语言中,数组元素的下标从__________开始的。
12、全局变量又称外部变量,是在函数______定义的变量。
13、执行下列程序段后,输出的a的值是_____________。
main( )
{
int a = 0;
switch(a)
{
case 0: a--;
break;
case 1: a++;
break;
case 2: a=a+5;
break
}
printf("%d",a);
}
14、有以下程序
#include <string.h>
main()
{
char a[]={'a','b','c','d','e','f','\0'};
int j;
j=strlen(a);
printf("%d\n",j);
}
程序运行后的输出结果是______。
15、一个3位的二进制数能表示几个数?
16、字母'a'的ascii码值为多少()
17、静态存储的变量是在( )时分配存储单元并赋初值,在程序整个运行期间都不被释放。
18、在c语言中,如果采用printf函数将整个字符串一次输出,那么对应的格式控制符为"( )"。
19、已知char str[]="happy!",则strlen(str)的值为________。
20、下列程序段的运行结果是________。
main()
{
int i=1,s=0;
for( ; ; )
{
s=s+i ;
i++;
if(i>4) break ;
}
printf("%d\n",s);
}
21、下列程序段的运行结果是________。
main()
{
int n,s=0 ;
for(n=1; n<=5; n++)
{
if(n%2==0) continue;
s=s+n;
}
printf("%d\n", s);
}
22、如果一个变量要在一个程序中的所有函数都能共享,则应该定义成为________。
23、下列程序段的运行结果是________。
main()
{
int a=5,b=6,c;
int sub(int , int);
c=sub(a , b);
printf("%d\n",c);
}
int sub( int x , int y )
{
int z;
z=x-y;
return z ;
}
24、下列程序段的运行结果是________。
void fun()
{
int a=3;
}
main()
{
int a=1;
fun(- );
printf("a=%d",a);
}
25、main()
{
int a[5]={2,4,6,8,10},*p,* *k;
p=a;
k=&p;
printf("%d,",*(p++));
printf("%d\n",* *k);
}
程序的输出结果是________。
26、写出下列程序的运行结果。
fun(int a, int b)
{
if(a>b) return (a);
else return (b);
}
main()
{
int x=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
printf("%d\n",r);
}
27、写出下列程序的运行结果。
#include "stdio.h"
main()
{
int a[]={1,2,3,-4,5};
int m,n,*p;
p=&a[0];
m=*(p+1);
n=*(p+4);
printf("%d %d %d ",*p,m,n);
}
28、下列程序段的运行结果是________。
#define MIN(x , y) x<y? x : y
main()
{
int a , b , min;
A=10, b=11;
Min=MIN(a,b);
printf("min=%d\n" , min);
}
29、在c 语言中的实型变量分为两种类型,它们是________和________。
30、在c 语言中,二维数组在内存中的存放顺序是________。
31、下面程序的运行结果是________。
main()
{
int a[5][5],i,j,n=1;
for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=n++;
printf("the result is:\n");
for(i=0;i<5;i++)
{
for(j=0;j<=i;j++)printf("%4d",a[i][j]);
printf("\n");
}
}
32、下面程序的运行结果是________。
main()
{
int i,f[10];
f[0]=f[1]=1;
for(i=2;i<10;i++)f[i]=f[i-2]+f[i-1];
for(i=0;i<10;i++)
{
if(i%4==0) printf("\n");
printf("%3d",f[i]);
}
}
33、下面程序的输出结果是:
#include <stdio.h>
void add(int *p, int n)
{
int *pend = p + n;
for( ; p<pend; p++) *p += 10;
}
void main( )
{
int a[5]={1,2,3,4,5}, *q = a;
add(q, 5);
for(q=a; q < a+5; q++) printf("%4d", *q);
}
34、C程序的运行需要经过______和链接两步进行。
35、构成数组的各个元素必须具有相同的______。
36、函数的形参在未被调用前不分配空间,函数形参的____要和实参相同。
37、一个C程序有且仅有一个______函数。
38、有如下函数头: int max(int i,int j),则此函数有______个参数。
39、在函数中使用______语句返回值。
40、指针是存放______的变量。