首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。
给定程序MODll.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。
admin
2015-06-08
50
问题
给定程序MODll.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。
例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 80
void fun(char *s,char t[])
{ int i,j=0;
for(i=0;i<(int)strlen(s); i++)
/**********found***********/
if(i%2 && s
%2==0)
t[J++]=s
;
/**********found***********/
t
=‘\0’;
}
msin()
{ char s[N],t[N];
printf(“\nPlease enter string
s:”); gets(s);
fun(s,t);
printf(“\nThe result is:%s\n”,t);
}
选项
答案
(1)if(i%2 || s[i]%2==0)或if(i%2!=0|| s[i]%2==0) (2)t[j]=‘\0’; 或t[j]=0 ;
解析
本题中函数的功能是将字符串中位于奇数位置的字符或ASCII码为偶数的字符依次放入新字符串中。解题思路基本上分为判定字符是否为奇数位置或者ASCII码是否为偶数,然后根据判定结果对其进行操作。
[解题思路]
(1)第一个错误标识下的if条件应该是判定字符是奇数位置或者ASCIl码是偶数,原题中给出的是字符是奇数位置并且ASCII码为偶数,逻辑关系表达式不对,应该是或的关系,所以“if(i%2&&s
%2=0)”改为“if(i%2||s
%2==0)”或“if(i%2!=0||s
%2==0)”。
(2)第二个标识符下应该是新生成的串尾加尾符标志,新串的位置标志变量是i,原题给出的i是原串的位置标志变量,所以“t
=‘\0’;”改为“t[j]=‘\0’;”或“t[j]=0;”。
转载请注明原文地址:https://kaotiyun.com/show/RiJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有如下程序段:structstudent{intnum;floatscore;}stu[3]={{10,85},{60,58},{32,23}};main(){structstudent*t;
若x、y、z、m均为int型变量,则执行下面语句后m的值是()。m=1;x=2;y=3;m=(m<x)?m:x;m=(m<y)?m:y;m=(m<y)?m:z;
有以下定义和语句,则sizeof(A)的值是【】,而sizeof(a.share)的值是【】。structdate{intday;intmouth;intyear;
下面程序的输出是【】。main(){enumem{em1=3,em2=1,em3};char*aa[]={"AA","BB","CC","DD"};printf("%s%s%s\n",aa[em1],aa[e
下面程序的输出是【】。main(){intarr[10],i,k=0;for(i=0;i<10;i++)arr[i]=i;for(i=1;i<4;i++)k+=arr
有以下程序:int*f(int*x,int*y){if(*x<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=
有以下程序段:main(){inta=5,*b,**c;c=&b;b=&a;}程序在执行了c=&b;b=&a;语句后,表达式**c的值是______。
设有声明语句chara=’\72’;,则变量a______。
若已定义:inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是_______。
函数pi的功能是根据以下近似公式求π值:(π*π)/6=1+1/(2*2)+1/(3*3)+…+1(n*n)现在请你在下面的函数中填空,完成求π的功能。#include“math.h"{doubles=0.0;
随机试题
根据计算机的用途不同,可以将计算机分为____________。
个别牙或数个牙出现宽而浅的骨上袋,袋内牙石较多,应考虑个别牙出现窄而深的骨下袋并常伴牙周脓肿形成,应考虑
目前我国预防碘缺乏病的最主要措施是
下列监管措施中,不属于银行业现场检查的是()。
甲股份有限公司(本题下称“甲公司”)为上市公司,2009年至2010年企业合并、长期股权投资有关资料如下:(1)2009年1月1日,甲公司通过定向增发2000万股普通股(每股面值1元,市价5元),取得了A公司持有的乙公司(非上市公司)80%的股份,
ABC公司研制成功一台新产品,现在需要决定是否大规模投产,在不考虑通货膨胀的情况下,有关资料如下:(1)公司的销售部门预计,如果每台定价3万元,销售量每年可以达到10000台;销售量不会逐年上升,但价格可以每年提高2%。生产部门预计,变动制造成本
James’SNewBicycleJamesshookhismoneyboxagain.Nothing!Hecarefully【B1】__________thecoinsthatlayonthebed,$24.52was
企业原来的资金结构及资金成本如下:普通股总额为2000万元,资金成本15%;长期债券3000万元,资金成本为8%。该公司准备向银行借款1000万元购买一项固定资产,已知借款利率为5%,每年复利一次。不考虑银行借款的筹资费用。预计该资产投产后每年可为企
CPA
"Blink"TechnologyA)Tiredofallthattime-consumingswiping?Creditcardsusing"contactless"technologyallowuserstopayfo
最新回复
(
0
)