首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCH码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。 请改正函数fun中
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCH码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。 例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。 请改正函数fun中
admin
2019-09-02
42
问题
给定程序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://jikaoti.com/ti/bYf0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。例如,二维数组中的数据为:33333333444444
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。例如,若输入:17,则应输出:46891012141516。注意:部分源程序在文件PROG1.C中。请勿改动
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。请在程序的下划线处填入正确的内容并把下划线
函数fun的功能是:计算直到=le-6);returnf;}main(){doublex,y;x=2.5;y=fun(x);printf("inTheresultis:in"
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指
给定程序MODI1.C中函数fun的功能是:判断ch中的字符是否与s仃所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后。请改正程序中的错误,使它能进行正确的操作。注意:不要改动main函数,不得增行或删行,也不得更
有以下程序voidfun(intx,inty,int*C,int*d)D){*c=x+y;*d=x—y;}main(){inta=4,b=3,c=0,d=0;fun(a,b,&c,&d);printf(
有两个关系R和S如下: 则由关系R得到关系S的操作是
有下列程序:#includevoidfun(int*a,intn)/*fun函数的功能是将a所指数组元素从大到小排序*/{intt,i,j;for(i=0;i<n-1;j++)for(j=i+1;j<n;j++)if(a[
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是
随机试题
A、Innumericalorder.B、Inchronologicalorder.C、Inorderofsize.D、Inalphabeticalorder.D男士在为女士介绍文件管理系统时提到,所有的文件都必须按照字母顺序排列
按《中国药典》规定,应进行黄曲霉毒素检查的药材有
目前SLE最佳筛选试验是
患者大便不干硬,虽有便意,临厕努挣无力,挣则汗出短气,便后疲乏,面色晄白,舌淡嫩苔薄,脉虚。其治法是()
年末结账,应在全年累计发生额下通栏划单红线。()
股权投资基金项目估值的主要方法中,属于相对估值法的是()。
《计量法》规定,我国采用()。
在中,无穷大量是
Hello,everyone.Itisagreatpleasuretohaveyouasassistantstohelp【B1】______theparty.Iamsendingaroundaformforyou
A、Helosteverythingincludinghiscomputer.B、Hesufferedfromaseriouscaraccident.C、Hewentabroadtojoinhisfamily.D、H
最新回复
(
0
)