第一范文网 - 专业文章范例文档资料分享平台

江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分)

来源:用户分享 时间:2020-06-21 本文由森树白云 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

江苏省二级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.若有声明语句\则以下对数组元素赋值的操作中,不会出现越界访问

的是(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.若有声明语句\以下语句中有语法错误的是 (27) A.(*pc)++; B.ch+=-'a'+'A'; C.toupper(ch)=ch; D.ch++;

28.已知有语句\如果需要将变量x的值

以文

本形式保存到一个磁盘文件out.dat中,则以下函数调用形式中正确的是(28) A.fprintf(\

C.fprintf(\

29.已知有声明语句\以下语句中(29)不能正确输出a数 组全部元素的值

A.for(p=a,i=0;i<5;i++)printf(\ B.for(p=a;p

C.for(p=a,i=0;p main() {static int a[3][3],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) { switch(abs(i-j)) {case 0: if(i==0 || i==2)a[j]+=3; else a[j]++;break; case 1:a[j]+=2;break; case 2:a[j]+=3; } } printf(\ } 10.以下程序运行时输出第一行是(13) ,第二行是(14) #include int convert(char s1[],char s2[]) { int i=0,j,s; char tab[8][4]={\ for(i=0,j=O;s1!='\\0';i++,j=j+3) strcpy(&s2[j],tab[s1-'0']); for(i=0,s=O;i #include void loop(int s,int m,int n,char *str); main() {char buf[81]; strcpy(buf,\ loop(1,2,2,buf);puts(buf); } void loop(int s,int m,int n,char*str) { char c;int k;int i,len; len=strlen(str); for(i=O;i long invert(long x); main() {long n,c=0; printf(\ scanf(\ while((20)) {printf(\ n=n+invert(n);c++; while((21)) {n=n+invert(n);c++;} printf(\ } long invert(long x) /*生成并返回x的反序数*/ {long s; for(s=0;x>0; ( 22 ) ) s=s*10+x; return s; } 14.已知某链表中结点的数据结构定义如下: struct node {int x; struct node *next; }; 函数find_del的功能是:在参数head指向的链表中查找并删除x值最大的结点,如有多 个相同的x值最大的结点,删除第一个结点,保存该结点的地址到pm指向的指针变量中, 函数返回链表首结点的指针 struct node *find_del(struct node *head,struct node **pm) {struct node *p1,*p2,*pmax,*pre; if(head==NULL)return NULL; pmax=( 23 );p2=p1=pmax; while(p1) {if(p1->x>( 24 )) {pre=p2;pmax=p1;} p2=p1:p1=p1->next; } if(pmax==head)head=pmax->next; else ( 25 ) =pmax->next; ( 26 )=pmax; return head; } 15.以下程序对一组点坐标(x,y)按升序进行排序,要求:先按x的值排序,若x的值相同,则 按y的值排序,排序算法为选择法 #include #define N 5 typedef struct {int x,y;}POINT; void point_sort( (27) *x,int n) {POINT t; int i,j,k; for(i=0;i(x[j].x))k=j; else if((30)&&x[k].y>x[j].y)k=j; if(k!=i)t=x,x=x[k],x[k]=t; } } main() {POINT a[N]={0}; int i=0; while(i (5)a的地址 (6)6 (7)1 (8)1 (9)2 (10)1 (11)2 (12)3 (13)13 (14)001101 (15)The result is:365 (16)s (17)len (18)k+m (19)str[k] (20)n<=0 (21)n!=invert(n) (22)x=x/10 (23)head (24)pmax->x (25)pre->next (26)*pm (27)POINT (28)k=i (29)i+1 (30)x[k].x==x[j].x

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新小学教育江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分) 全文阅读和word下载服务。

江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分) .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1091017.html(转载请注明文章来源)
热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top