首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCH码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。 请改正函数fun中
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCH码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。 请改正函数fun中
admin
2019-09-02
40
问题
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCH码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。
例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#include<string.h>
#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(i]%2==0)
t[j++]=s
;
/**********found**********/
t
=’\0’;
}
main()
{ 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条件应该是判定字符是奇数位置或者ASCII码是偶数,原题中给出的是字符是奇数位置并且ASCII码为偶数,逻辑关系表达式不对,应该是或的关系,所以“if(i%2&&s
%2==0)”改为“if(i%2‖s
%2==0)”或“if(i%2!=0‖s
%2==0)”。
(2)第二个标识符下应该是新生成的串尾加尾符标志,新串的位置标志变量是j,原题给出的i是原串的位置标志变量,所以“t
=’\0’;”改为“t[j]=’\0’;”或“t[j]=0;”。
转载请注明原文地址:https://kaotiyun.com/show/nORp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序MODI1.C中函数fun的功能是:将m(1≤m≤10)个字符串连接起来,组成一个新串,放入pt所指存储区中。例如:把3个串:"abc","CD","EF"连接起来,结果是"abcCDEF"。请改正程序中的错误,使它能得出正确的
给定程序MODI1.C中函数fun的功能是:计算s所指字符串中含有t所指字符串的数目,并作为函数值返回。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#inc
给定程序MODI1.C中函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,
请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。例如,字符串LEVEL是回文,而字符串123312就不是回文。注意:部分源程序
N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:求出平均分,由函数值返回。例如,若学生的成绩是:85,76,69,85,91,72,64,87,则平均分应当是:78.625。注意
下列选项中,不能用作标识符的是
有以下程序#inchdeintfuna(inta,intb){returna+b;)intfunb(inta,intb){returna-b;}intsss(int(*t)(),intx,inty){retur
有下列程序:voidf(int*q){inti=0;for(;i<5;i++)(*q)++;}main(){inta[5]={1,2,3,4,5},i;f(a);for(i=0;i
以下选项中与if(a==1)a=b;elsea++;语句功能不同的switch语句是
s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是
随机试题
栓剂制备方法有
胰腺癌好发部位是
初产妇,30岁,孕40周。半夜阴道流出水样物约300ml急诊入院,诊断为胎膜早破。护士应为患者采取的卧位是
(2005)民用建筑中,采用以热水为热媒的散热器供暖系统时,下列哪种说法是错误的?
下列各项中不应计入企业产品成本的有()。
阅读材料,回答116~120题。 2017年,国内旅游市场高速增长,入出境市场平稳发展,供给侧结构性改革成效明显。国内旅游人数50.01亿人次,比上年同期增长12.8%;入出境旅游总人数2.7亿人次,增长3.7%;全年实现旅游总收入5.40万亿元,增长
下列Serv-UFTP服务器的选项中,不提供“IP访问选项”的是()。
结构化程序设计的基本原则不包括()。
IfIacceptedthatjobinAmericaI’dhavetoleavemybelovedkidsandIwouldn’tdothatforallthe______.
Readthefollowingpassage.ChoosefromthesentencesA—Gtheonewhichbestfitseachgapof61—65.Therearetwoextrasenten
最新回复
(
0
)