admin 管理员组文章数量: 1184232
2024年1月13日发(作者:substr函数截取后六位)
精品文档
江苏省二级 C 语言程序设计 2008 年(秋)
第一部分 计算机基础知识
(1)信息技术指的是用来扩展人们信息器官功能、协助人们更有效地进行信息处理的一类技术。在下列
有关信息技术的叙述中,错误的是__________。
A)现代信息技术的主要特征之一是以数字技术和电子技术为基础
B)遥感遥测技术、自动控制技术等均属于现代信息技术
C)微电子技术是信息技术领域的关键技术,它以集成电路为核心
D)利用磁带、光盘、电话、传真等进行信息传递均属于现代通信
(2)二进制数 10111000 和 11001010 进行逻辑“与”运算,结果再与 10100110 进行逻辑“或”运算,最
终结果的十六进制形式为__________。
A)A2 B)DE C)AE D)95
(3)计算机的性能在很大程度上是由 CPU 决定的。在下列有关 CPU 结构和原理的一些叙述中,错误的是
__________。
A)目前 PC 机所使用的 CPU 均是 Intel 公司的产品
B)从逻辑组成上看,CPU 主要由寄存器组、运算器和控制器等部分组成
C)目前 CPU 中的运算部件 ALU 有多个,每个 ALU 均可独立完成运算
D)不同 CPU 能执行的指令有所不同,但同一系列 CPU 产品通常是“向下兼容的”
(4)在下列有关目前 PC 机主板及其组件的叙述中,正确的是__________。
A)主板的物理尺寸没有标准,通常不同品牌的主板采用不同的尺寸
B)主板上的 BIOS 芯片是一种 RAM 芯片,因而其存储的信息是可以随时刷新的
C)主板上的存储器控制和 I/O 控制功能大多集成在芯片组内
D)主板上的 CMOS 芯片是一种非易失性存储器,其存储的信息永远不会丢失
(5)在下列有关 PC 机硬盘存储器的叙述中,错误的是__________。
A)硬盘上的数据块要用柱面号、扇区号和磁头号这三个参数来定位
B)目前硬盘一般都含有 DRAM 芯片构成的高速缓存(Cache)
C)目前硬盘与主机的接口大多为串行 ATA 接口
D)硬盘容量的增加主要是靠碟片数增加,目前硬盘一般均有数十个碟片组成
(6)在下列有关 PC 机 I/O 总线和接口的叙述中,错误的是__________。
A)可用于连接键盘或鼠标器的 PS/2 接口是一种并行数据传输接口
B)USB 2.0 接口的数据传输速率可达每秒几十 MB
C)通过 USB 集线器,USB 接口连接设备数最多可达 100 多个
D)目前数字视频设备常用 IEEE-1394 接口与主机连接
(7)在下列有关 PC 机软件的叙述中,错误的是__________。
A)任何软件都具有版权,因此均不能随意复制和使用
B)软件由程序及相关的数据和文档组成
C)数据库管理系统属于系统软件
D)Outlook Express 属于应用软件
(8)操作系统产品有许多种。在下列软件中,不属于操作系统产品类型的是__________。
A)UNIX B)Linux
C)Access 2000 D)Windows Server 2003
.
精品文档
(9)在下列有关 Windows 操作系统的叙述中,错误的是__________。
A)Windows 操作系统采用图形用户界面
B)Windows XP 操作系统分为家庭版、专业版、平板 PC 版等多种版本
C)在 Windows XP 环境下,用户可以通过“任务管理器”查看 CPU 的使用率
D)在 Windows XP 中,作为虚拟内存使用的交换文件的文件名是 Win386.swp
(10)在下列有关算法和数据结构的叙述中,错误的是__________。
A)算法描述解决问题的步骤,数据结构描述求解问题的对象
B)算法应具有确定性、有穷性和能行性
C)数据结构研究的内容包括数据的逻辑结构和存储结构,与数据的运算无关
D)精心选择和设计的数据结构可以提高算法的时间效率和空间效率
(11)常用局域网有以太网、FDDI 网等类型。下面的相关叙述中,错误的是__________。
A)总线式以太网采用带冲突检测的载波侦听多路访问(CSMA/CD)方法进行通信
B)以太网交换机比集线器具有更高的性能,它能提高整个网络的带宽
C)FDDI 网通常采用光纤双环结构,具有高可靠性和数据传输的保密性
D)FDDI 网的 MAC 地址和帧格式与以太网相同,因此这两种局域网可以直接互连
(12)路由器用于连接多个异构的计算机网络。下列是一些有关网络中路由器与 IP 地址的叙述,其中正确
的是__________。
A)路由器不能有 IP 地址 B)路由器可不分配 IP 地址
C)路由器只需要分配一个 IP 地址 D)路由器应分配两个或两个以上 IP 地址
(13)下列关于利用有线电视网和电缆调制解调技术(Cable MODEM)接入互联网的优点的叙述中,错
误的是__________。
A)每个用户独享带宽且速率稳定 B)无需拨号
C)不占用电话线 D)可永久连接
(14)Web 浏览器和 Web 服务器都遵循__________协议,该协议定义了浏览器和服务器的网页请求格式及
应答格式。
A)TCP B)HTTP C)UDP D)FTP
(15)下列有关网络信息安全的叙述中,正确的是__________。
A)只要加密技术的强度足够高,就能保证数据不被非法窃取
B)访问控制的任务是对每个文件或信息资源规定各个(类)用户对它的操作权限
C)硬件加密的效果一定比软件加密好
D)根据人的生理特征进行身份鉴别的方式在单机环境下无效
(16)若内存中相邻 2 个字节的内容为十六进制 7451,则它们不可能是__________。
A)2 个西文字母的 ASCII 码 B)1 个汉字的机内码
C)1 个 16 位整数 D)一条指令的组成部分
(17)以下关于汉字编码标准的叙述中,错误的是__________。
A)Unicode 和 GB18030 中的汉字编码是相同的
B)GB18030 汉字编码标准兼容 GBK 标准和 GB 2312 标准
C)我国台湾地区使用的汉字编码标准主要是 BIG 5
D)GB18030 编码标准收录的汉字数目超过 2 万个
(18)不同的图像文件格式往往具有不同的特性。有一种格式具有图像颜色数目不多、数据量不大、能实
现 累 进 显 示 、 支 持 透 明 背 景 和 动 画 效 果 、 适 合 在 网 页 上 使 用 等 特 性 , 这 种 图
像 文 件 格 式是
__________。
A)TIF B)GIF C)BMP D)JPEG
(19)制造业信息系统是一个复杂的信息系统,它可分为辅助技术系统和管理业务系统两大类。在下列缩
写中,不属于计算机辅助技术系统的是__________。
A)CAD B)CAPP C)CEO D)CAM
.
精品文档
(20)在信息系统的结构化生命周期开发方法中,具体的程序编写属于__________阶段的工作。
2008 年(秋)笔试试卷第 2 页(共 7 页)
.
精品文档
A)系统规划
B)系统分析
C)系统设计 D)系统实施
第二部分 C 语言程序设计
一、选择题
(21)以下叙述中正确的是__________。
A)在编译时可以发现注释中的拼写错误
B)C 语言程序的每一行只能写一条语句
C)main(){}必须位于程序的开始
D)C 语言程序可以由一个或多个函数组成
(22)以下选项中不能用作变量名的是__________。
A)_float B)switch C)sum D)_123
(23)已知 sizeof(int)的值为 2,为将 10!的值存储到变量 f 中(10!=3628800),变量 f 的类型应声明为
__________。
A)long int B)int C)short int D)unsigned int
(24)若有声明“double x=3,c,* a=&x,* b=&c;”,则下列语句中错误的是__________。
A)a=b=0; B)a=&c,b=a; C)&a=&b; D)*b= * a;
(25)数学式
a
C 程序中正确的表示形式为__________。
2b 在
A)sqrt(a)/2 * b B)sqrt(a)/2/b C)sqrt(a)/2b D)sqrt a/(2 * b)
(26)已知有程序段“char str[][10]={"Aoyun","Beijing"},* p=&str[0][0];printf("%sn",p+10);",则执行 printf 语
句后输出为__________。
A)Beijing B)Aoyun C)ing D)ng
(27)以下声明中错误的是__________。
A)int a[2] B)int a[]={0,1} C)int a[3]=0 D)int a[3][4]={0}
(28)已知有结构定义和变量声明如下:
struct student
{ char name[20];int score; struct student * h;}stu,* p;int * q;
以下选项中错误的是__________。
A)p=&stu; B)q=&;
C)scanf("%s%d",&stu); D)stu.h=p;
(29)已有声明“int a=3,b=3,c=2;”,以下选项中值为 0 的表达式是__________。
A)!a&&! b&&c B)!a||!b||c C)a==b&&b>=c D)a>=b&&b>c
(30)若有声明“char ss[8]="Red";”,则 sizeof(ss)的值是D)1
__________。
A)8 B)4 C)3
二、填空题
● 基本概念题(共 5 分)
(1)已知有函数定义“int fun(){return(3,4);}”,则调用 fun 后的函数返回值是 【1】 。
(2)设有声明“int a=3,b=4;float x=4.5,y=3.5;”,则表达式“(float)(a+b)/2+(int)x%(int)y”的值是 【2】 。
(3)若已有定义“enum TP{A,B,C};”,则执行语句“printf("%dn",A+1);”后输出结果是 【3】 。
(4)若需要打开 D 盘上 user 子目录下已经存在的名为 的文本文件,先读出文件中数据,后追加写
入新数据,则正确的函数调用语句是:“fp=fopen("D:", 【4】 );”。
● 阅读程序题(共 13 分)
.
精品文档
(5)以下程序运行时输出结果的最后一行是 【5】 。
#include
void main()
2008 年(秋)笔试试卷第 3 页(共 7 页)
.
精品文档
{ int a=1,b=1,i;
for(i=1;i<=2;i++)
{ a=a+b; printf("%d/%d,",b,a); b=a+b; printf("%d/%dn",a,b);}
printf("n");}
(6)以下程序运行时输出结果为 【6】 。
#include
void main()
{ int i,sum=0;
for(i=0;i<5;i++)
{ switch(i)
{ case 0:
case 1:sum++;
case 3:sum++;
case 4:sum--;break;}}
printf("%dn",sum);}
(7)以下程序运行时输出结果是 【7】 。
#include
void func(int b)
{ int a;a=b;b=10; }
void main()
{ int a=10,b=20; func(b); printf("%d,%d",a,b);}
(8)以下程序运行时输出结果的第一行是 【8】 ,第二行是 【9】 。#include
int f1()
{ static int i=0,f=1; return f*=++I;}
int f2()
{ int i=0,f=1; return f*=++i:}
void main()
{ printf("%dn",f1()+f1()); printf("%dn",f2()+f2());}
(9)以下程序运行时输出结果是 【10】 。
#include
#include
void sf(char * s1,char * s2)
{ if( * s1= * s2) sf(s1+1,s2+1);}
void main()
{ char a[20]="ABC",b[20]="xyz";
sf(a+strlen(a),b); puts(a);}
(10)以下程序运行时输出结果的第一行是 【13】 ,第三行是 【12】
#include
void main()
{ int i,j,a[3][3];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i else a[i][j]=i-j+1; for(i=0;i<3;i++) . 。 精品文档 {for(j=0;j<3;j++) pfintf("%4d",a[i][j]); 2008 年(秋)笔试试卷第 4 页(共 7 页) . 精品文档 pfintf("n");}} (11)以下程序运行时输出结果是 【13】 。 #include void sort(int a[],int n) { int i,j,p;int t; for(i=1;i { p=i; for(j=i+2;j if(a[j]>a[p]) p=j; if(p!=i) { t=a[i];a[i]=a[p];a[p]=t;}}} void main() { int s[]={8,1,4,3},n=4,k; sort(s,n); for(k=0;k pfintf("n");} (12)以下程序运行时输出结果的第一行是 【14】 ,第二行是 【15】 。 #include struct s { int x,* y; } * p; int d[5]={10,20,30,40,50}; struct s a E5]={100,&d[0],200,&d[1],300,&d[2],400,&d[3],500,&d[4]}; void main() { p=a; printf("%5d",p->x++); pfintf("%5dn",p->x); pfintf("%5d",* p->y); printf("%5dn",* ++p->y);} (13)以下程序运行时若输入 8,则输出结果中第一行是 【16】 是 【18】 。 #include void main() { int k,i,m,n,num[20]; scanf("%d",&n); for(i=0;i i=k=m=0; while(m { if(num[i]!=0) k++; if(k==3) { printf("%4d",num[i]); num[i]=0; k=0; m++; if(m%3==0) printf("n");} i++; if(i==n) i=0;} i=0; while(num[i]==0) i++; printf("%4d",num[i]);} ● 完善程序题(共 12 分) ,第二行是 【17】 ,第三行(14)以下程序的功能是:求 a 数组中前 4 个元素之和及后 6 个元素之和。试完善程序以达到要求的功能。 . 精品文档 int fsum(int * array,int n) { int i,s; . 精品文档 s=0: for(i=0; 【19】 ;i++) s+=array[i]; return(s);} void main(void) { int a[15]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int sumh,sumt; sumh=fsum(a,4); sumt= 【20】 ; printf("%d%dn",sumh,sumt);} (15)以下程序对二维数组 a 中存储的 N×N 矩阵做如下操作:先将每一行中值最大的元素与该行位于主 对角线处的元素交换值,然后对主对角线上的所有元素排序使其自左上角到右下角升序排列,最后 输出排序后主对角线上各元素的值。试完善程序以达到要求的功能。 #include #define N 5 void fun(int x[][N],int n) { int i,j,t,arr,col; for(i=0;i { arr=x[i][0];col=0; for(j=0;j t=x[i][i]; 【22】 ; x[i][col]=t;} for(i=0;i for(j=i+1;j void main() { int a[N][N]={{10,25,24,13,23},{11,22,12,21,14},{20,15,19,16,18}, {17,9,4,5,3},{2,1,6,7,8}},i; fun(a,N); for(i=0;i printf("n");} (16)以下程序中函数 replace 的功能是:将字符串 s 中所有属于字符串 s1 中的字符都用 s2 中的对应位置 的字符替换。假如 s 为“ABCBA”,s1 为“AC”,s2 为“ac”,则调用 replace 函数后,字符串 s 的 内容将变换为“aBcBa”。试完善程序以达到要求的功能。 #include #define MAX 20 void replace(char * S,char * s1,char * s2) { char * p; for(;*s;s++) { p=s1; while(*p&& 【24】 ) p++; if(*p)*s= 【25】 ;}} void main() { char s[MAX]="ABCBA",s1[MAX]="AC",s2[MAX]="ac"; 【26】 ; printf("The string of s is:"); printf("%sn",s);} (17)以下程序的功能是:函数 struct node * insert(struct node * head,struct node * p)将 p 指向的结点作为 首结点插入 head 指向的链表中。main 函数接收从键盘输入的一行字符,每接收一个字符后,申请 一个新结点保存该字符,并调用 insert 函数将新结点插入链表中。最后从表头开始依次输出该链表 各结点成员 c 的值。试完善程序以达到要求的功能。 #include #include struct node . 精品文档 { char c; struct node * next;}; void main() { struct node * insert(struct node * head,struct node * p); char ch; struct node * head,* p; head=NULL; while((ch=getchar())!='n') { p=(struct node * )malloc(sizeof(struct node)); 【27】 =ch; p->next=NULL; 【28】 ; } P=head; while(p!=NULL) { printf("%c",p->c); 【29】 ;}} struct node * insert(struct node * head,struct node * p) { if(head==NULL) head=p; else { 【30】 ; head=p;} return head;} .
版权声明:本文标题:江苏省计算机二级C语言试题与答案(笔试) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1705148080a474705.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论