江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
江苏省二级C语言考试模拟试题1(注:只有C部分,没有公共基础部分)
-、选择题[请用答题卡答题,答案依次填在(21)-(30)答题号内]
21.已知有声明语句int x=8,则下列表达式中,值为2的是(21).
A.x+=x-=x
B.x%=x-2
C.x>8?x=0:x++
D.x/=x+x
22.以下关于函数的叙述中正确的是(22)
A.在函数体中可以直接引用另一个函数中声明为static类别的局部变量的值
B.在函数体中至少必须有一个return语句
C.在函数体中可以定义另一个函数
D.在函数体中可以调用函数自身
23.若有声明语句"int a[10],b[3][3];",则以下对数组元素赋值的操作中,不会出现越界访问
的是(23)
A.a[-1]=0
B.a[10]=0
C.b[3][O]=0
D.b[0][3]=0
24.数组和链表都可以用于存储一组彼此有关联的数据,以下说法中不正确的是(24)
A.数组占用一块连续的存储区域,链表可能占用若干块不连续的存储空间
B.数组和链表所占用的存储区域均不能在程序运行期间动态地分配
c.数组中的数据可以随机存取或顺序存取,链表中的数据只能顺序存取
D.数组的长度是固定的,链表的长度是不固定的
25.设有定义和声明语句:
typedef struct dtype
{int a;
struct dtype *b;
}node;
static node x[3]={5,&x[1],7,&x[2],9,'\0'},*prt=&x[0];
下列选项中,表达式值不为5的是(25)
A.x[1].b->a-2
B.ptr->b->a-2
C.(ptr+1)->a-2
D.ptr->a
26.在以下程序中,需要在main函数之后定义-个函数,以下选项中(26)可以用做该函数
的名字
#define p 3.14
int y;
main()
{int a=1;
函数名(a);
... /*若干执行语句*/
}
int 函数名(int x)
{return x*x;}
A.main
B.y
C.p
D.print
27.若有声明语句"char ch='a',*pc=&ch;",以下语句中有语法错误的是(27)
A.(*pc)++;
B.ch+=-'a'+'A';
C.toupper(ch)=ch;
D.ch++;
28.已知有语句"FILE *fp;int x=123;fp=fopen("out.dat","w");",如果需要将变量x的值
以文
本形式保存到一个磁盘文件out.dat中,则以下函数调用形式中正确的是(28)
A.fprintf("%d",x);
B.fprintf(fp,"%d",x);
C.fprintf("%d",x,fp);
D.fprintf("out.dat","%d",x);
29.已知有声明语句"int a[5]={l,2,3,4,5},*p,i;",以下语句中(29)不能正确输出a数
组全部元素的值
A.for(p=a,i=0;i<5;i++)printf("%d",*(p+i));
B.for(p=a;p