南华大学C语言程序设计期末
本试卷为南华大学C语言程序设计期末,题目包括:单项选择题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,程序题,结构体,文件。
本卷包括如下题型:
C语言程序设计期末
一、单项选择题 (共50题,每题2分,共计100分)
( A )
1、以下程序的输出结果是
main()
{
int a=4,b=5,c=0,d;
d=!a&&!b||!c;
printf("%d\n",d);
}
( D )
2、以下叙述中错误的是________。
( B )
3、以下关于c语言的叙述中正确的是________。
( A )
4、以下关于typedef的叙述错误的是________。
( B )
5、结构化程序所要求的基本结构不包括( )。
( D )
6、若有如下定义,则________是对数组元素的正确的引用 int a[10], *p ; p=a;
( C )
7、已知i,j,k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句是________。
( B )
8、设有以下程序
main( )
{
int n1,n2;
scanf("%d",&n2);
while (n2!=0)
{
n1=n2%10;
n2=n2/10;
printf("%d",n1);
}
}
程序运行后,如果从键盘上输入1298,则输出结果为________。
( A )
9、若有定义:int a=7; float x=2.5, y=4.7; 则表达式: x+a%3*(int)(x+y)%2/4的值是________。
( C )
10、有以下定义语句,编译时会出现编译错误的是________。
( D )
11、以下选项中正确的语句组是________。
( D )
12、若有以下说明语句:
struct student
{
int num;
char name[ ];
float score;
} stu;
则下面的叙述不正确的是: ( )
( A )
13、下列数据中属于"字符串常量"的是________。
( A )
14、当接受用户输入的含有空格的字符串时,应使用 __________ 函数 .
( D )
15、下列关于do…while语句的叙述中正确的是________。
( D )
16、设有以下定义: int a[3][3]= { 1,2,3,4,5,6,7,8,9 }; int(*ptr)[3]=a; 则下列能正确表示数组元素a[1][2]的表达式是______。
( B )
17、若有定义int a=2; 则执行完语句a/=a*a; 后,a的值是________。
( A )
18、对于一个正常运行的c程序,以下叙述中正确的是________。
( C )
19、流程图里面的开始和结束用( )表示。
( B )
20、设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是________。
( D )
21、要定义整型数组x,使之包括初值为0的三个元素,下列语句中错误的是________。
( A )
22、二维数组a[8][9]按行优先顺序存储,若数组元素a[2][3]的存储地址为1087,a[4][7]的存储地址为1153,则数组元素a[6][7]的存储地址为 ( )
( B )
23、下列赋值语句错误的是________。
( B )
24、下列选项中,值为1的表达式是________。
( B )
25、有以下程序
#include<string.h>
main()
{
char p[20]={'a','b','c','d'},q[]="abc",r[]="abcde";
strcat(p,r);
strcpy(p+strlen(q),q);
printf("%d\n",strlen(p));
}
程序运行后的输出结果是________。
( A )
26、以下程序的运行结果是________。
#include <stdio.h>
main()
{
int a[]={1,2,3,4,5,6,7,8,9,10,11,12};
int *p=a+5,*q=null;
*q=8(p+5);
printf("%d %d\n", *p,*q);
}
( A )
27、有以下程序:
main()
{
int a=3,b=4,c=5,d=2;
if(a>b) if(b>c) printf("%d",d+++ 1);
else printf("%d",++d+1);
printf("%d\n",d);
}
程序运行后的输出结果是 ______。
( D )
28、有以下程序:
#include<stdio.h>
main()
{
int x=8;
for(;x>0;x--)
{
if(x%3)
{
printf("%d,",x--);
continue;
}
printf("%d,",--x);
}
}
程序的运行结果是______。
( B )
29、字符串"xyz"在内存占用的字节数是______。
( A )
30、以下叙述正确的是________。
( A )
31、下面程序的输出结果是_______。
f1(int x)
{
int y;
y=x+x;
return(y);
}
f2(int a ,int b)
{
int z;
z=f1(a*b);
return(z);
}
main( )
{
int a=2,b=5,c;
c=f2(a,b);
printf("%d",c);
}
( B )
32、以下叙述中错误的是______。
( B )
33、一个字节代表几位二进制数():
( C )
34、对c语言程序,以下说法正确的是________。
( D )
35、若a是基本整型变量,c是单精度实型变量,输入语句____是错误的。
( D )
36、下面定义结构变量的语句中错误的是________。
( A )
37、设有以下代码其中,循环体 a 与循环体 b 相同,以下叙述正确的是________。
( A )
38、用在switch语句的关键字没有哪个?
( B )
39、以下叙述中正确的是________。
( C )
40、static struct
{
int a1;
float a2;
char a3;
}
a[10]={1,3.5,'a'};
说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存 储方式,其中被初始化的下标变量是________。
( A )
41、以下正确的说法是:在c语言中________。
( D )
42、若有以下定义和语句: int a[10]={1,2,3,4,5,6,7,8,9,10}
, *p=a;
不能表示a数组元素的表达式是________。
( B )
43、对for( 表达式1; ;表达式3)可理解为________。
( A )
44、如果在一个复合语句中定义了一个变量,则有关该变量正确的说法是________。
( B )
45、在c 语言中, 要求运算数必须是整型的运算符是________。
( A )
46、以下程序的输出结果是________。
main( )
{
int i=010, j=10, k=ox10;
printf(''%d,%d,%d\n'',i,j,k);
}
( B )
47、putchar()函数可以向终端输出一个________。
( B )
48、在C语言中,合法的字符常量是________.
( D )
49、若有char s1[]="abc",s2[20],*t=s2;gets(t);则下列语句中能够实现当字符串 s1 大于字符串 s2 时,输出 s2 的语句是()。
( D )
50、指针变量 p 进行自加运算(即 执行 p++;)后,地址偏移值为 1,则其数据类型为()。
相关标签:
- C语言
- 南华大学
- 期末