2003年9月二级C语言笔试真题及答案
2003年六月C语言二级考试题

《C语言》考题和答案03年10月省计算机等级考试〈C语言〉考题和答案第一部分软件技术基础一、是非判断题(每小题1分,共10分)(判断下列各小题是否正确,如正确,在客观题答题纸对应编号上选A,否则选B)1. 数据元素是数据的基本单位,数据项是数据的最小单位。
(A )2. 栈是特殊的线性表,须用一组地址连续的存储单元来存储其元素。
(B)3. 引入虚拟存储技术后,逻辑内存总容量为内存和外存之和。
(A )4. 使用DMA 方式传送数据期间不需要CPU 干预。
(A)5. 顺序文件和链接文件的长度都可以动态变化。
(B )6. 线性顺序队列会产生“假溢出”,而线性循环队列则不会。
(A)7. 在面向对象的程序设计中,派生类只能从一个基类产生。
(B )8. 程序、数据、和进程控制块是构成一个进程的三要素。
(A )9. 黑盒测试时,既要考虑程序的内部逻辑结构又要考虑其外部特性。
(B )10. 软件的总体设计和详细设计都要用PAD 图形工具。
(B )二、单项选择题(每小题1分,共5分)1. 有X Y Z 三个元素依次入栈,不可能的出栈顺序是(B )(A) Z Y X (B) Z X Y (C) Y X Z (D) X Y Z2. 进程的状态是可以转换的,而以下哪个状态转换是不可能的(D)(A) 就绪状态→ 执行状态(B) 执行状态→ 就绪状态(C) 阻塞状态→ 就绪状态(D) 等待状态→ 执行状态3. 利用通道技术可以在(C )之间直接交换数据交换。
(A) 内存与CPU (B) CPU与外设(C) 内存与外设(D) 内存、CPU和外设三者4. 以下的准则中哪个不是软件设计的准则(A )(A) 编程语言选择准则(B) 信息屏蔽准则(C) 结构化和模块化准则(D) 抽象准则5. 有一数列:97 65 76 13 29 49 58 经过一趟排序后得到:65 97 13 76 29 49 58 请问使用的是何种排序方法(C )(A)简单插入排序(B)冒泡排序(C) 2路归并排序(D)快速排序第二部分C与C++语言程序设计一、单项选择题(每小题1分,共10分)1. 对下列程序段的描述正确的是(B )。
2003年9月全国计算机等级考试二级VB笔试试题

这学期你的表现一直很出色,在刚开学那一群哭闹的新宝宝中,你的从容就已经表现出了你优秀的能力,而后面的幼儿园生活中你的独立和自理能力得到了充分的体现,自己穿脱衣服叠衣服,帮助他人扣扣子,真是厉害这学期你的表现一直很出色,在刚开学那一群哭闹的新宝宝中,你的从容就已经表现出了你优秀的能力,而后面的幼儿园生活中你的独立和自理能力得到了充分的体现,自己穿脱衣服叠衣服,帮助他人扣扣子,真是厉害,比其他娇生惯养的小公主可爱多了。
还有你的动手能力也体现在美术课上,你能完成一副副好看的涂画作品,老师看了很高兴。
新学期里老师希望你能在众人面前表演的时候更加大方,不会我们可以学到会,会我们就更要表现出来给别人看,你说是不是?老师为你加油!你在这短短半学期的进步是我们有目共睹的,阿姨现在经常向你竖起大拇指呢,确实,刚来幼儿园的时候你很内向,也不敢表达自己的想法,从表情上看就是一副不自然的模样,现在你能大方的向老师问好,课上能高举小手要求回答问题或表演,老师看在眼里可真高兴。
更让老师高兴的是你的能力的提高,如涂色能力、剪纸能力、课堂注意力等,蒙氏课上我们认识动物, 你能多次将动物和其对应的名字卡片配对起来,也给老师带来了惊喜,希望你在新的学期能再接再厉,创造出更多好成绩给老师和爸爸妈妈看。
在经历了每个新入园宝宝必经的不适应甚至哭闹过程后,你已经完全融入到了集体生活中,光这一点就体现了你人际交往能力的进步,现在你能和周围的小伙伴自在的嬉闹玩耍,开心的享受每一天的幼儿园生活了。
另外,你的动手能力也有了进步,以前你在涂画课上总是磨磨蹭蹭的,现在已经能在下课前完成出不错的作品。
新的学期有新的要求,老师希望你在课堂上能更专心更投入,这样才能学到更多本领,更好的体现出你的聪明才智哦!这学期你的表现很好,你喜欢自由的玩玩具,在放松的状态下你能充分发挥你的想象力和创造力,建构出好多种造型,而不像别的男孩子只知道搭枪,在建构出来后你还会给他们取好听的名字,更愿意将你的作品和想法呈现给老师看,而当老师给予肯定和表扬时,你的脸笑得像一朵花,看来你很享受被表扬的感觉哦!在新的学期希望你凭自己的努力得到更多的表扬!你是一个很聪明的宝宝,在这学期,老师看到你身上很多的闪光点,先是对音乐敏感学唱歌特别快,然后是知识比同龄宝宝要广,还有记忆力好,老师教过的有点难度的内容等到复习的时候你能很快回答出来,让老师倍感欣慰。
2003年9月全国计算机等级考试二级VB语言笔试试题及答案

2003年9月全国计算机等级考试二级笔试试卷公共基础知识和Visual Basic语言程序设计(考试时间90分钟,满分100分)一、选择题((1)~(20)每小题2分,(21)~(30)每小题3分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)以下叙述中错误的是。
A)Visual Basic是事件驱动型可视化编程工具B)Visual Basic应用程序不具有明显的开始和结束语句C)Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性D)Visual Basic中控件的某些属性只能在运行时设置(2)以下叙述中错误的是。
A)在工程资源管理器窗口中只能包含一个工程文件及属于该工程的其他文件B)以.BAS为扩展名的文件是标准模块文件C)窗体文件包含该窗体及其控件的属性D)一个工程中可以含有多个标准模块文件(3)以下叙述中错误的是。
A)双击鼠标可以触发DblClick事件B)窗体或控件的事件的名称可以由编程人员确定C)移动鼠标时,会触发MouseMove事件D)控件的名称可以由编程人员设定(4)以下不属于Visual Basic系统的文件类型是。
A).frm B) .bat C).vbg D).vbp(5)以下叙述中错误的是。
A)打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件B)保存Visual Basic程序时,应分别保存窗体文件及工程文件C)Visual Basic应用程序只能以解释方式执行D)事件可以由用户引发,也可以由系统引发(6)以下能正确定义数据类型TelBook的代码是。
A)Type TelBook B)Type TelBookName As String*10 Name As String*10TelNum As Integer TelNum As IntegerEnd Type End TelBookC)Type TelBook D)Typedef TelBookName String*10 Name String*10TelNum Integer TelNum IntegerEnd Type TelBook End Type(7)以下声明语句中错误的是。
全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。
A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。
根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。
所以C文件就是一个字节流或一个二进制流。
2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。
A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。
3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。
2023年9月青少年软件编程C语言等级考试试卷二级真题(含答案)

2023年9月青少年软件编程C语言等级考试试卷二级(含答案)分数:100题数:5一、编程题(共5题,共100分)第1题.数组指定部分逆序重放将一个数组中的前k项按逆序重新存放,例如,将数组8,6,5,4,1前3项逆序重放得到5,6,8,4,1。
时间限制:1000内存限制:65536输入:有两行,第一行两个整数,以空格分隔,分别为数组元素的个数n(1<n<100)以及指定的k(1<=k<=n)。
第二行是n个整数,每两个整数之间用空格分隔。
输出:只有一行,输出按题目要求逆序后数组的整数,每两个整数之间用空格分隔。
样例输入:5386541样例输出:56841参考答案:#include<bits/stdc++.h>using namespace std;int a[1000],b[1000];int main(){int n,k;cin>>n>>k;for(int i=0;i<n;i++){cin>>a[i];b[i]=a[i];}for(int i=k-1;i>=0;i--){cout<<b[i]<<';';}for(int i=k;i<n;i++){cout<<a[i]<<';';}}第2题.谁考了第k名在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学.号和成绩,求考第k名学生的学.号和成绩。
时间限制:1000内存限制:65536输入:第一行有两个整数,分别是学生的人数n(1≤n≤100),和求第k名学生的k(1≤k≤n)。
其后有n行数据,每行包括一个学.号(整数)和一个成绩(浮点数),中间用一个空格分隔。
输出:输出第k名学生的学.号和成绩,中间用空格分隔。
(注:请用%g输出成绩)。
样例输入:539078800167.89078800290.390788003619078800468.49078800573.9样例输出:9078800468.4参考答案:#include<bits/stdc++.h>using namespace std;int sum(int n){int s=0;while(n>0){s+=n%10;n/=10;}return s;}int main(){int i,j,t,n,a[1000],b[1000];cin>>n;for(i=0;i<n;i++){cin>>a[i];b[i]=sum(a[i]);}for(i=0;i<n-1;i++){for(j=0;j<n-i-1;j++){if((b[j]<b[j+1])||((b[j]==b[j+1])&&(a[j]<a[j+1]))){t=b[j];b[j]=b[j+1];b[j+1]=t;t=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(i=0;i<n;i++){cout<<a[i]<<"";}return0;}第3题.内部元素之和输入一个整数矩阵,计算位于矩阵内部的元素之和。
2002-2003年二级C语言笔试真题及答案2

2002年4月二级C语言笔试真题及答案(考试时间:120分钟,满分100分)一、选择题((1)—(40)题每小题1分,(41)—(50)题每小题2分,共和60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 在计算机中,一个字长的二进制位数是A) 8 B) 16 C) 32 D) 随CPU的型号而定(2) 计算机网络的突出优点是A) 速度快B) 资源共享 C) 精度高D) 容量大(3) 计算机网络能传送的信息是:A) 所有的多媒体信息B) 只有文本信息C) 除声音外的所有信息D) 文本和图像信息(4) 切断计算机电源后,下列存储器中的信息会丢失的是:A) RAM B) ROM C) 软盘D) 硬盘(5) 十进制数127转换成二进制数是A) 11111111 B) 01111111 C) 10000000 D) 11111110(6) 要想打印存放在当前盘当前目录上所有扩展名为.TXT 的文件内容, 应该使用的DOS命令为A) DIR *.TXT>PRN B) TYPE *.TXT>PRNC) COPY *.TXT PRN D) COPY *.TXT>PRN(7) 将当前盘当前目录及其子目录中的全部文件 (总量不足 1.2MB) 复制到一张空的A盘的根目录下,应该使用的DOS命令为A) XCOPY *.*A:\ /M B) XCOPY *.*A:\ /SC) XCOPY *.*A:\ /P D) XCOPY *.*A:\ /A(8) 在C盘根目录下执行PROMPT $p$g命令之后,DOS的提示符变为A) C:> B) C:\> C) C> D) C:\(9) DOS命令 "COPY CON DISP"中的CON代表A) 子目录 B) 磁盘文件 C) 键盘 D) 显示器(10) 结构化程序设计所规定的三种基本控制结构是A) 输入、处理、输出B) 树形、网形、环形C) 顺序、选择、循环D) 主程序、子程序、函数(11) 要把高级语言编写的源程序转换为目标程序,需要使用A) 编辑程序B) 驱动程序C) 诊断程序D) 编译程序(12) 英文小写字母d的ASCII码为100,英文大写字母D的ASCII码为A) 50 B) 66 C) 52 D) 68(13) Windows环境下,PrintScreen键的作用是A) 复制当前窗口到剪贴板B) 打印当前窗口的内容C) 复制屏幕到剪贴板 D) 打印屏幕内容(14) 在Windows环境下,为了终止应用程序的运行,应A) 关闭该应用程序窗口 B) 最小化该应用程序窗口C) 双击该应用程序窗口的标题栏 D) 将该应用程序窗口移出屏幕(15) 下列各带有通配符的文件名中,能代表文件XYZ.TXT的是A) *Z.? B) X*.* C) ?Z,TXT D) ?.?(16) 若有定义:int a=8,b=5,C;,执行语句C=a/b+0.4;后,c的值为A) 1.4 B) 1 C) 2.0 D) 2(17) 若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是A) a的值是字符C B) a的值是浮点型C) 不允许字符型和浮点型相加D) a的值是字符‘A’的ASCII值加上1。
9月计算机二级C语言考试试题附答案

9月计算机二级C语言考试试题附答案C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
以下是关于计算机二级C语言考试试题附答案,希望大家认真练习!第1题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,形成一个新串放在t中,t中字符按原字符串中字符顺序排列。
例如:当s中的字符串为:"ABAABBCCDDEE"。
则t中的字符串应为:"AABBCCDDEE"。
请改正函数fun中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!Modi1.c#include#include#include/************found************/void fun (char s,char t) /参考答案:void fun (char *s,char *t)/ { int i, sl;sl = strlen(s);for (i=0; i{ t[2*i] = s[i];t[2*i+1] = s[i];}/************found************/t[2*sl] = '0'; /参考答案:t[2*sl] = '\0';/}main(){ char s[100], t[100];printf("\nPlease enter string s:"); scanf("%s", s);fun(s, t);printf("The result is: %s\n", t);}第2题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中逆排列。
全国计算机等级考试二级C语言真题2003年9月

全国计算机等级考试二级C语言真题2003年9月(总分:88.00,做题时间:90分钟)一、{{B}}选择题{{/B}}(总题数:50,分数:50.00)1.在计算机中,一个字节所包含二进制位的个数是 A)2 B)4 C)8 D)16(分数:1.00)A.B.C. √D.解析:[解析]在表示数据位数时,把8位二进制数称为一个字节。
2.在多媒体计算机中,CD-ROM属于 A)存储媒体 B)传输媒体 C)表现媒体 D)表示媒体(分数:1.00)A. √B.C.D.解析:[解析]CD-ROM可用于存储数据,如文字、声音、图像等,属于存储媒体。
3.在DOS系统中,带有通配符的文件名*.*表示A)硬盘上的全部文件B)当前盘当前目录中的全部文件C)当前盘上的全部文件 D)根目录中的全部文件(分数:1.00)A.B. √C.D.解析:[解析]DOS系统中,如果命令中使用了*.*,则表示主文件名任意,扩展名任意的文件,即所有文件。
但如无特别限定,均指当前盘当前目录中的全部文件。
4.十六进制数100转换为十进制数为 A)256 B)512 C)1024 D)64(分数:1.00)A. √B.C.D.解析:[解析]把非十进制数转换为十进制可采用按权展开求和的方法,此题为:1X162+oxl61+0x160,计算得到256。
5.能将高级语言编写的源程序转换为目标程序的软件是 A)汇编程序 B)编辑程序 C)解释程序 D)编译程序(分数:1.00)A.B.C.D. √解析:[解析]此题考查考生对几个常用术语的理解。
汇编程序是把用汇编语言编写的程序翻译成二进制目标程序;编辑程序是对源程序进行输入、修改的过程,解释程序逐语句执行,但不生成目标程序。
只有编译程序是把高级语言编写的源程序转换为目标程序。
6.在Internet中,用于在计算机之间传输文件的协议是 A)TELNET B)BBS C)FTP D)WWW(分数:1.00)A.B.C. √D.解析:[解析]FTP是文件传输协议的缩写,其他几个选项都与文件传输协议无关。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2003年9月二级C语言笔试真题及答案(考试时间:120分钟,满分100分)一、选择题,(1-40)每题1分,(41-50)每题2分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 在计算机中,一个字节所包含二进制位的个数是A) 2 B) 4 C) 8 D) 16(2) 在多媒体计算机中,CD-ROM属于A) 存储媒体B) 传输媒体C) 表现媒体D) 表示媒体(3) 在DOS系统中,带有通配符的文件名*.*表示A) 硬盘上的全部文件B) 当前盘当前目录中的全部文件C) 当前盘上的全部文件D) 根目录中的全部文件(4) 十六进制数100转换为十进制数为A) 256 B) 512 C) 1024 D) 64(5) 能将高级语言编写的源程序转换为目标程序的软件是A) 汇编程序B) 编辑程序C) 解释程序D) 编译程序(6) 在Internet中,用于在计算机之间传输文件的协议是A) TELNET B) BBS C) FTP D) WWW(7) 在Windows环境下,资源管理器左窗口中的某文件夹左边标有“+”标记表示A) 该文件夹为空B) 该文件夹中含子文件夹C) 该文件夹中只包含有可执行文件D) 该文件夹中包含系统文件(8) 在Windows环境下,下列叙述中正确的是A) 在“开始”菜单中可以增加项目,也可以删除项目B) 在“开始”菜单中不能增加项目,也不能删除项目C) 在“开始”菜单中可以增加项目,但不能删除项目D) 在“开始”菜单中不能增加项目,但可以删除项目(9) 从Windows环境进入DOS方式后,返回Windows环境的命令为A) QUIT B) WIN C) EXIT D) ESC(10) 下列叙述中正确的是A) 计算机病毒只感染可执行文件B) 计算机病毒只感染文本文件C) 计算机病毒只能通过软件复制的方式进行传播D) 计算机病毒可以通过读写磁盘或网络等方式进行传播(11) 以下叙述中正确的是A) C程序中注释部分可以出现在程序中任意合适的地方B) 花括号“{”和“}”只能作为函数体的定界符C) 构成C程序的基本单位是函数,所有函数名都可以由用户命名D) 分号是C语句之间的分隔符,不是语句的一部分(12) 以下选项中可作为C语言合法整数的是A) 10110B B) 0386 C) 0Xffa D) x2a2(13) 以下不能定义为用户标识符的是A) scanf B) V oid C) _3com_ D) int(14) 有以下程序main(){ int a; char c=10;float f=100.0; double x;a=f/=c*=(x=6.5);printf("%d %d %3.1f %3.1f\n",a,c,f,x);}程序运行后的输出结果是A) 1 65 1 6.5 B) 1 65 1.5 6.5C) 1 65 1.0 6.5 D) 2 65 1.5 6.5(15) 以下选项中非法的表达式是A) 0<=x<100 B) i=j==0 C) (char)(65+3) D) x+1=x+1(16) 有以下程序main(){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf("%d,%d\n",k,m);}程序运行后的输出结果是A) 0,0 B) 0,1 C) 1,0 D) 1,1(17) 有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是A) 11 12<回车>B) 11,12<回车>C) 11,12<回车>D) 11,<回车>12<回车>(18) 设有如下程序段:int x=2002,y=2003;printf("%d\n",(x,y));则以下叙述中正确的是A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出B) 运行时产生出错信息C) 输出值为2002D) 输出值为2003(19) 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是A) x=x*100+0.5/100.0; B) x=(x*100+0.5)/100.0;C) x=(int)(x*100+0.5)/100.0; D) x=(x/100+0.5)*100.0;(20) 有定义语句:int a=1,b=2,c=3,x; 则以下选项中各程序段执行后,x的值不为3的是A) if (c<a) x=1; B) if (a<3) x=3;else if (b<a) x=2; else if (a<2) x=2;else x=3; else x=1;C) if (a<3) x=3; D) if (a<b) x=b;if (a<2) x=2; if (b<c) x=c;if (a<1) x=1; if (c<a) x=a;(21) 有以下程序main (){ int s=0,a=1,n;scanf("%d",&n);do{ s+=1; a=a-2; }while(a!=n);printf("%d\n",s);}若要使程序的输出值为2,则应该从键盘给n输入的值是A) -1 B) -3 C) -5 D) 0(22) 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是A) s=a+b; B) s=a+c; C) s=s+c; D) s=b+c;(23) 有以下程序main(){ int k=4,n=4;for( ; n<k ;){ n++;if(n%3!=0) continue;k--; }printf("%d,%d\n",k,n);}程序运行后的输出结果是A) 1,1 B) 2,2 C) 3,3 D) 4,4(24) 要求以下程序的功能是计算: 101...31211+++=s main (){ int n; float s;s=1.0;for(n=10;n>1;n--)s=s+1/n;print("%6.4f\n",s);}程序运行后输出结果错误,导致错误结果的程序行是A) s=1.0; B) for(n=10;n>1;n--)C) s=s+1/n; D) printf("%6.4f/n",s);(25) 已定义ch 为字符型变量,以下赋值语句中错误的是A) ch="\"; B) ch=62+3; C) ch=NULL; D) ch="\xaa";(26) 若已定义的函数有返回值,则以关于该函数调用的叙述中错误的是A) 调用可以作为独立的语句存在 B) 调用可以作为一个函数的实参C) 调用可以出现在表达式中 D) 调用可以作为一个函数的形参(27) 有以下函数定义:void fun( int n, double x) { …… }若以下选项中的变量都已正确定义并赋值,则对函数fun 的正确调用语句是A) fun(int y,double m); B) k=fun(10,12.5);C) fun(x,n); D) vold fun(n,x);(28) 有以下程序void fun(char *a, char *b){ a=b; (*a)++; }main (){ char c1="A", c2="a", *p1, *p2;p1=&c1; p2=&c2; fun(p1,p2);printf(“&c&c \n”,c1,c2);}程序运行后的输出结果是A) Ab B) aa C) Aa D) Bb(29) 若程序中已包含头文件stdio.h, 以下选项中,正确运用指针变量的程序段是A) t *i=NULL; B) float *f=NULL;scanf("&d",f); *f=10.5;C) char t="m", *c=&t; D) long *L;*c=&t; L=‘\0’;(30) 有以下程序#inc1ude <stdio.h>main(){ printf("%d\n", NULL); }程序运行后的输出结果是A) 0 B) 1 C) -1 D) NULL没定义,出错(31) 已定义c为字符型变量,则下列语句中正确的是A) c=‘97’; B) c="97"; C) c=97; D) c="a";(32) 以下不能正确定义二维数组的选项是A) int a[2][2]={{1},{2}}; B) int a[][2]={1,2,3,4};C) int a[2][2]={{1},2,3}; D) int a[2][]={{1,2},{3,4}};(33) 以下选项中不能正确把c1定义成结构体变量的是A) typedef struct B) struct color cl{ int red; { int red;int green; int green;int blue; int blue;} COLOR; };COLOR cl;C) struct color D) struct{ int red; { int red;int green; int green;int blue; int blue;} c l; } c l ;(34) 以下能正确定义一维数组的选项是A) int num []; B) #define N 100Int num [N];C) int num[0..100]; D) int N=100;int num[N];(35) 下列选项中正确的语句组是A) char s[8]; s={"Beijing"}; B) char *s; s={"Beijing"};C) char s[8]; s="Beijing"; D) char *s; s="Beijing";(36) 已定义以下函数fun (int *p){ return *p: }该函数的返回值是A) 不确定的值B) 形参p中存放的值C) 形参p所指存储单元中的值D) 形参p的地址值(37) 下列函数定义中,会出现编译错误的是A) max(int x, int y,int *z) B) int max(int x,y){ *z=x>y ? x:y; } int z ;z=x>y ? x:y;return z ;}C) max (int x,int y) D) int max(int x,int y){ int z; { return(x>y?x:y) ; }z=x>y?x:y; return(z);}(38) 有以下程序#include <stdio.h>#define F(X,Y) (X)*(Y)main (){ int a=3, b=4;printf("%d\n", F(a++,b++));}程序运行后的输出结果是A) 12 B) 15 C) 16 D) 20(39) 有以下程序fun(int a, int b){ if(a>b) return(a);else return(b);}main(){ int x=3, y=8, z=6, r;r=fun (fun(x,y), 2*z);printf("%d\n", r);}程序运行后的输出结果是A) 3 B) 6 C) 8 D) 12(40) 若有定义:int *p[3];, 则以下叙述中正确的是A) 定义了一个基类型为int的指针变量p,该变量具有三个指针B) 定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针C) 定义了一个名为*p的整型数组,该数组含有三个int类型元素D) 定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素(41) 以下程序中函数scmp的功能是返回形参指针s1和 s2所指字符串中较小字符串的首地址#include <stdio.h>#include <string.h>char *scmp(char *s1, char *s2){ if( strcmp (s1, s2<0)return(s1);else return(s2);}main (){ int I; char string[20], str[3][20];for(i=0;i<3;i++) gets(str[i]);strcpy(string,scmp(str[0],str[1]));/*库函数strcpy对字符串进行复制*/strcpy(string,scmp(string,str[2]));printf("%s\n",string);}运行时依次输入:abcd、abba和abc三个字符串,则输出结果为A) abcd B) abba C) abc D) abca(42) 有以下程序struct s{ int x,y;} data[2]={10,100,20,200};main (){ struct s *p=data;printf("%d\n",++(p->x));}程序运行后的输出结果是A) 10 B) 11 C) 20 D)21(43) 有以下程序段main(){ int a=5, *b, **c;c=&b; b=&a;……}程序在执行了c=&b:b=&a;语句后,表达式:**c的值是A) 变量a的地址B) 变量b中的值C) 变量a中的值D) 变量b的地址(44) 有以下程序#include <string.h>main(){ char str[][20]={"Hello","Beijing"}, *p=str;printf("%d\n",strlin(p+20));}程序运行后的输出结果是A) 0 B) 5 C) 7 D) 20(45) 已定义以下函数fun(char *p2, char *p1){ while((*p2=*p1)!=‘\0’){p1++;p2++; } }函数的功能是A) 将p1所指字符串复制到p2所指内存空间B) 将p1 所指字符串的地址赋给指针p2C) 对p1和p2两个指针所指字符串进行比较D) 检查p1和p2两个指针所指字符串中是否有‘\0’(46) 有以下程序main(){ int x=3, y=2,z=1;printf("%d\n",x/y&~z);}程序运行后的输出结果是A) 3 B) 2 C) 1 D) 0(47) 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为A) 0 B) 1 C) -1 D) 一个非0值(48) 下列关于C语言数据文件的叙述中正确的是A) 文件由ASCII码字符序列组成,C语言只能读写文本文件B) 文件由二进制数据序列组成,C语言只能读写二进制文件C) 文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D) 文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件(49) 有以下程序main(){ int a[3][3], *p, i;p=&a [0][0] ;for ( i=0 ; i<9 ; i++) p[i]=i+1;printf("%d\n",a[1][2]); }程序运行后的输出结果是A) 3 B) 6 C) 9 D) 2(50) 有以下结构体说明和变量定义,如图所示,指针p 、q 、r 分别指向一个链表中的三个连续结点。