教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 求职职场 >

历年二级C语言笔试真题及答案(12)

来源:网络收集 时间:2026-09-08
导读: y1=fun( 【11】); y2=fun( 【12】); printf(y1=%lf,y2=%lf\n,y1,y2); } (12)下面程序的功能是:将N行N列 二维数组中每一行的元素进行排列,第0 行从小到大排序,第1行从大到小排 序,第2行从小到大排序,第3行从

y1=fun( 【11】); y2=fun( 【12】);

printf("y1=%lf,y2=%lf\n",y1,y2); }

(12)下面程序的功能是:将N行N列

二维数组中每一行的元素进行排列,第0

行从小到大排序,第1行从大到小排

序,第2行从小到大排序,第3行从大到

小排序。例如:

#define N 4

Void sort (int a[][N])

{int i,j,k,t;

for (i=0;i<N;i++)

for(j=0;j<N-1;j++)

for(k=【13】;k<N;k++) /*判断下标是否

为偶数来确定按升序或降序来排列*/

if(【14】?a[j]<a[j][k]:a[j]>a[k])

{t=a[j] a[j]=a[k];

a[k]=t; } }

void outarr(int a[N][N])

{...........}

main()

{int

aa[N][N]={{2,3,4,1}{8,6,5,7}{11,12,10,9}{

15,14,16,13}};

outarr(aa);/*以矩阵的形式输出二维数组

*/

sort(aa);outarr(aa);}

(13)下列程序中的函数strcpy2()实现字

符串两次复制,即将t所指字符串复制两

次到s所指内存空间中,合并形成

一个新的字符串。例如,若t所指字符串

为efgh,调用strcpy2后,s所指字符串

为efghefgh。请填空。

#include <stdio.h>

#include <string.h>

void strcpy2(char *s,char *t)

{ char *p=t;

while(*s++=*t++);

s= 【15】;

while( 【16】=*p++);}

main()

{ char str1[100]="abcd",str2[]="efgh";

strcpy2(str1 ,str2); printf("%s\n",str1);}

(14)下面程序的运行结果是【17】。

#include <stdio.h>

int f(int a[],int n)

{if(n>1)

return a[0]+f(a+1,n-1);

else return a[0];}

main()

{int aa[10]={1,2,3,4,5,6,7,8,9,10},s;

s=f(aa+2,4); printf("%d\n",s);}

(15)下面程序由两个源文件t4.h和t4.c

组成,程序编译运行的结果是【18】。

t4.h的源程序为:

#define N 10

#define f2(x) (x*N)

t4.c的源程序为:

#include <stdio.h>#define M 8

#define f(x) ((x)*M)

#include "t4.h"

main()

{int i,j; i=f(1+1); j=f2(1+1);

printf("%d%d\n",i,j); }

(16)下面程序的功能是建立一个有3个

节点的单向循环链表,然后求各个节点数

值域data中数据的和请填空。

#include <stdio.h>

#include <stdlib.h>

struct NODE{ int data;

struct NODE *next; };

main()

{struct NODE *p,*q,*r; int

sum=0;p=(struct

NODE*)malloc(sizeof(struct NODE));

q=(struct NODE*)malloc(sizeof(struct

NODE)); r=(struct

NODE*)malloc(sizeof(struct NODE));

p->data=100; q->data=200;

r->data=200;

p->data=q; q->data=r;

r->data=p;

m=p->data+p->next->data+r->next->dat

a 【19】;

printf("%d\n",sum); }

(17)有以下程序,其功能是:以二进制

“写”方式打开文件d1.dat,写入1~100

这100个整数后关闭文件。再以二进制

17

历年二级C语言笔试真题及答案

“读”方式打开文件d1.dat,将这100个整数读入另一个数组b中,并打印输出,请填空。

#include <stdio.h>

main()

{ FILE *fp;

int i,a[100],b[100];

fp=fopen("d1.dat","wb");

for(i=0;i<100;i++) a=i+1;

fwrite(a,sizeof(int),100,fp); fclose(fp); fp=fopen("d1.dat",【20】);

fread(b,sizeof(int),100,fp); fclose(fp); for(i=0;i<100;i++) printf("%d\n",b);} 2006年4月二级C语言笔试真题及答案

1)下列选项中不属于结构化程序设计方法的是A) 自顶向下B)逐步求精C)模块化D)可复用

2)两个或两个以上模块之间关联的紧密程度称为A)耦合度B)内聚度C)复杂度D)数据传输特性

3)下列叙述中正确的是

A)软件测试应该由程序开发者来完成B)程序经调试后一般不需要再测试

C)软件维护只包括对程序代码的维护D)以上三种说法都不对

4)按照“后进先出”原则组织数据的数据结构是A)队列B)栈C)双向链表D)二叉树

5)下列叙述中正确的是

A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构

C)双向链表是非线性结构D)只有根结点的二叉树是线性结构

*****6)对如下二叉树进行后序遍历的结果为A) ABCDEF B) DBEAFC C) ABDECF D) DEBFCA

7)在深度为7的满二叉树中,叶子结点的个数为A)32 B)31 C)64 D)63 8)“商品”与“顾客”两个实体集之间的联系一般是A)一对一B)一对多C)多对一D)多对多

9)在E-R图中,用来表示实体的图形是A)矩形B)椭圆形C)菱形D)三角形10)数据库DB,数据库系统DBS,数据库管理系统DBMS之间的关系是

A)DB包含DBS和DBMS B)DBMS 包含DB和DBS C)DBS包含DB和DBMS D)没有任何关系

11)以下不合法的用户标识符是A)j2_KEY B)Double C) 4d D) _8_

12)以下不合法的数值常量是A)011 B)lel C) 8.0 E0.5 D) 0xabcd

13)以下不合法的字符常量是A)'\018'B '\”' C) '\\' D) …\xcc'

14)表达式3.6-5/2+1.2+5%2的值是A)4.3 B) 4.8 C) 3.3 D) 3.8 15)以下能正确定义字符串的语句是A)

char str[]={…\064'}; B) char str=”\x43”; C)

char str=”; D) char str[]=”\0”;

16)以下数组定义中错误的是

A) int x[][3]={0}; B) int

x[2][3]={{1,2},{3,4},{5,6}}; C) nt

x[][3]={{1,2,3},{4,5,6}}; D)int

x[2][3]={1,2,3,4,5,6};

17)若要求从键盘读入含有空格字符的字

符串,应使用函数A)getc() B) gets() C)

getchar() D) scanf()

18) 下四个程序中,完全正确的是

A)#include B)#include

C) #include D) include

main(); main()

main() main()

{/*programming*/

{/*/programming/*/

{/*/*programming*/*/

{/*programming*/

printf(“programming!\n”);}

printf(“programming!\n”);}

printf(“programming!\n”);}

printf(“programming!\n”);}

19)若有定义:float x=1.5; int a=1,b=3,c=2;

则正确的switch语句是

A)switch(x) B) switch((int)x);

C) switch(a+b) D) switch(a+b)

{case 1.0: printf(“*\n”); {case 1:

printf(“*\n”);{ case 1:

p rintf(“*\n”); {case 1: printf(*\n”);

Case 2.0: printf(“**\n”); }case 2:

printf(“**\n”);}case 2+1:

printf(“**\n”);} case c: printf(“**\n”);}

20)若各选项中所用变量已正确定义,函数

fun中通过return语句返回一个函数值,

以下选项中错误的程序是

A)main() B) float fun(int

< …… 此处隐藏:3407字,全部文档内容请下载后查看。喜欢就下载吧 ……
历年二级C语言笔试真题及答案(12).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/121621.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)