首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,该函数的功能是:将s所指字符串中ASCⅡ码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为″ABCDEFG12345″,其中字符B的ASCⅡ码值为偶数,字符2的ASCⅡ码值为偶数,都应当删除
请编写函数fun,该函数的功能是:将s所指字符串中ASCⅡ码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为″ABCDEFG12345″,其中字符B的ASCⅡ码值为偶数,字符2的ASCⅡ码值为偶数,都应当删除
admin
2019-04-14
60
问题
请编写函数fun,该函数的功能是:将s所指字符串中ASCⅡ码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。
例如,若s所指字符串中的内容为″ABCDEFG12345″,其中字符B的ASCⅡ码值为偶数,字符2的ASCⅡ码值为偶数,都应当删除,其他依此类推。最后t所指的数组中的内容应是″ACEG135″。
注意:请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
void fun(char *s,char t[])
{
}
void main()
{
FILE *wf;
char s[100],t[100];
system(″CLS″);
printf(″\nPlease enter string S:″);
scanf(″%s″,s);
fun(s,t);
printf(″\nThe result is:%s\n″,t);
/* * * * * * found * * * * * */
wf=fopen(”out.dat”,”W”);
fun(″ABCDEFG12345″,t);
fprintf(wf,″%s″,t);
fclose(wf);
/* * * * * * found * * * * * */
}
选项
答案
void fun(char *s,char t[]) { int i=0; for(;*s!=′\0′;s+ +) /*找出ASCⅡ值为奇数的字符依次存入数组t中*/ if(*s%2= =1) t[i+ +]=*s; t[i]=′\0′; /*在字符串的末尾加上串结束符*/ }
解析
本题要求将s所指字符串中ASCⅡ码值为偶数的字符删除,因此本题要求采用一个for循环来找出ASCⅡ码值为奇数的字符依次存入数组t中,并使用if条件句来判断s所指字符串中ASCⅡ码值是否为奇数。用′\0′加在字符串的末尾来表示字符串的结束。
要删除ASCⅡ码值为偶数的字符,也就是要留下ASCⅡ码值为奇数的字符。由于最终是要求出剩余字符(即ASCⅡ码值为奇数)形成的新串,所以本题程序的算法是对原字符串从头到尾扫描,找出ASCⅡ码值为奇数的字符并将其依次存入数组t中。此外,还要注意数组t的下标变化和下标的初值(初值必须为0,即i=0),t[i+ +]的作用是先使用t
,然后再使i自增1。
转载请注明原文地址:https://kaotiyun.com/show/q2Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若运行以下程序时,从键盘输入ADescriptor(表示回车),则下面程序的运行结果是#includemain(){charc;intv0=1,v1=0,v2=0;do{switch(c=getchar()){
以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值。请填空。voidfun(int,int,int(*)[4],int*);main(){inta[3][4]={{12,41,36,28},{19,33,1
下列能正确进行字符串赋值的是()。
数据存储和数据流都是__________,仅仅是所处的状态不同。
若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是()。
若变量a,b已正确定义,且b已正确赋值,则合法的语句是()。
下面选项中不属于面向对象程序设计特征的是()。
有三个关系R、S和T如下:其中关系T由关系R和S通过某种操作得到,该操作为()。【09年9月】
下列说法不正确的是()。
下列数据结构中,属于非线性结构的是
随机试题
举出两个发生过债务危机的发展中国家名称,并分析其债务危机的起源。
需要运用资产评估报告书的政府管理部门有()
关于T2DM与T1DM的不同点,错误的说法是
心理发展的性质不包括()。
人类思维的基本过程是()。
①对发展中国家和新兴市场国家尤其如此②很大原因是因为中国仍然保持着对资本流动的严格控制③作为一个发展中国家,中国之所以在过去这些年屡屡可以躲过金融危机的直接冲击④资本的自由流动,从来都是一把双刃剑⑤一个原因就是这些国
IfwelookattheChineseandBritishconceptsofhospitality,wefindonemajorsimilaritybutanumberofimportantdifference
OfficeSpaceAroundtheturnofthecentury,youcouldn’tgetofficespaceinSanFranciscowithoutfirstshowingyourpoten
Themostcontroversialtopicsin【B1】______sportsmaybedruguse,butinyouthsports,notwowordsaremoreinflammatory(煽动性的)
A、Totalkwithsomeoneorwithoneself.B、Tohavealongandgoodrelaxation.C、Todomoreaerobicexercises.D、Totakemoreant
最新回复
(
0
)