




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2021年江苏省南京市全国计算机等级考试C语言程序设计测试卷一(含答案)学校:________班级:________姓名:________考号:________
一、单选题(12题)1.x>0&&x<=10的相反表达式为()。
A.x<=0||x>10B.x<=0&&x>10C.x<=0||x<=10D.x>0&&x>10
2.若有以下程序段
intm=0xabc,n=0xabc;
m-=n;
printf("%x\n",m);
执行后的输出结果是A.A.0X0
B.0x0
C.0
D.0xABC
3.下面说法正确的是()。A.A.一个C程序可以有多个主函数
B.一个C语言的函数中只允许有一对花括号
C.C程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内
D.在对C程序进行编译时,可以发现注释行中的拼写错误
4.若有如下函数定义:doublefun(intx,inty){return(x+y);}return语句中表达式值的类型与说明的类型不一致,则以下叙述中正确的是()。
A.运行时出错B.函数返回的值为int型C.编译出错D.函数返回的值为double型
5.以下程序中,while循环的循环次数是main(){inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++;}}
A.1B.10C.6D.死循环,不能确定次数
6.有下列程序:
程序执行后的输出结果是()。A.3,7,3,7B.7,3,7,3C.3,7,7,3D.7,3,3,7
7.对序线性表23,29,34,55,60,70,78用二分法查找值为60的元素时,需要比较次数为()
A.1B.2C.3D.4
8.待排序的关键码序列为(33,18,9,25,67,82,53,95,12,70),要按关键码值递增的顺序排序,采取以第一个关键码为基准元素的快速排序法,第一趟排序后关键码33被放到第()个位置。
A.3B.5C.7D.9
9.fscanf函数的正确调用形式是()
A.fscanf(fp,格式字符串,输出表列);
B.fscanf(格式字符串,输出表列,fp);
C.fscanf(格式字符串,文件指针,输出表列),
D.fscanf(文件指针,格式字符串,输入表列);
10.
11.设有定义:#include<stdio.h>#include<stdlib.h>typedefstruct{intx,y;}T;typedefstruct{intx,y;}*USER;USERfun(){USERp;p=(USER)malloc(sizeof(T));p->x=1;p->y=2;returnp;}函数fun返回值的类型是()。
A.T类型的结构体B.指向结构体类型的指针C.int类型的元素D.int类型的指针
12.设有以下程序段:structbook{floatprice;charlanguage;chartitle[20];}rec,*ptr;ptr=&rec;要求输入字符串给结构体变量rec的title成员,错误的输入语句是()。
A.scanf(“%s”,ptr.title);
B.scanf(“%s”,rec.title);
C.scanf(“%s”,(*ptr).title);
D.scanf(“%s”,ptr->title);
二、2.填空题(12题)13.下列表达式用于判断y是否为闰年。闰年的判断条件是:年号能被4整除但不能被100整除或年号能被400整除,请填空______。
14.设有定义:intn,*k=&n;以下语句将利用指针变量k读写变量n中的内容,请将语句补充家整。
seanf("%d",【】);
printf("%d\n",【】);
15.下面程序的运行结果是【】。
main()
{unsigneda=0112,x;
x=a>>3;
printf("x=%o",x);
}
16.在关系运算中,【】运算是在给定关系的某些域上进行的运算。
17.数据库保护分为:安全性控制、______、并发性控制和数据的恢复。
18.表达式1/2*(int)3.7/(int)(2.4*(1.5+2.5))值的数据类型为______。
19.若有定义语句chars[100],d[100];intj=0,i=0;且s中已赋字符串,请填空以实现拷贝。(注:不使用逗号表达式)
whi1e()s[i]){d[j]=【】:j++;}
d[j]=0;
20.设一棵完全二叉树共有700个结点,则在该二叉树中有【】个叶子结点。
21.以下程序的输出结果是【】。
#include<stdio.h>
main()
{intn=12345,d;
while(n!=0){d=n%10;printf("%d",D);n/=10;}
}
22.数据库管理系统常见的数据模型有层次模型、网状模型和【】3种。
23.若已定义inta[10],i;以下fun函数的功能是,在第一个循环中给前10个数组元素依次赋1,2,3,4,5,6,7,8,9,10;在第二个循环中使a数组前10个元素中的值对称拆叠,变成1,2,3,4,5,5,4,3,2,1。请填空。
fun(inta[])
{inti;
for(i=1;i<=10;i++)【】=i;
for(i=0;i<5;i++)【】=a[i];
}
24.以下程序的输出结果是12.00,请将空白处填写完整。
main()
{inta=9,b=2;
floatx=【】,y=1.1,z;
z=a/2+b*x/y+1*2;
printf("%52f\n",z);
}
三、3.程序设计题(10题)25.请编写一个函数voidfun(chara[],charb[],intn),其功能是:删除一个字符串中指定下标的字符。其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。
例如,输入一个字符串:World,然后输入3。则调用该函数后的结果为:Word。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
26.请编写函数fun(),该函数的功能是:移动字符串中的内容,移动的规则是把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。
例如,字符串中原有的内容为ABCDEFGHIJK,m的值为3,移动后,字符串中的内容应该是DEFGHIJKABC。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<string.h>
#defineN80
voidfun(char*w,intm)
{
}
main()
{
chara[N]="ABCDEFGHIJK";
intm;
printf("Theoriginastring:\n");
puts(a);
printf("\n\nEnterm:");
scanf("%d",&m);
fun(a,m);
printf("\nThestringaftermoving:\n");
puts(a);
printf("\n\n");
}
27.编写函数intfun(intlim,intaa[MAX]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求出的素数的个数。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
#defineMAX100
intfun(intlim,intse[MAX])
{
}
main()
{
intlimit,i,sum;
intaa[MAX];
clrscr();
printf("输入一个整数");
scanf("%d",&limit);
sum=fun(limit,aa);
for(i=0;i<sum;i++)
{
if(i%10==0&&i!=0)/*每行输出10个数*/
printf("\n");
printf("%5d",aa[i]);
}
}
28.请编写函数fun(),该函数的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。
例如,若一维数组中的数据是:
2223445666677899101010
删除后,数组中的内容应该是:
2345678910。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#defineN80
intfun(inta[],intn)
{
}
main()
{
inta[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,
8,9,9,10,10,10,10},i,n=20;
printf("Theoriginaldata:\n");
for(i=0;i<n;i++)
printf("%3d",a[i]);
n=fun(a,n);
printf("\n\nThedataafterdeleted
:\n");
for(i=0;i<n;i++)
printf("%3d",a[i]);
printf("\n\n");
}
29.请编写函数fun,其功能是:计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和。
例如,给定数组中的9个元素依次为12.0、34.0、4.0、23.0、34.0、45.0、18.0、3.0、11.0,输出应为:s=35.951014。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
30.编写函数fun,它的功能是计算下列级数和,和值由函数值返回。
例如,当n=10,x=0.3时,函数值为1.349859。
注意:部分源程序在文件PROGl.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
31.请编写函数fun(),其功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全部删除,串中剩余字符所形成的一个新中放在t所指的数组中。
例如,若s所指字符串中的内容为ABCDEFG123456,其中字符A的ASCII码值为奇数,因此应当删除;其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除;而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是246。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
#include<string.h>
voidfun(char*s,chart[])
{
}
main()
{
chars[100],t[100];
clrscr();
printf("\nPleaseenterstringS:");
scanf("%s",s);
fun(s,t);
printf("\nTheresultis:%s\n",t);
}
32.假定输入的字符串中只包含字母和*号。请编写函数fun(),它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的K度,形参h给出了字符串中前导*号的个数,形参e给出了字符山中最后*号的个数。在编写函数时,不得使用c语言提供的字符串函数。
例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是A*BC*DEF*G。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仪在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
voidfun(char*a;intn,inth,inte)
{
}
main()
{
chars[81],*t,*f;
intm=0,tn=0,fn=0;
printf("Enterastring:\n");
gets(s);
t=f=s;
while(*t)
{t++;m++;}/*m为字符串的长度*/
t--;/*指针t指身字符串尾部*/
while(*t=='*')
{t--;tn++;}
/*指针t指向最后一个字母,tn统计尾部'*'的个数*/
while(*f=='*')
{f++;fn++;}
/*指针f指向第一个字母,tn统计导'*'的个数*/
fun(s,m,fn,tn);
printf("Thestringafterdeleted:\n");
puts(s);
}
33.请编写一个函数intfun(int*s,intt,int*k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:
876675896101301401980431451777
则输出结果为6,980。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
intfun(int*s,intt,int*k)
{
}
main()
{
inta[10]={876,675,896,101,301,401,
980,431,451,777},k;
clrscr();
fun(a,10,&k);
printf("%d,%d\n",k,a[k]);
}
34.请编写函数fun(),该函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从p到n-1(p≤n-1)的数组元素平移到数组的前面。
例如,一维数组中的原始内容为1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,p的值为6。移动后,一维数组中的内容应为7,8,9,10,11,12,13,14,15,1,2,3,4,5,6。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#defineN80
voidfun(int*w,intp,intn)
{
}
main()
{
inta[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
inti,p,n=15;
printf("Theoriginaldata:\n");
for(i=0;i<n;i++)
printf("%3d",a[i]);
printf("\n\nEnterp:");
scanf("%d",&p);
fun(a,p,n);
printf("\nThedataaftermoving:\n");
for(i=0;i<n;i++)
printf("%3d",a[i]);
printf("\n\n");
}
四、单选题(0题)35.若已包括头文件且已有定义charsl[18],s2={"ABCDE")和inti,现要将字符串”ABCDE”赋给sl,下列语句错误的是()。
A.strcpy(s1,s2)
B.strcpy(s1,"ABCDE");
C.sl="ABCDE";
D.for(i=0;i<6;i++)sl[i]=s2[i]
五、单选题(0题)36.
六、单选题(0题)37.快速排序在_____情况下最易发挥其长处。
A.被排序数据中含有多个相同排序码
B.被排序数据已基本有序
C.被排序数据完全无序
D.被排序数据中最大值和最小值相差悬殊
参考答案
1.A
2.C本题考查C语言中的数据输出格式。
题目中定义了两个整型变量m、n,对这两个变量赋值,输入的数值为十六进制整数,并且有m=n。进行m-n运算后,将减法所得到的值赋给m,并将m值输出。其中printf的格式字符选用的格式字符为x,即以十六进制形式输出整数。注意,0x是表示该数为十六进制的标志,输出数据时,数据前面不会自动加上进制的标志。
3.C解析:本题涉及C语言基本的3个知识点:①C语言规定一个程序只允许有一个主函数,一个函数内可以允许有多个花括号;②C程序的注释部分仅仅是方便程序员阅读,提高程序的可读性和可移植性,它并不参与程序的编译,所以编译器也就不会发现注释中的错误。
4.D题干中“x+y”是整型,函数的返回值是double类型,由于整型可以自动转换成double类型,因此函数值返回时自动转换成double类型。故本题答案为D选项。
5.D解析:break语句只能在循环体和switch语句体内使用,当break出现在switch语句体内时,其作用只是跳出该switch语句体。当break出现在循环体中,但不在switch语句体内时,则在执行break后,跳出本层循环体.而continue语句的作用是结束本次循环,即跳过本次循环中余下尚未执行的语句,接着再一次进行循环的条件判定。本程序中,变量i的初始值为0,判断while后面括号内表达式的值为真,执行循环体内的if语句,判断if后面括号内表达式的值为真,执行“continue;”语句.因continue的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环的条件判断,所以i的值未发生变化,循环条件仍然为真,if语句也仍然成立,因此循环将无止境地进行下去。所以,4个选项中D为所选。
6.C程序定义两个整型变量i、j,初值为3,7。另外,定义两个整型指针变量p、q,其中p指向i,q指向j。将i、j的地址传给swap函数。在swap函数中,a指向i,b指向j。通过临时变量t交换a和b指向的值,此时a指向的实参i、b指向的实参j的值发生了交换。即a指向i的值为7,b指向j的值为3;再通过临时变量tp交换a和b的指针值,使得a指向j,b指向i。所以swap中输出a指向的值为3(j),b指向的值为7(i);swap函数调用结束后,输出p和q指向的值,即i、j的值为7、3。所以程序输出:3,7,7,3。本题答案为C选项。
7.Cc)【解析】根据二分法查找法需要两次:①首先将60与表中间的元素55进行比较,由于60大于55,所以性表的后半部分查找。②第二次比较的元素是后半部分的中间元素,将60与表中间的元素70进行比较,由于60小于70,所以性表的前半部分查找。③第三次比较的元素是前半部分的中间元素,即60,这时两者相等,即查找成功。
8.BB.【解析】快速排序的基本思想是:从表中选取一个元素(如本题中的33),将表中小于此元素的移到前面,大于此元素的移到后面,结果把线性表分割成两部分(两个子表),此元素插入到其分界线的位置处。然后分别对两个子表再次分割……本题中33作为分割的中界线,第一趟排序后排在比它小的18、9、25、12后面。
9.D
10.C
11.B由题意可知:使用typedef将类型“struct{intx,y;}*”重命名为“USER”,所以函数fun的返回类型为“struct{intx,y;}*”,即指向结构体类型的指针。故本题答案为B选项。
12.A运算符“->”适用指针访问成员变量,运算符“.”适用普通变量访问成员变量。ptr是指针,只能用“->”,因此选项A错误。选项B中,rec.title代表数组title,选项B正确,同理选项C正确。“*ptr”是结构体变量rec,可以使用运算,因此选项D正确。故本题答案为A选项。
13.(y%4==0)&&(y%100!=0)||(y%400==0)(y%4==0)&&(y%100!=0)||(y%400==0)解析:考查逻辑表达。年号能被4整除(y%4==0)但不能被100整除(y%100!=0),两者是与的关系,年号能被400整除即y%400==0,与前两项是或的关系。
14.k[7]*kk[7]*k解析:scanf()函数有两个参数,第—个参数是格式控制部分(格式控制部分是字符串,主要由“%”号和格式字符组成)第二个参数是一地址列表(地址列表是由多个地址组成,可以是变量的地址,也可以是字符串的首地址)。而第一个空格处位于scanf()函数的第二个参数处,所以,第一个空应该填地址k。printf()函数有两个参数,第一个参数是输出格式字符串(输出格式字符串是由控制输出格式的字符和非格式字符组成的,通常是字符常量。非格式字符作为输出数据的间隔,输出时原样输出)第二个参数为一输出表达式表(输出表达式表是由若干个需要计算和输出的表达式组成的,表达式之间用逗号分隔开)。而第二个空位于printf()函数的第二个参数处,所以应该填*K。
15.x=11x=11解析:在对无符号数的右移是高位补0。
16.投影投影解析:在关系运算中,投影运算是在给定关系的某些域上进行的运算。
17.完整性控制完整性控制
18.整型整型解析:上面的表达式中,通过强制类型转换把最后参与运算的数据都转换成了int型,所以最后得到的结果也是int类型。
19.s[i++]s[i++]解析:本题中为了能实现字符串的拷贝,需要使字符数组s从头到尾依次遍历其所有元素。本题应使用i的自增后置来实现。
20.350350解析:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。在根据完全二叉树的定义,在一棵完全二叉树中,最多有1个度为1的结点。因此,设一棵完全二叉树具有n个结点,若n为偶数,则在该二叉树中有n/2个叶子结点以及n/2-1个度为2的结点,还有1个是度为1的结点:若n为奇数,则在该二叉树中有[n/2]+1个叶子结点以及[n/2]个度为2的结点,没有度为1的结点。本题中,完全二叉树共有700个结点,700是偶数,所以,在该二叉树中有350个叶子结点以及349个度为2的结点,还有1个是度为1的结点。所以,本题的正确答案为350。
21.5432154321解析:在while循环中,d=n%10;语句每次求得的结果是n个位上的数值,例如12345÷10所得的余数就是个位上的5。接下来输出得到的个位数字d,然后执行n/=10;语句,该语句等价于n=n/10;。在C语言中,如果/运算的两个运算分量都是整数,那所得的结果也截尾取整,所以12345/10=1234,即n-=n/10;语句的作用是让n截去个位上的数字。由此可知,随着while循环的继续,n依次为12345、1234、123、12、1,而每次输出n的个位数字将为5、4、3、2、1。故本题应填543210。
22.关系模型关系模型解析:数据库管理系统是位于用户与操作系统之间的一层系统管理软件,是一种系统软件,是用户与数据库之间的一个标准接口。其总是基于某种数据模型,可以分为层次模型、网状模型和关系模型。
23.a[i-1]或a[-1+i]a[9-i]或a[-i+9]a[i-1]或a[-1+i]\r\na[9-i]或a[-i+9]
解析:a/2=9/2=4,1/2=0,于是根据输出结果就有下列等式:z=4+2*x/1.1=12.0,化简后,为x/1.1=4,x=4.4。
25.
解析:(1)该程序功能是删除一个字符串中指定下标的字符。它的解题思路,可以分解为以下两步:逐个判断字符串中的下标是否满足条件,满足条件的就放到题目要求的新串,否则就不放。
(2)从已给部分源程序的main主函数开始入手,核心函数“fun(str1,str2,n);”中的参数由题目可知,str1存放着原始字符串,str2存放删除了下标为n的字符的结果字符串,注意下标是从“0”开始的。
26.voidfun(char*wintm){intij;chart;for(i=1;i<=m;i++)/*进行m次的循环左移*/{t=w[0];for(j=1/w[j]!='\0';j++)/*从第2个字符开始以后的每个字符都依次前移一个字符*/w[j-1]=w[j];w[j-1]=t;/*将第1个字符放到最后一个字符中*/}}voidfun(char*w,intm)\r\n{\r\ninti,j;\r\nchart;\r\nfor(i=1;i<=m;i++)/*进行m次的循环左移*/\r\n{t=w[0];\r\nfor(j=1/w[j]!='\\0';j++)/*从第2个字符开始以后的每个字符都依次前移一个字符*/\r\nw[j-1]=w[j];\r\nw[j-1]=t;/*将第1个字符放到最后一个字符中*/\r\n}\r\n}解析:我们在学习C语言的时候,应该广泛地应用到循环的方法,本题应采用“循环左移”的算法。即从第2个字符开始以后的每个字符都依次前移一个字符,而原来的第1个字符放在串中的最后一个字符。当要平移m个字符时,则要进行m次的循环左移。内嵌的循环的作用是完成从第2个字符开始以后的每个字符都依次前移一个字符,w[j-1]=t的作用是将第1个字符放到最后一个字符中。
27.intfun(intlimintaa[MAX]){intijk=0;for(i=2;i<=lim;i++)/*求出小于或等于lim的全部素数*/{for(j=2;j<i;j++)if(i%j==0)break;if(j>=i)aa[k++]=i;;/*将求出的素数放入数组aa中*/}returnk;/*返回所求出的素数的个数*/}intfun(intlim,intaa[MAX])\r\n{\r\ninti,j,k=0;\r\nfor(i=2;i<=lim;i++)/*求出小于或等于lim的全部素数*/\r\n{for(j=2;j<i;j++)\r\nif(i%j==0)break;\r\nif(j>=i)\r\naa[k++]=i;;/*将求出的素数放入数组aa中*/\r\n}\r\nreturnk;/*返回所求出的素数的个数*/\r\n}解析:在做这道题时,我们只需掌握素数的基本算法就可以了,一般表示素数的方法如下:
for(j=2;j<i;j++)
if(i%j==0)break;
if(j>=i)
28.intfun(inta[]intn){intij=l;for(i=1;i<n;i++)if(a[j-1]!=a[i])/*若该数与前一个数不相同则要保留*/a[j++]=a[i];returnj;/*返回不同数的个数*/}intfun(inta[],intn)\r\n{\r\ninti,j=l;\r\nfor(i=1;i<n;i++)\r\nif(a[j-1]!=a[i])/*若该数与前一个数不相同,则要保留*/\r\na[j++]=a[i];\r\nreturnj;/*返回不同数的个数*/\r\n}解析:本题程序的流程是:让i,j都从1开始,其中j用于控制删除后剩下的数中的下标,i用于搜索原数组中的元素。j始终是新数组已有元素中最后一个元素的下一个元素的下标,所以if()中的条件是a[j-1]!=a[i],其中a[j-1]就是新数组中的最后一个元素,若条件成立,则表示出现了不同的值,所以a[i]要留下到新数组中。注意本题中i,j的初值都要从1开始,该算法只能用于数组已排序的题目中。
29.
解析:该程序功能是计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和。在循环中,首先确定相邻元素之间的关系,然后对其进行平均值平方根之和的操作。
30.
解析:该程序功能是计算并输出多项式值。根据题干中给出的数列,首先推出每一项的表达式,然后再对多项式进行累加求和。
31.voidfun(char*schart[]){intij=0;for(i=0;s[i]!='\0';i++)if(i%2==0&&s[i]%2==0)/*将s所措字符串中下标和ASCII值都为偶数的字符放入数组t中*/t[j++]=s[i];/*在字符串最后加上结束标志位*/t[j]='\0';}voidfun(char*s,chart[])\r\n{\r\ninti,j=0;\r\nfor(i=0;s[i]!='\\0';i++)\r\nif(i%2==0&&s[i]%2==0)/*将s所措字符串中下标和ASCII值都为偶数的字符放入数组t中*/\r\nt[j++]=s[i];/*在字符串最后加上结束标志位*/\r\nt[j]='\\0';\r\n}解析:本题要求除了下标为偶数同时ASCII值也为偶数的字符之外,其他字符都删除。题目要求留下下标为偶数同时ASCII值也为偶数的字符。
C语言中并没有直接删除字符的算法,请大家
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论