一、选择题。
1、关于c语言数据类型的叙述,正确的是(c)。
a)枚举类型不是基本类型 b)数组不是构造类型
c)变量必须先定义后使用 d)不允许使用空类型。
2、下面关于c语言用户标识符的描述,正确的是(d)。
a)不区分大小写 b)用户标识符不能描述常量
c)类型名也是用户标识符 d)用户标识符可以作为变量名。
3、下面叙述正确的是(b)。
a)2/3与2.0/3.0等价 b)(int)2.0/3与2/3等价
c)++5与6等价d)’a’与”a”等价。
4、已知char a;使用scanf()函数输入一个字符给变量a,不正确的函数调用是(b)。
a)scanf(“%d”,&ab)scanf(“%lf”,&a
c)scanf(“%c”,&ad)scanf(“%u”,&a);
5、下面叙述中,(a)不是结构化程序设计三种基本结构的共同特点。
a)先判断后执行b)单入口,单出口。
c)程序中没有执行不到的语句 d)无死循环。
6、已知int a=3, b=5; 则表达式 a &&b 的值为(c)。
a)3b)2 c)0d)1
7、已知char a=’r’; 则正确的赋值表达式是(a)。
a)a=(a++)4b)a+2=3 c)a+=256d)a=’\078’
8、以下的语句中,无内嵌的if语句是(b)。
a)if(x= =y) x+=y
b)if(x>y &&x!=y);
x+=y;
c)if(x!=y)
scanf(“%d”,&x);
elsescanf(“%d”,&y);
d)if(x
9、设有整型变量x,下述语句(b)不会出现死循环。
a)for( ;x+=1b)for( ;x=getchar())n
c)while(1) ;b)int a=
12、设有如下数组定义:
char str[8]=;
则分配给数组str的存储空间是(c)字节。
a)6 b)7 c)8d)9
13、以下程序的运行结果是(a)。
int fun(int array[4][4])
int j;
for(j=0;j<4;j++)printf(“%2d”,array[2][j]);
printf(“”);
main()
int a[4][4]=;
fun(a);
a)2 0 0 5b)1 0 0 4 c)0 1 2 0 d)0 4 5 0
14、若有以下宏定义,#define mod(x,y) x%y
则执行以下程序段后,z的值是(d)。
int z,a=15,b=100;
z=mod(b,a);
a)100 b)15 c)11 d)10
15、对于基类型相同的两个指针变量之间,不能进行的运算是(c)。
a) 16、若函数fun的函数头为:
int fun(int i,int j)
且函数指针变量p定义如下:
int (*p)(int i,int j);
则要使指针p指向函数fun的赋值语句是(b)。
a)p=*funb)p=fun; c)p=fun(i,jd)p=&fun;
17、设有以下定义语句:
struct student
int num;
char name[10];
float score;
wang,zhang;
则不正确的叙述是(c)。
a)struct是结构体类型的关键字 b)zhang是结构体变量名
c)wang是结构体类型名d)num,name,score都是结构体类型student的成员名。
18、若有以下定义:
struct link
int data;
struct link *next;
*head,*p;
并已建立如下图所示的链表结构:
head指针p指向如下结点:
p则能够把p所指结点插入到链表中成为链表第2个结点的程序段是(a)。
a)p->next=head->next;head->next=p
b)head->next=p;p->next=head->next;
c)d)(*head).next=p;(*p).next=(*head).next;
19、设有如下定义:
typedef int *integer;
integer p,*q;
则(c)是正确的叙述。
a)p是int型变量b)q是基类型为int的指针变量
c)p是基类型为int的指针变量d)程序中可用integer代替int类型名。
20、以下程序的可执行文件名是。
main()
int argc;
char *ar**;
int i;
for(i=2;i printf(“%s%c”,ar**[i],(i}
在dos命令行输入:file my c language and programming《回车》,其输出结果是(a)。
a)c language and programming b)my c language and programming
c)myclanguageandprogramming d)file my c language and programming
21、在c语言源程序中,以下叙述正确的是(c)。
a)main函数必须位于文件的开头b)每行只能写一条语句
c)程序中的一个语句可以写成多行d)每个语句的最后必须有点号。
22、下面关于算术运算符的叙述,错误的是(a)。
a)其运算对象不包含函数。
b)%(模运算符)的运算对象只能为整型量。
c)算术运算符的结合方向是“自左至右”
d)自加和自减运算符的结合方向是“自右至左”
23、下面叙述中,(a)不是结构化程序设计中的三种基本结构之一。
a)数据结构 b)选择结构 c)循环结构d)顺序结构。
24、已知 double a=5.2; 则正确的赋值表达式是(a)。
a)a+=a-=(a=4)*(a=3b)a=a*3=2
c)a%3d)a=double(-3)
25、逻辑运算符的优先级依次为(c)。
abcd26、对于整型变量x,与while(!x) 等价的是(b)。
a)while(x!=0) b)while(x= =0) c)while(x!=1) d)while(~ x)
27、下列数组声明中,正确的是(a)。
a)int a[10b)int n=10,a[n
c)int n=10;int a[nd)int n;scanf(“%d”,&n);int a[n];
28、有如下定义:
char str[6]=;
则语句:printf(“%s”,str);
的输出结果是(d)。
a)abb)abdefc)ab\0d)ab
29、执行以下程序段的输出结果是(b)。
int a=10,*p=&a;
printf(“%d”,+p);
a)10b)11 c)变量a的地址d)变量a的地址+1
30、若有以下程序段,且0≤i<4,0≤j<3,则不能正确访问a数组元素的是(d)。
int i,j,(*p)[3];
int a[3]=;
p=a;a)*(a+i)+jb)p[i][j] c) *p+i) [jd)p[i]+j
31、若有以下定义:
struct link
int data;
struct link *next;
*head,*p;
并已建立如下图所示的链表结构:phead
则能保留链表其它结点,而删除p所指向结点的程序段是(a)。
a)head->next=p->next;free(p
b)head->next=p;p->next=head->next;free(p);
c)free(p);head->next=p;p->next=head->next;
d)free(p);head->next=p->next;
32、假定已有如下变量说明和枚举定义:
char ch;
int j,k;
enum day;
int a[sat]
判断下列语句是否符合语法规则,结果是(c)。
char a语句1 */
j+k=j语句2 */
C语言C模拟试卷
一 选择题 共40分 1 下列运算符中优先级最高的是 2分 ab cd 2 若x,i和j都是整型变量,则计算x i 6,j 40 表达式后,x的值为 2分 a 6 b 46 c 34 d 40 3 以下叙述正确的是 2分 a 在c程序中,main函数必须位于程序的最前面。b c程序的每一行中只能写一...
C语言模拟试卷A
安徽农业大学经济技术学院。c语言程序设计 模拟试卷 a 所有答案写在答题卡上,否则不得分。一 单项选择题 每题1分,共30分 1.以下选项中叙述正确的是 c a c语言程序总是从第一个定义的函数开执行。b 在c语言程序中,被调用的函数必须在main 函数中声明c c语言程序总是从main 函数开始执...
C语言模拟试卷
1 在计算机上可以直接运行的程序是 c 1 a c语言源程序 b 汇编语言程序 c 机器语言程序 d 高级语言程序。2 一个程序总是从 c 开始执行程序。2 a 第一行 b 第一个函数 c 主函数 d 最后一个函数。3 c语言中的函数 c 3 a 嵌套定义和嵌套调用均可 b 可以嵌套定义但不可以嵌套...