2022年甘肃省庆阳市全国计算机等级考试C语言程序设计模拟考试(含答案).docx
2022年甘肃省庆阳市全国计算机等级考试C语言程序设计模拟考试(含答案)学校:班级:姓名:考号:一、2.填空题(10题)1 .关系模型的3类完整性指的是【】、参照完整性、用户定义的完整性。2 .以下程序的运行结果是ostruct exmp char name 10;int number ;);struct exmp test3=nWangXi 1 9 nQiYu2, nHuHua3; main()printf(n%c,%snn,test0.namel,test2.name+3); )3 .设x和y均为int型变量,且x=l, y = 2,则表达式2.0+y / x的值 为【】。4 .在关系数据库中,用来表示实体之间联系的是【o5 .以下程序运行后的输出结果是【】。#include < stdio.h > 例如,若字符串中的内容为*a*bc*def*g*,删除后,字符串中的内容则应当是a*bc*def*g* *。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。试题程序:#include<stdio. h=: >#include<conio. h>woid proc(char*st r)()void mainchar str81;printf(uEnter a string: nn);gets(str);proc(str):printf(nThe string after deleted: nn);puts(str); 26 .规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串 函数。例如,字符串中的内容为“*A*BC*DEF*G *",删除后,字符串中的内容应当是“ABCDEFG” o 注意:部分源程序给出如下。请勿改动maini)函数和其他函数中的任何内容,仅在函数fun的花括号 中填入你编写的若干语句。试题程序:#include<conio. h>#include<stdio . h>void fun(char a)(void main (char s81;print(nEnter a string: nn);gets(s):fun(S);printf(nThe string after deleted: nn);puts(s); 27 .请编写一个函数,用来删除字符串中的所有空格。例如,输入 abcdefgh,则输出为abcdefgho注意:部分源程序给出如下。请勿改 动main ()函数和其他函数中的任何内容,仅在函数proc ()的花括号 中填入所编写的若干语句。试题程序:£ include <»ld。h> 3 ifictudr <ctypc- h> 8 include Venitk h> # mrludr Vadhh b> 、pid prwXrhuf 川八chtr ”181 »ynten( <CUi* > t pruitff * Input «<rmgt ") RHMjitr” (KltB< Mt) I proc« mt ).printfC * <tri 1 r An* tr) i28 .编写函数fun,其功能是:求出11000之间能被7或11整除,但不 能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过 n返回这些数的个数。注意:部分原程序在文件PROGLC中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括 号中填入你编写的若干语句。#inrlu<ir < 7dio. h >void fnn( ini a. int n)main()I ini aa( 100019 n9 k , void NONO();FunC 叫 &n );f<>r ( k « 0 : k < n k 4 )附(k 1)% 10 = = 0)printf(Hn°); elne printf( *%5(1* t ank);NONO();void NONO( )5"本南散用厂打开文件.输入测试数据,调用fun函数,谕出数据,关闭文件。/int aa( 1000 ) e n« k ;, FILE efp .fp « foprn( w nut.(UtMt" w1, ); fun( oh, &n );fr>r( k = 0;k <n;k44 )if(k 1)% 10 a « 0)fpnmf(rpt “ n” );<?b*c fprintf( fp» %5d” aa; k );f<?Vpc( fp): I29.m个人的成绩存放在score数组中,请编写函数proc (),它的功 能是:将高于平均分的人数作为函数值返回,将高于平均分的分数放 在up所指的数组中。例如,当score数组中的数据为100, 80, 76, 60, 59, 48, 43, 35, 59时,函数返回的人数应该是4,叩中的数据 应为100, 80, 76, 95o注意:部分源程序给出如下。请勿改动 main ()函数和其他函数中的任何内容,仅在函数proc ()的花括号 中填入所编写的若干语句。试题程序:,sixludeh>3 include Vcocikx b>S if>du<ic <'ui«O. hS> =include <Mnng. h> mt proc(m< *core' *«ifi9 m« int up- j>一H于平均分的人ItviMt! mai4i<)ial i0 up(9jiini Muref 92* < IOO<BO«7H«6O«59S 48»4)*3S«0ShnyntrmC *( ! Ji* ) procC scorr« 9 up) printh *n 叩 lo the <vcra<c mrv «rr:»n) tloc(,-0日<1>一十 十)prm.dXd upij)430.请编写函数proc(),该函数的功能是:将M行N列的二维数组中的 字符数据,按列的顺序依次放到一个字符串中。例如,若二维数组中 的数据为:WWWSSSHHHIII则字符串中的内容应是 WSHIWSHIWSHIo注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括 号中填人所编写的若干语句。试题程序:=include Vad,d b>* define M 4修 drhx N 3void proc< char < ,N:clur b> raid mam( >ch«f 4100j>wM"V. 'W''W "s''s i.Chhf<T>h iat i»|i printfCeTht matn«tn*)i fc>r(iOy Mgi* ) ( ) prmt<( * %* pnmf( ne)ipfoc< w»a) t pncttfCeTKc A zrwwu'D, puts(a)t |>nntf< -nn") i四、2.程序修改题(10题)31 .下列给定程序中,函数fun()的功能是:将长整型数中每一位上为偶 数的数依次取出,构成一个新数放在冲。高位仍在高位,低位仍在低位。 例如,当s中的数为的65为42时,t中的数为8642。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main,数,不得增行或删行,也不得更改程序的结构。 试题程序:#include < conio.h > #include < stdio.h >void fun(long s,long *t) int d; long sl=l;*t=0;while(s > 0) d=s%10;/k! kJ>k!>k!> kT> k!> / .卜/卜卜、/、,、-j、卜 卜力、,、-卜.6.、,卜 r7> "、rr*rJ,rT> /if(d%2=0)*t=d*sl+*t;sl*=10)/ vt*vl>vl> k!> vf>kI> vl> Kt*vL» vt* / .卜 、卜一、卜 «、«、,卜“卜 #J、卜 rj、« ri* *J、"、rr* « rj、r,/s=10;)main () long s,t;clrscr();printf(nnPlease enter s: "); scanf(n%ld&s);fun(s,&t);printf(nThe result is :%ldnn,t);)32 .给定程序MOD11 . C中函数fun的功能是:计算n的5次方的值(规 定n的值大于2、小于8),通过形参指针传回主函数;并计算该值的个 位、十位、百位上数字之和作为函数值返回。例如,7的5次方是16807,其低3位数的和值是15。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!234567linclude <stdio.h>include <math.h> int fun(int n ,int *value) int drs,i;d*0; s-0; for(i«l; i<=5; i+),d,dn;8 i*value-d;9 :for(i»l; i<«3; i+)10111213 s-sd%10;wf0uncj* */14return s;d«d10;15161718212223main () int n, sum, v; do19 ; printf(wnEnter n (2<n<8):;! scanf(w%dwrin);)20 i while(n<»2I In>3);sumfun(n,6v);printf(wnnThe result:n value* %d sum«%dnn,*/ vr sum);)33 .下列给定程序中,函数fun()的功能是:根据整型形参n,计算如下 公式的值。Al=l, A2=1/(1+A1), A3=l/(1+A2),,An=(l/(1+A(n-1)例如,若P=10,则应输出0.617977。请改正程序中的错误,使它能得出正确的结果。注意:不要改动mah函数,不得增行或删行,也不得更改程序的站构. 试题程序:#include < conio.h >#include < stdio.h >/ kL* vl* vl* kL* kL* *1* k!> vL* kL* vL*1 vL*vl* vL«k1> vl* vl* vl* *I>k£* /不不不不不不不不不不不不不不tciind不不不不不不不不不不不不不不不不不不不不/iht fun(iht n) float A=l;inti;/ k|> k!> k!>、!> kJ> k!>k1> kJ> kJ> k!> kJ>1 kJ> sl> kI> k!> k!> kJ> kJ> k!> kI> sj> kJ> k|> k!> k!> k!> k!>kJ> k!> /小个个个个个个个个个个个个个re】n个个个个小个个个小个个个个小个个个个个个/for(i=2;i < n;i+)A=1.0/(i+A);return A;)main () int n;clrscr ();printf(nnPlease enter n: ");$canf(n%d&n);printf (nA%d=%lfnn, n, fun (n);)34 .下列给定程序中,函数fun()的功能是:从字符串s中,删除所有小写字母C。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.试题程序:# include < stdio.h > void fun(char *s)int i,j;for(i=j=0; si != !0!;i+)if(siH !='c')/7" 7" 1* /,!、.、-J、-J.吗.,J. ,J、,卜-J. q. /S j =S i;/ kL* vl* vl* kL* kL* *1* k!> vL* kL* vL*1 vL*vl* vL« vL* kL# kL#/不不不不不不不不不不不不不不tciind不不不不不不不不不不不不不/si=,0,;)main () char s80;printf (nnEnter a string:");gets (s);printf(HThe original string:")puts (s);fun (s);printf(nThe string after deleted:");puts (s); printf ("nn "):35 .下列给定程序中,函数fun()的功能是:先从键盘上输入一个3行3列的矩阵的各个元素的值,然后输出主对角线元素之和。请改正函数fun()中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include < stdio.h > int fun() int a3 3,sum;intij;/ *.1>7,7,*1>/小小不不不不小不不不不小不tciind不不不不不不不不不不不不不不/sum=l;for (i=0;i < 3;i+) for (j=O;j < 3;j+)/I/不不不不不不不不不不不不不tci inc不不不不不不不不不不不不不不/ scanf(n%dH,aij);for(i=0;i < 3;i+) sum=sum+aii;printf(HS um=%dn", sum); )main() fun();main() int p=30;printf("dn(p/3 > 0 ? p/10:p%3);6 .若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则 表达式pow(y,fabs(x)的值为o7 .若x、y和z均是int型变量,则执行下面表达式后的x值为。 x=(y=4)+(z=3)8 .以下定义的结构体类型拟包含两个成员,其中成员变量info用来存 入整形数据;成员变量link是指向自身结构体的指针,请将定义补充完 整。struct node int info ;link ; ;9 .下列程序的输出结果是【】。main() int a=l, b=2 ;a = a+b;b = a-b, a = a-b;printf(n%d, %dnH, a, b); io.下面的语句要使指针P指向一个double类型的动态存储单元,请填36.给定程序M0D11 . C中函数fun的功能是:计算n!。例如,给n输入5,则输出120 . 000000。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1234567891011121314151617*include <stdio.h> double fun (int n) double result - 1.0 ; /found if n » » 0 return l.Q ;while(n >1 && n < 170) /育found*/ result * n- return result ; main () (int n ;printf(wInput N:H); scanf(H%dwr &n);printf(wnn%d! »%lfnnwrnr fun(n); 37 .下列给定程序中,函数fun()的功能是:从字符串s中,删除所有大写字母F。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include < stdio.h >void fun(char *s) int i, j;/I/不不不不不个个不不个个不不ci ni个不不不不不个个不不不个个不/for(i=j=0; si!= ,0,;i+)if(si != F)/kL*1 si*vl* vt*1 Kt*/不不不不不不不不不不不不不tmind不不不不不不不不不不不不不不/sj=si;sj='O'main () char s80;printf(nnEnter a string:");gets(s);printf(HThe original string:");puts(s);fun(s);printf(nThe string after deleted: n);puts(s);printf(unn n);)38 .下列给定程序中,函数fun()的功能是:通过某种方式实现两个变量 值的交换,规定不允许增加语句和表达式。例如变量a中的值原为8, b中的值原为3,程序运行后a中的值为3, b中的值为8。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序:#include < conio.h >#include < stdio.h >int fun(int *x, int y)(int t ; /*1 kK* vt*/不不不不不不不不不不不不不不不Tei不下不不不不不不不不下不不不/t=x ;x=y ;return(y);)main()int a=3, b=8;clrscr();printf("%d %dn", a, b);b=fun(&a, b);printf("%d %dn" , a, b); )39 .下列给定程序中,函数fun()的功能是:计算整数n的阶乘。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include < stdio.h > double fun(int n)(double result,。;whil (n > l&&n < 170)/ vL*kL*kL*1 kL* kL*vL* vL*kV* kL* vL*kL*/不不不不(、不不不不不不不不不tciind不不不不不不不不不不不不,不不不不不不不/ result*=n;/1*IK.t> /个小小不不不不不不不不不小不tciind不不不小不不不不不不不不不不不不不不不不/return;main()int. n;clrscr();printf(nEnter an integer: ");scanf(u%d&n);printf(nnn%d!=%lgnn fun(n);40 .下列给定程序中,函数fun()的功能是;求S的值。设 S=(22/l*30)*(42/(3*5)*(62/(5*7)* *(2k)2/(2k-l)*(2k+l)例如,当k为10时,函数的值应为1.533852。请改正程序中的错误,使它能得出正确的结果。注童;不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include< conio. h >#include< stdio. h >#include< math.h >/ >1>kL*,1 si* kL* kL* *1*kL>/个个个个个个个个个不个个个个Tcnnc个个个个个个不个个个个不个个个/fun (int k) iht n; float s, w, p, q;n=l;s=1.0;while (n < =k) w=2. 0*n; p=w-1.0; q=w+1.0; s=s*w*w/p/q; n+;/I/不不不不不不不不不不不不不不不Tei inc不不不不不不不不不不不不不不/return s)main() clrscr ();printf(n%fn fun (10);)五、程序改错题(2题)41 .下列给定程序中,proc ()函数的功能是:根据形参n。计算下列公 式的值:t=l-l/2+1/3-1/4+ (-1) (n+1) /n 例如,若输入 6, 则应输出。.616667。请修改程序中的错误,使它能得到正确结果。注 意:不要改动main ()函数,不得增行或删行,也不得更改程序的结构。试题程序:* include <stdlib, h> 二 include <conio. h> It include Vstdio. h> /* found int proc(int n) (double t- 1. 0 j- 1.0, int ii « found * * »for(i= 1 ii<nii> + )<j= - 1 * return ts ) void main( > (int ns»ytem( "CLS") printf( unPk<ise enter 1 integer number:M);scanf( «&-n) iprintf( MnThe result is % 1 fnM . proc(n)i)42 .下列给定程序中,函数proc的功能是:先将字符串s中的字符按 顺序存放到t中,然后把S中的字符按正序连接到t的后面。例如,当 s中的字符串为 WXYZ时,贝I t中的字符串应为 WXYZWXYZo 请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结 构。试题程序:#include<stdlib . h>#include<conio . h>#include<stdio. h>#include<string. h>void proc(char*s, char*。(int i, si;sl=strlen(s);for(i=0; i<sl; i+)* * * * * * *ti=ssl;for(i=0; i<sl ; i+)tsl+i si;t2*sl=O0;void main(char s 100, t100;system("CLS");print(" nPlease enter string s:");scanf("%s", s);proc(s, t);printf("The result is: %s n", t);)六、操作题(2题)43 .有以下语句段:int nl=10,n2=20;printf(" ",nl,n2);要求按以下格式输出nl和n2的值:nl=10n2=20每个输出行从第一列开始,请填空。44 .请补充函数proc (),其功能是:计算并输出给定10个数的方差。例 如,给定的 10 个数为 12 .0, 9 .0, 26 .0, 5 .0, 6 .0, 31 .0, 9 .0, 3 . 0, 8.0, 18 . 0,输出为s=8 . 877500。注意:部分源程序给出如 下。请勿改动main ()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。试题程序:g include1 V »t<ig.i> =iiwlur V iimiiK. b> doublr proc« dijuiik x1 10double avg 6 0 double wO.Ob doutilr 1», 0.01 double* mIi(ocC i0”V 10”,+ > tn 1W= tutvi/101for(i-0.iV10ii+ + ) t?J Irriurn mi wid fviain()double IOj= (12. 0<9.0«2(4 0»S. 0«A. 0«3|. 0« 9,o. eq oj.oi ml iiprmtfC “The ortgtnai dau i»)n* >» for(iOii<IOgi + )pen”,轧Zr£i), peml( *nn*) (HOC( Rtt) ( prmtf( HlXne*»a) 参考答案1 .实体完整性实体完整性解析关系模型中的完整性是指数据库中数据 的正确性和一致性。为了维护数据库中数据与现实世界的一致性,关系 数据库的插入、删除、修改操作必须遵循3类完整性规则。关系模型的 3类完整性指的是实体完整性、参照完整性和用户定义的完整性。2 .auao a, uao解析:test是结构体数组,每个元素均可看作是一个结构体变量,主函数将结构体数组元素testO中的name域下标为1的元 素以字符形式输出,将结构体数组元素test2中的name域从地址 name+3开始以字符串的形式输出。3.4.0 或 44.0 或 44.关系关系解析:在关系数据库中,用关系也就是二维表来表示实体之 间的联系。5.33解析:(p/3 > 0? p/10 :p%3)是一个条件表达式。题中p=30, p/3 > 0 为真,所以p/10的结果3作为整个表达式的值。6.88解析:fabs函数功能是求x的绝对值,计算结果为double型。pow 功能是计算x的y次方的值,计算结果同样为double型。所以本题表达 式相当于2.0的3.0次方,结果为8.000000。7.77 解析:x=(y=4)+(z=3)等价于 y=4, z=3, x=y+z=4+3=7。8. struct node * struct node *解析:本题中的结构类型名为struct node,所 以空白处应填:struct node *o即定义一个指向自身的结构体指针。9.2110 .(double *)(double *)解析:本题考查强制类型转换。函数malloc的默 认返回是void*,若要使指针指向double类型,必须进行类型转换,类 型转换格式为:(数据类型*)o11 .A【答案】:A【知识点】:黑盒测试【解析】:黑盒测试也称功能测试或数据驱动测试,它完全不考虑程 序内部的逻辑结构和内部特征,只着眼于程序的外部结构,主要用来 检查程序功能是否按照需求规格说明书的规定正常使用。故选A。12 .A依据fun函数,可知其要实现的功能是将S中第(t+1)个元素以前的元 素逆置赋给数组P。由于fun中函数定义了静态变量仁3,因此,main 函数中调用函数fun(a, &x)时,就是要将数组a中前4个元素逆置赋 给数x,最后输出x数组。13 .AA选项中先计算逗号表达式的第1个表达式“2*x”,然后计算第2个 表达式“x+=2",即"x=x+2=4”,整个逗号表达式为第2个表达式的值4。 所以A选项正确。B选项中首先计算逗号表达式的第1个表达式“x+”,此时x为3 ;再计算第2个表达式“2*x=2*3=6",所以逗号表达式为第2 个表达式的值6OC选项中的表达式可以表示为“x=x*(l+x)=2*(l+2户6”。 D选项中的表达式可以表示为“x=x*(x+l尸2*3=6"。故本题答案为A选 项。14 .C15 .D解析:本题主要考查关于if语句的说明,if后面圆括号中的表达式,可 是任意合法的C语言表达式(如:逻辑表达式、关系表达式、算术表 达式、赋值表达式等),也可以是任意类型的数据(如:整型、实 型、字符型、指针型等。)16 .D本题考查if-else语句的使用。if-else语句可以在条件为“真”或为“假”时 执行指定的动作,由if引导条件为“真''时执行的操作;由else引导条 件为“假”时执行的操作。else语句要与上面最近的if语句进行匹配,空。p = malloc(sizeof(double);二、单选题(10题)11 .在黑盒测试方法中,设计测试用例的主要根据是A.程序外部功能B.程序内部逻辑C.程序数据结构D.程序流程图12 .下列程序的运行结果是()。#include<stdio. h>void fun(int*S, int*p) static int t=3 :*p=st;t;)void main int a=2, 3, 4, 5), k;int x;for(k=0, k<4, k+) fun(a, &x);printf("%d, ",x);A.5, 4, 3, 2B.2, 3, 4, 5 C.2, 2, 2, 2D.5, 5, 5, 5 如果要嵌套调用if-else语句,需要将嵌套部分用括起来,避免程序 报错。题目中给出了一个if语句和一个if-else语句,if-else语句为第 一个if语句的子语句。首先执行外层if语句,执行条件为x>y,由于 x=l, y=2,故该条件为假,不执行if的子语句,直接执行语句 printf("%dn", x+);,该语句先输出x的值,然后进行x+操作。x的 初始值为1,输出结果为1。17.A18.B本题考查函数调用时的参数传递。在执行函数func时,由于全局定义 了一个变量b,所以在函数体中执行b=2+l=3,最终t=2+3=5。19.C20.B每个C程序有且只有一个主函数main, C程序总是从main函数开始 执行,main函数后面的一对圆括号不能省略,main函数可以位于程序 的任意位置。函数不可以嵌套定义,但函数可以嵌套调用。21.1 doublefun(doublex,intn)23 inti;4doubles= 1.0,sl= 1.0;5for(i=l/i<=n;i+)6 si=si*i;/* 各项中的阶乘*/?s = s+pow(x,i)/si;/* 按公式求出*/ Returns ;10 程序定义了变量S1和s, si表示每项的分母(即各项的阶乘),S存放累 加和。循环语句控制累加的次数,在循环体中进行阶乘和累加操作, 将累加的结果存入S中。此处使用了求乘方函数pow(X, i),其含义是 求X的i次方的值。22.【解析】首先判断循环中n是否为素数,如果不是素数,求其平方根的 累加和,并返回计算结果,否则跳出判断循环。其中,对于平方根的求 解可以使用C语句中的sqrt()函数。23 .void proc(char*str)(charp=str:while(*p=*)p+;/ /通过P的移动来达到使P指向第一个不是*号的字符for(; *p!=0 ;p+, str+) / /把从第一个不是*号的字符放到a中*str=* P:*str=O ;/ /最后用0作为字符串结束标志)【解析】题目中要求将字符串中的前导*号全部删除首先将指针p移动 到第一个不是*的字符,将指针P之后的字符放入原来的字符串中,并 为新的字符串添加结束符。24 .【解析】要求出二维数组中最大元素的值,需要比较二维数组中每一个 元素的值。首先,定义变量max用来存放最大元素的值,将其初始化为 二维数组中第一个元素的值。然后将其与后面的每一个元素进行比较, 将二维数组中最大元素的值放到变量max当中,并将其返回给主函数。25 .ntvoid proc(char*str)nnnt nnntchar*p=str: nnntwhile(*p=*)p+;/ / 通过 P 的移动来达nnnt到使P指向第一个不是*号的字符nnntfor(; *p!=0 ; p+, str+) / /把从第一个nnnt不是*号的字符放到a中4nnnt*str=* P: nnnt*str= 0 ;/ /最后用0作为字符串结束标志nnntnnnt【解析】题目中要求将字符串中的前导*号全部删除首先将指针p 移动到第一个不是*的字符,将指针P之后的字符放入原来的字符串 中,并为新的字符串添加结束符。n26 .void fun(char*a) int i, j=0;for(i=0; ai!=O; i+)if(ai=*)aU+=ai;/ /若不是要删除的字符*则保留aj>0 ; / /最后加上字符串结束符0【解析】此题是删除字符串中的星号。思路是通过for循环完成对字 符串的遍历,通过if判断,找到不是“*”的字符,将其赋值到数组a中 星号前的位置,“if(ai!=*)”“ai+=ai,最后返回主函数将删除*后 的字符串输出即可。27 .【解析】根据题目中要求删除字符串中所有的空格,需要检查字符串中 的每一个字符。将不是空格的字符放入原来的字符串中,形成新的字符 串。在新的字符串的末尾加上结束符。28 .【考点分析】本题考查:if语句,用来判断能被7整除或者能被11整除,但是又不 能同时被7和H整除的数,在这里充分理解"逻辑与“和“逻辑或”的区 别;for循环语句的循环变量用来控制取值范围。【解题思路】 该题需要运用循环判断结构来实现,其中循环语句比较容易,只要确 定循环变量的范围即可,下面来看判断语句,题目要求找出能被7或 11整除,但不能同时被7和11整除的所有整数。能同时被7和11整 除的整数一定能被77整除,且不能被77整除