内容正文:
上高职业技术学校2021-2022学年度下学期
《C语言程序设计基础》期末考试 试卷
题 序
一
二
三
四
五
总 分
得 分
班级: 姓名: 学号:
选择题(每题3分,共45分)
C语言可执行程序的开始执行点是 (C )
A、 程序中第-条可执行语句
B、 程序中第-个函数
C、 程序中的main函数
D、 包含文件中的第-个函数
-个完整的C源程序是 ( B )
A、要由-个主函数(或)-个以上的非主函数构成
B、由-个且仅由-个主函数和零个以上(含零)的非主函数构成
C、要由-个主函数和-个以上的非主函数构成
D、由-个且只有-个主函数或多个非主函数构成
在C语言中,1维数组的定义方式为: 类型说说明符数组名 ( A )
A、 [常量表达式] B、 [整形表达式]
C、[ 整型常量]或[整型表达式] D、[整型常量]
在说明语句:int *f();中,标识符f代表的是 ( D )
A、 -个用于指向整型数据的指针变量
B、 -个用于指向-维数组的行指针
C、 -个用于指向函数的指针变量
D、 -个返回值为指针型的函数名
对于基类型相同的两个指针变量之间,不能进行的运算是 ( C )
A、 < B、 = C、 + D、 -
面程序段的运行结果是 ( B )
if (n=0);
while(n++<=2); printf(""%d"",n);
A) 2 B、 3 C、 4 D、有语法错
C语言中,运算对象必须是整型数的运算符是 ( A )
A、 % B、 \
C、 %和\ D、 * *
下列可作为C语言赋值语句的是 ( C )
A、x=3,y=5 B、a=b=6
C、i--; D、y=int(x);
以下选项中不能用作C程序合法常量的是 ( A )
A、1,234 B、’\123’
C、123 D、"\x7G”
以下程序的输出结果是 ( A )
main()
{ char c='z';
printf(""%c"",c-25);
}
A、 a B、 Z C、 z-25 D、 y
x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是 ( B )
A. input x,y,z;
B. scanf(""%d%d%d"",&x,&y,&z);
C. scanf(""%d%d%d"",x,y,z);
D. read(""%d%d%d"",&x,&y,&z);
以下程序的输出结果是 ( D )
main( )
{ int a=-1,b=4,k;
k=(++a<0)&&!(b--<=0);
printf(""%d%d%d
"",k,a,B、; }
A.104 B、 103 C、 003 D、 004
以下程序段:
int x=12;
double y=3.141593;
printf(”%d%8。6f
”,x,y);
执行后的输出结果是 ( A )
A、123。141593 B、12 3.141593
C、12,3.151993 D、123.1415930
以下程序段的输出结果是 ( A )
char s[]=""\\141\141abc\t"";
printf (""%d
"",strlen(s));
A、 9 B、 12 C、 13 D、 14
"设有以下宏定义,则执行语句:z=2*(N+Y(5+1));后,z的值为 ( C )
#define N 3
#define Y(n) ( (N+1)*n)
A、 出错 B、 42
C、 48 D、 54
填空题(每题2分,共10分)
模块化程序设计的思路是 自顶而下,逐步细化 。在C语言中实现程序化模块的工具是 函数 。
执行语句: for (i=1;i++<4;);后,变量i的值是 5 。
定义值为 2016的符号常量 VER 的命令是: #dcfineVER2016。、
C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为____该数组的首地址_______。
若有说明:int a[ ][3]={1,2,3,4,5,6,7};则a数组第1维的大小是_3_.
判断题(每题1分,共10分)
C语言中,若函数说明未给出返回值类型,系统默认为void类型。(×)
字符常量是用一对双引号括起来的一个字符。(×)
C语言中,32768是不正确的int类型常数。(√)
在C语言程序中,要调用的函数必须在main()函数中定义。(×)
C语言程序中的main()函数必须放在程序的开始部分C"(×)
不能在赋值语句中通过赋值运算符""=""对字符型数组进行整体赋值 (×)
在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 (√)
C函数既可以嵌套定义又可以递归调用 (×)
函数必须有返回值,否则不能使用函数 (×)
C程序中有调用关系的所有函数必须放在同一个源程序文件中(×)
程序阅读题(每题5分,共20分)
"以下程序的输出结果是 B 。
main()
{
char st[20]= ""hello\0\t\\\"""";
printf(""%d %d
"",strlen(st),sizeof(st));
}
A、 9 9 B、 5 20
C、 13 20 D、 20 20
以下程序运行后,输出结果是 A 。
int d=1;
fun (int p)
{ int d=5;
d+=p++;
printf(""%d"",D、;
}
main()
{
int a=3;
fun(A、;
d+=a++;
printf(""%d
"",D、;
}
A、84 B、99 C、95 D、44
"以下程序的输出结果是 A 。
main( )
{ int i;
for(i=1;i<6;i++)
{ if(i%2) { printf(""#"");continue; }
printf(""*"");
}
printf(""
"");
}
A、 #*#*# B、 ##### C、 ***** D、 *#*#*
"以下程序运行后,如果从键盘上输入:
book<回车>
book<空格><回车>
则输出结果是 B 。
#include
main()
{char a1[80],a2[80],*s1=a1,*s2=a2;
gets(s1); gets(s2);
if(!strcmp(s1,s2)) printf(""*"");
else printf(""#"");
printf(""%d
"",strlen(strcat(s1,s2)));
}
A、 *8 B、#9 C、#6 D、*9
四、编程题(共15分)
1、程序的功能是计算:至50中是7的倍数的数值之和。
答案:
main()
{ int i,sum= 0;
for(i=1;i<=50;i++)
if([i%7==0]) sum+=i;
printf("%d",sum);
}
学科网(北京)股份有限公司
$$