首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数fun,其功能是:将s所指字符串中ASCII码值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。 例如,若s所指字符串中的内容 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,字符1的ASCII码值也为奇数,都应当删除
编写函数fun,其功能是:将s所指字符串中ASCII码值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。 例如,若s所指字符串中的内容 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,字符1的ASCII码值也为奇数,都应当删除
admin
2017-09-23
13
问题
编写函数fun,其功能是:将s所指字符串中ASCII码值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。
例如,若s所指字符串中的内容 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,字符1的ASCII码值也为奇数,都应当删除,其他依此类推。最后t所指的数组中的内容应是 “BDF24”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include < conio.h >
#include < stdio.h >
#include < string.h >
void fun(char*s,char t[])
{
}
main()
{
char s[100],t[100],Msg[]
="Please enter string s:";
printf(Msg);
Scanf("%s",s);
fun(s,t);
printf("\nThe resuit is:%
s\n",t);
}
选项
答案
void fun (char*s,char t[]) { int i,j =0,n; n =str1en (s); /*遍历整个数组*/ for (i=ofi < n;i++) /*如果元素的ASCII码值为偶数*/ if(s[i]%2==0) { /*将元素保存到t中*/ t[j]=s[i]; j++; } t[j]=’\0’; }
解析
要删除ASCII码值为奇数的字符,也就是要保留ASCII码值为偶数的字符,由于最终是要求出剩余字符形成的新串,所以本题的算法是对原字符串从头到尾扫描,找出ASCII码值为偶数的字符并依次存入数组。
转载请注明原文地址:https://jikaoti.com/ti/iTa0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>main(){intx;scanf("%d",&x);if(x<=0);elseif(x!=5)printf("%d\n",x);}程序运行时
下列函数从字符数组s[]中删除和c一样的字符,请在下面横线处填空。voiddelete(s,C)chars[],c;{inti,j;for(i=j=0;();i++)if(s[i]!=’c’)s[j++]=
若有定义语句:inta[2][3],*p[33;,则以下语句中正确的是()。
以下合法的字符型常量是()。
以下叙述中错误的是()。
在C语言程序中,以下说法正确的是()。
以下选项中值为1的表达式是()。
设变量已正确定义并赋值,以下正确的表达式是()。
在int(*prt)[3];定义中,标识符prt()。
随机试题
测量肺静脉血流频谱多普勒一般选取心尖四腔切面上的
磷酸戊糖途径主要存在于
2.5岁女患儿,近日外阴红肿痒痛、有脓性分泌物。诊断为非特异性炎症感染。有病的原因可能是
下列不是人体主要内分泌腺的是
下列有关工程进度款支付的说法中,正确的有()。
应急演练一般分为()。
某项经济业务发生后引起银行存款减少10000元,相应地可能会引起()。
股票投资组合构建中,个股的选择与权重受到()的限制。
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和()。
TheU.S.andChinadon’tagreeonmuchthesedays.GermanyandFranceshareaborderandacurrencybutarefrequentlyatodds.
最新回复
(
0
)