计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机软件水平考试
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
程序员(初级)
信息系统项目管理师(高级)
系统分析师(高级)
系统架构设计师(高级)
网络规划设计师(高级)
系统规划与管理师(高级)
软件评测师(中级)
软件设计师(中级)
网络工程师(中级)
多媒体应用设计师(中级)
嵌入式系统设计师(中级)
电子商务设计师(中级)
系统集成项目管理工程师(中级)
信息系统监理师(中级)
信息安全工程师(中级)
数据库系统工程师(中级)
信息系统管理工程师(中级)
软件过程能力评估师(中级)
计算机辅助设计师(中级)
计算机硬件工程师(中级)
信息技术支持工程师(中级)
程序员(初级)
网络管理员(初级)
信息处理技术员(初级)
电子商务技术员(初级)
信息系统运行管理员(初级)
网页制作员(初级)
多媒体应用制作技术员(初级)
PMP项目管理员资格认证
程序员应用技术
程序员基础知识
程序员应用技术
问答题【问题2】 设“程序员考试大纲”标准书号前9个数字为7-302-08493,请写出其校验码。
进入题库练习
问答题【说明】设M叉树采用列表法表示,即每棵子树对应一个列表,列表的结构为:子树根结点的值后跟用“()”括起来的各子树的列表(若有子树的话),各子树的列表间用“,”分隔。例如,如下图所示的三叉树可用列表a(b(c,d),e,f(g,h,i))表示。本程序根据输入的列表生成一棵M叉树,并由M叉树再输出列表。【函数】#include#include#defineM3/*三叉树*/typedefstructnodeintval;structnode*subTree[M];NODE;charbuf[255],*str=buf;NODE*d=NULL;NODE*makeTree()/*由列表生成M叉树*/intk;NODE*s;s=(1);s->val=*str++;for(k=0;k<M;k++)s->subTree[k]=NULL;if(*str=='(')k=0;dostr++;s->subTree[k]=(2);if(*str==')')str++;break;k=k+1;while((3));returns;voidwalkTree(NODE*t)/*由M叉树输出列表*/inti;if(t!=NULL)(4);if(t->subTree[0]==NULL)return;putchar('(');for(i=0;i<M;i++)(5);if(i!=M-1putchar(')');voidmain()printf("Enterexp:");scanf("%s",str);d=makeTree();walkTree(d);putchar('/n');
进入题库练习
问答题阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。[说明]两个包含有限个元素的非空集合A、B的相似度定义为|A∩B|/|A∪B|,即它们的交集大小(元素个数)与并集大小之比。以下的流程图计算两个非空整数集合(以数组表示)的交集和并集,并计算其相似度。已知整数组A[1:m]和B[1:n]分别存储了集合A和B的元素(每个集合中包含的元素各不相同),其交集存放于数组C[1:s],并集存放于数组D[1:t],集合A和B的相似度存放于SIM。例如,假设A={1,2,3,4},B={1,4,5,6},则C={1,4},D={1,2,3,4,5,6},A与B的相似度SIM=1/3。[流程图]
进入题库练习
问答题试题七(共15分)阅读以下应用说明以及用VisualBasic编写的程序代码,将应填入(n)处的字句写在答题纸的对应栏内。[应用说明]某应用程序用于监测某种设备的工作温度(20~200度),其运行窗口中,包括一个温度计(矩形形状shpMeter)以及其中指示当前设备温度的水银柱(矩形形状shpT),文字标签标记了温度刻度;另有一个图片框picCurve,用于动态描述检测到的温度曲线(用户见到的曲线与水银柱等高变化);命令按钮“开始检测”(cmdStart)用于启动温度检测,命令按钮“暂停检测”(cmdStop)用于暂停检测。矩形形状shpT(水银柱)属性visible初始设置为不可见,属性Filltype设置为solid(实心),FillColor设置为红色;图片框picCurve的属性AutoRedraw设置为True;再创建一个定时器TimT,属性Enabled初始设置为False(不起作用),属性Interval(定时间隔)设置为500毫秒。为模拟设备温度的检测,程序中利用了(0,1)之间均匀分布的伪随机数获得[20,200]之间的随机温度T。为了便于在图片框picCurve中绘制曲线,程序中对该图片框建立了坐标系统,左上角为原点(0,0),水平向右方向为X轴,垂直向下方向为Y轴,右下角坐标为(50,180)。为了便于观察记录的温度值,图片框中从上到下创建了5条水平线Ls(i),i=0,1,…4,并在程序中按等间隔排列进行位置设置。程序中每隔半秒算出曲线点(x,y),其中x=0,1,2,…,再用直线段连接各相邻曲线点形成温度曲线。[VisualBasic程序代码]Dim(1)AsInteger'声明全局变量PrivateSubCmdStart_Click()TimT.Enabled=TrueShpT.Visible=TrueEndSubPrivateSubCmdStop_Click()TimT.Enabled=FalseEndSubPrivateSubForm_Load()Dimi,HAsIntegerPicCurve.Scale(0,0)-(50,180)'设置图片框坐标系:左上角-右下角H=30'H等于图片框高度的六分之一Fori=0To4'设置5条水平线Ls(i)的位置Ls(i).X1=0'Ls(i)起点横坐标Ls(i).Y1=H*(2)'Ls(i)起点纵坐标Ls(i).X2=50'Ls(i)终点横坐标Ls(i).Y2=Ls(i).Y1'Ls(i)终点纵坐标Ls(i).BorderColor=&HC0C0C0'设置水平线颜色Nextix=0'设置曲线坐标初值EndSubPrivateSubtimT_Timer()DimT,HAsInteger'T为即时温度,H为图片框中温度点显示高度T=Int(Rnd*181)+20'模拟随机产生设备温度(20~200度)'按当前温度显示水银柱H=ShpMeter.Height*(3)'算出水银柱的高度ShpT.Top=(4)-H'设置水银柱顶部位置ShpT.Height=H'设置水银柱的高度'绘制温度曲线y=(5)'算出曲线上当前点的纵坐标Ifx=51Then'当超出图片框时PicCurve.Cls'清除图片框内以前画的曲线x=0'设置重画曲线的初值ElseIfx>0Then'除左边点外PicCurve.Line(x-1,Lasty)-(x,y),vbRed'由前1点到当前点画红色线段EndIfx=x+1'准备下一点坐标Lasty=y'保存当前坐标供下次使用EndSub
进入题库练习
问答题试题八(15 分,每空3 分) 阅读以下说明和Java 源程序,将应填入(n) 处的字句写在答题纸的对应栏内。 【说明】 以下程序的功能是计算三角形、矩形和正方形的面积并输出。 程序由5 个类组成:AreaTest 是主类,类Triangle、Rectangle 和Square 分别表示三角形、矩形和正方形,抽象类Figure 提供了一个计算面积的抽象方法。 【程序】 public class AreaTest{ public static void main(String args[]) { Figure[] figures={ new Triangle(2,3,3), new Rectangle(5,8), new Square(5) }; for (int i=0; i
进入题库练习
问答题【函数2.1说明】 有1、2、3、4四个数字,输出由这些数字组成的互不相同且无重、复数字的三位数。 【函数2.1】 main() { int i,j,k; printf("/n"); for({{U}} (1) {{/U}}) /*以下为三重循环*/ for(j=1; j<5;j++) for (k=1;k<5;k++) { if ({{U}} (2) {{/U}}) /*确保i, j, k 三位互不相同*/ printf("%d,%d,%d/n",i,j,k); } } 【函数2.2说明】 计算并输出100之内的素数,每行输出10个,超过10个则换行。 【函数2.2】 #include <stdio.h> #include "math.h" #define N 101 main() { int i,j,line,a[N]; for(i=2;i<N;i++){{U}} (3) {{/U}}; for(i=2;i<sqrt(N);i++) for(j=i+1;j<N;j++) { if(a[i]!=0 } printfC/n"); for(i=2,line=0;i<N;i++) { if(a[i]!=0) { prinff("%5d",a[i]); {{U}} (5) {{/U}}; } if(line==10) { prinff("/n"); line=0; } } }
进入题库练习
问答题[说明] 本程序接收输入的学生信息,包括学号、姓名、成绩,原样输出信息并计算学生的平均成绩。其中学生类Stud除了包括no(学号)、name(姓名)和grade(成绩)数据成员外,还有两个静态变量 sum和num,分别存放总分和人数,另有一个构造函数、一个普通成员函数disp()和一个静态成员函数avg()用于计算平均分。 [Java代码] public class Stud { public int no; public String name; public double grade; public {{U}}(1) {{/U}} double sum=0; public static int num=0; public Stud(int no,String name,double grade) { this.no = no; this.name = name; this.grade = grade; this.sum={{U}} (2) {{/U}}; {{U}} (3) {{/U}}; } public static double avg(){ return {{U}}(4) {{/U}}; } public void disp(){ System.out.println(this.no+"/t"+this.name+"/t"+this.grade); } public static void main(String[] args) { Stud []students = {new Stud (1,"Li", 81), new Stud(2,"Zhao",84.5), new Stud(3,"Zhang", 87)}; System.out.pfintln("no/tname/tgrade"); students[0].disp(); students[1].disp(); students[2].disp(); System.out.println("avg="+{{U}} (5) {{/U}}); } }
进入题库练习
问答题[说明] 函数encode()和decode()分别通过参数传递实现对字符串的变换和复原,返回值均为处理以后的字符串长度。变换函数encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串: (1)若已知字符串的当前字符不是数字字符,则复制该字符于新字符串中; (2)若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它复制到新字符串中; (3)若已知字符串的当前字符是一个数字字符,并且还有后继字符,设该数字值为n,则将其后继字符重复复制n+1次到新字符串中; (4)以上述一次变换为一组,在不同组之间另插入一个下划线‘_’用于分隔。 例如:encode()函数对字符中26a3t2的变换结果为666_a_tttt_2。 函数decode()用于经函数encode()处理的字符中,即复制不连续相同的单个字符,而将一组连续相同的字符(不超过10个)变换成一个用于表示重复次数的数字符和一个重复出现的字符,并在复原过程中掠过变换函数为不同组之间添加的一个下划线字符。 注:假定调用变换函数encode()时的原始字符串中不包含下划线字符。 [函数] int encode(char *instr,char *outstr) { char *ip, *op,c; int k,n; ip=instr; op=outstr; while ( * ip) { if(*ip>='0' c={{U}} (1) {{/U}}; for (k=0;k<n;k++) *op++=c; } else *op++=*ip; {{U}}(2) {{/U}}; ip++; } if (op>outstr) {{U}}(3) {{/U}}; *op='/0'; {{U}}(4) {{/U}}; } int decode(char *instr,char *outstr) { char *ip,*op,c; int n; ip=instr; op=outstr; while ( *ip) { c=*ip; n=0; while( *ip==c n++; } if(n>1) *op+ + ='0'+n-1; * op++=c; if(*ip=='_') ip++; } *op='/0'; {{U}} (4) {{/U}}; }
进入题库练习
问答题[说明] 以下程序的功能是统计学生成绩,包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前百分之七十的学生定为合格(PASS),而后百分之三十的学生定为不合格(FAIL)。例如,当输入4名学生的姓名和成绩“Alice 67 Mary 90 Tom 56 John 88”后,程序的执行结果如下: 姓名 成绩 合格否 Mary 90 PASS John 88 PASS Alice 67 FAIL Tom 56 FAIL[C++程序]#include <stdio.h>#include <string.h>#define N 10class student protected: char name[10]; int deg; public: void setname(charna[]) strcpy(name,na); char * getname() return name; void setdeg(int d) deg= d; int getdeg()return deg;;class compute int ns; student na[N]; public: void getdata(); void sort(); void disp();;void compute::getdata() int i,tdeg; char tname[10]; printf("输入学生人数:"); scanf("%d", printf("输入学生姓名和成绩:/n"); for(i=0;i<ns;i+ +) scanf("%s%d",tname, (1) ; na[i].setdeg(tdeg); void compute::sort() int i,j,pick; (2) ; for(i=0;i<ns-1;i+ +) pick=i; for(j=i+1;j<ns;j+ +) if(na[j].getdeg()>na[pick].getdeg()) (3) ; temp=na[i]; na[i]=na[pick]; na[pick]=temp; void compute::disp() int cutoff,i; printf("RESULT/n"); printf("姓名 成绩 合格否/n"); cutoff=ns*7/10-1; for(i=0;i<ns;i+ +) printf("%-6s%3d", (4) ); if( (5) ) printf("/tPASS/n"); else printf("/tFAIL/n");void main() compute obj; obj.getdata(); obj.sort(); obj.disp();
进入题库练习
问答题[说明]我国现行使用的公民身份证号码有两种,分别遵循两个国家标准:〖GB11643-1989〗和〖GB11643-1999〗。〖CB11643-1989〗中规定的是15位身份证号码,排列顺序从左至右依次为:六位数字地址码,六位数字出生日期码,三位数字顺序码,其中出生日期码不包含世纪数。〖GB11643-1999〗中规定的是18位身份证号码,是特征组合码,它由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。其中,校验码C由本体码按如下过程求得:(1)计算校验码和S=a18W18+a17W17+…+a2w2,其中i表示18位身份证号,码每一位的序号,从右至左,最左侧为18,最右侧为1;ai表示身份证号码第i位上的号码;wi表示第i位上的权值,其值为2i-1模11的结果;(2)计算校验码值R,其值为校验和模11的结果;(3)根据下面对应关系找出校验码C:R012345678910C10X98765432由上述计算过程可以看出,18位身份证号码中可能包含非数字的字母X(代表数字10)。下面的应用程序基于这一算法实现了身份证号码的升位查询:在开发过程中,显示新旧两种身份证号码的文本框(TextBox)分别名为Text1和Text2,“号码升位”按钮(CommandButton)名为Command1。代码中使用到的字符串函数及功能说明如下:(1)Len(s):获取字符串s的长度;(2)Left(s,1):返回字符串s左端长度为1的子串;(3)Right(s,1):返回字符串s右端长度为1的子串;(4)Mid(s,p,1):返回字符串s从第P个字符开始长度为1的子串。[VisualBasic代码]’计算18位身份证号码PrivateSubCommandl_Click()DimcodeAsStringDimSAsIntegercode=Textl.Text'提取15位身份证号码IfLen(code)<>15ThenMsgBox"ID号码长度不正确,请检查!"{{U}}(1){{/U}}EndIfcode=Left(code,6)+"19"+{{U}}(2){{/U}}(code,9)'年份升位S=0Fori=18To2Step-1'计算校验码和S=S+Clnf({{U}}(3){{/U}})*(2^(i-1)Mod11)Nexti{{U}}(4){{/U}}'计算校验码值SelectCaseS'确定校验码Case0:code=code+"1"Case1:code=code+"0"Case2:code=code+"X"CaseElse:code=code+CStr({{U}}(5){{/U}})EndSelectText2.Text=code'显示18位身份证号码EndSub
进入题库练习
问答题[C语言函数] intB_s[DAYS+1]; /*记录成本最小的生产计划,B_s[0]不用,DAYS定义为天数*/ double find_a_plan(FILE *int) { iht P_nm[DAYS+1],acc_req[DAYS+1]; int i,tag = 0,acc_qty = 0; double mincost = 1.0e20,cost_Produce,cost_Keep; for(i = 1;i <= DAYS; i++) { /*第i天时的累计零件需求量存入acc rcq[i] */ acc_qty += data[i].Qty_req; acc_req[i] = acc qty; } while (!feof(int)) { for(i = 1; i <= DAYS; i++ )/*读入一个生产计划,第i天的产量存入P_num[i]*/ if (!feof(inf)) fseant[inf,"%d", tag = 0; cost_Produce = 0; cost_Keep = 0; for(i = 1,{{U}} (1) {{/U}};i <= DAYS; i++){ /*考查当前的生产计划*/ acc qty += P_num[i]; /* acc_qty 计录到第i天时的累计零件生产量*/ if (acc_qty < acc_req[i]) {/*当前生产计划不能满足需求*/ tag = 1; break; }/*if*/ cost_Produce += {{U}}(2) {{/U}}; /*计算当前生产计划的总需件价格*/ cost_Keep += ({{U}} (3) {{/U}}) * data[i],Keeping_fee; }/*for*/ if({{U}} (4) {{/U}}) /* 若当前生产计划不可行,则继续读取下一计划*/ continue; if({{U}} (5) {{/U}}) { /*记录成本更小的生产计划*/ mincost = costProduce + cost_Keep; for(i = 1; i <=DAYS; i++) B_s[i] = P num[i]; }/*if*/ }/*while*/ return mincost; }
进入题库练习
问答题试题三(15分,每空3分)阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。[函数说明]函数movetoend(LinkedListLa,inti)的功能是:将线性表A的第i个元素移到表尾。若移动成功,则返回0,否则返回-1。线性表A采用带头结点的单链表表示,La为表A的头指针,如下图所示。链表结点的类型定义为:typedefstructnode{intkey;structnode*next;}*LinkedList;[函数]intmovetoend(LinkedListLa,inti){LinkedListp,q,prep;intk=1;p=La->next;prep=La;while((1)){/*查找第i个元素并使指针p指向该结点*/prep=p;p=p->next;k++;}if(!p||k>i)return-1;if((2))/*第i个元素结点已经是表尾结点,则无需移动*/return0;q=p;while((3))q=q->next;/*查找表尾并使q指向表尾结点*/(4)=p->next;p->next=NULL;(5);return0;}
进入题库练习
问答题试题三 以下是与Visual Basic 开发应用有关的5 个问题。对每一个问题,请将解答填入答题纸的对应栏内。 (1) 在Visual Basic 中,工程文件、窗体文件和标准模块文件的扩展名是什么?请从下列选项中选择: prg、prj、exe、vbp、form、frm、win、fra、std、bas、vbs、vbm (2) 设某窗体上有一个命令按钮,其名称为CmdSave,运行时该按钮上显示有“保存(S)”字样的信息。为使热键ALT+S 与该命令按钮相关联,应该对按钮CmdSave 的Caption 属性设置什么样的属性值? (3) 设某窗口内有一个图像框Image1,以及两个命令按钮“放大”和“缩小”。单击“放大”按钮就会使该图像框的长和宽都放大10%;单击“缩小”按钮就会使该图像框的长和宽都缩小10%(该图像框的左上角不动)。请分别写出这两个命令按钮的单击事件过程中的程序代码。 (4) 为使某个单选按钮初始时默认被选中,在开发时应怎样做? (5) 若有语句Tmpval=MsgBox("非法操作!", vbOKCancel + vbCritical, "提示"),请简要描述程序运行时弹出的消息框的主要特征。
进入题库练习
问答题试题一(共15分)阅读以下说明和算法,完善算法并回答问题,将解答写在答题纸的对应栏内。[说明]假设以二维数组G[1..m,1..n]表示一幅图像各像素的颜色,则G[i,j]表示区域中点(i,j)处的颜色,颜色值为0到k的整数。下面的算法将指定点(i0,j0)所在的同色邻接区域的颜色置换为给定的颜色值。约定所有与点(i0,j0)同色的上、下、左、右可连通的点组成同色邻接区域。例如,一幅8×9像素的图像如图1-1所示。设用户指定点(3,5),其颜色值为0,此时其上方(2,5)、下方(4,5)、右方(3,6)邻接点的颜色值都为0,因此这些点属于点(3,5)所在的同色邻接区域,再从上、下、左、右四个方向进行扩展,可得出该同色邻接区域的其他点(见图1-1中的阴影部分)。将上述同色区域的颜色替换为颜色值7所得的新图像如图1-2所示。[算法]输入:矩阵G,点的坐标(i0,j0),新颜色值newcolor。输出:点(i0,j0)所在同色邻接区域的颜色置换为newcolor之后的矩阵G。算法步骤(为规范算法,规定该算法只在第七步后结束):第一步:若点(i0,j0)的颜色值与新颜色值newcolor相同,则(1);第二步:点(i0,j0)的颜色值→oldcolor;创建栈S,并将点坐标(i0,j0)入栈;第三步:若(2),则转第七步;第四步:栈顶元素出栈→(x,y),并(3);第五步:1)若点(x,y-1)在图像中且G[x,y-1]等于oldcolor,则(x,y-1)入栈S;2)若点(x,y+1)在图像中且G[x,y+1]等于oldcolor,则(x,y+1)入栈S;3)若点(x-1,y)在图像中且G[x-1,y]等于oldcolor,则(x-1,y)入栈S;4)若点(x+1,y)在图像中且G[x+1,y]等于oldcolor,则(x+1,y)入栈S;第六步:转(4);第七步:算法结束。[问题]是否可以将算法中的栈换成队列?回答:(5)。
进入题库练习
问答题【说明】 本程序输出10000之内的所有完全数。完全数是指等于其所有因子和(包括1,但不包括这个数本身)的数。例如:6=1×2×3,6=1+2+3,则6是一个完全数。 【程序】 public class PerfectNum Public static void main(String args[]) int count=1; for(int i=1; i<10000; i++) int y=0; for(int j=1; j<i; j++) if( (1) ) y= (2) if( (3) ) System.out.print( (4) +String.valueOf('/t')); (5) If(count%3==0) System.out.printin();
进入题库练习
问答题[Java代码]
进入题库练习
问答题
进入题库练习
问答题阅读以下说明和C函数,将解答填入答题纸的对应栏内。 [说明] 函数del_substr(S,T)的功能是从头至尾扫描字符串S,删除其中与字符串T相同的所有子串,其处理过程为:首先从串S的第一个字符开始查找子串T,若找到,则将后面的字符向前移动将子串T覆盖掉,然后继续查找子串T,否则从串S的第二个字符开始查找,依此类推,重复该过程,直到串S的结尾为止。该函数中字符串的存储类型SString定义如下: typedef struct { char* ch; /*串空间的首地址*/ int length; /*串长*/ }SString; [C函数] void del_substr(SString* S, SString T) { iht i, j; if(S->length<1 ||T.length<1 ||S->length<T.length) return; i=0; /* i为串S中字符的下标*/ for (;;) { j =0; /*j为串T中字符的下标*/ while(i<S->length j++; } else { i={{U}} (1) {{/U}};j=0; /*i值回退,为继续查找T做准备*/ } } if({{U}} (2) {{/U}}){ /*在s中找到与T相同的子串*/ i={{U}} (3) {{/U}}; /*计算s中子串T的起始下标*/ for(k=i+T.length;k<S->length;k++)/* 通过覆盖子串T进行删除*/ S->ch[{{U}} (4) {{/U}}] =S->ch[k]; S->length={{U}} (5) {{/U}}; /* 更新S的长度*/ } else break; /* 串S中不存在于串T*/ } }
进入题库练习
问答题【函数2.1说明】 函数palindrome(char s[])的功能是,判断字符串s是否为回文字符串,若是,则返回0,否则返回-1。若一个字符串顺读和倒读都一样时,称该字符串是回文字符串,例如:“LEVEL”是回文字符串,而“LEVAL”不是。 【函数2.1】 int palindrome( char s[ ] ) char * pi, * pj; pi=s; pj=s+strlen(s)-1; while( pi<pjpj -- if( (2) )return -1; else return 0; 【函数2.2说明】 函数f(char * str,char del)的功能是:将非空字符串str分割成若干个子字符串并输出,del表示分割时的标志字符。 例如若str的值为“33123333435”,del的值为“3”,调用此函数后,将输出3个子字符串,分别为“12”、“4”和“5”。 【函数2.2】 void f( char * str, char del) int i ,j ,len; len = strlen (str) i=0; while(i < len) while( (3) )i++; /*忽略连续的标志字符*/ /*寻找从str[i]开始直到标志字符出现的一个子字符串*/ j=i+1; while(str[j] != del /*给找到的字符序列置字符串结束标志*/ printf("%s/t", (5) ;
进入题库练习
问答题[函数2.1说明] 下面程序的功能是计算x和y的最小公倍数。[函数2.1]main() int m,n,d,r; seanf("%d %d", if(m<n) r=m;m=n;n=r; (1) ; while (d%n! =0) (2) ; printf("%d/n",d);[函数2.2说明] 下述程序接收键盘输入,直到句点“.”时结束。输入的字符被原样输出,但连续的空格输入将转换成一个空格。[函数2.2]#include <stdio.h>main() char c,preChar='/0'; c = getchar(); while(c! = '.') if( (3) ) putchar(c); else if(preChar! =' ') putchar(c); (4) ; c= (5) ;
进入题库练习