首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,该函数的功能是:将s所指字符串中ASCII码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为“ABCDEFGl2345”,其中字符B的ASCII码值为偶数,字符2的ASCII码值为偶
请编写函数fun,该函数的功能是:将s所指字符串中ASCII码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为“ABCDEFGl2345”,其中字符B的ASCII码值为偶数,字符2的ASCII码值为偶
admin
2018-03-28
46
问题
请编写函数fun,该函数的功能是:将s所指字符串中ASCII码值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。
例如,若s所指字符串中的内容为“ABCDEFGl2345”,其中字符B的ASCII码值为偶数,字符2的ASCII码值为偶数,都应当删除,其他依此类推。最后t所指的数组中的内容应是“ACEGl35”。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>
void fun(char*s,char t[])
{
}
void main()
{
char s[100],t[100];
system("CLS");
printf("\nPlease enter
string s:");
Scanf("%s",s);
fun(s,t);
print:f("\nThe result:is:%s
\n",t);
}
选项
答案
void fun(char*s,char t[]) { int i=0; for(;*s!=’\0’;s++) / *找出ASCII值为奇数的字符依次存入数组t中*/ if(*s%2==1) t[i++]=*s; t[i]=’\0’; /*在字符串的末尾加上串结束符*/ }
解析
本题要求将s所指字符串中ASCII码值为偶数的字符删除,因此本题要求采用一个for循环来找出ASCII码值为奇数的字符依次存入数组t中,并使用if条件句来判断s所指字符串中ASCII码值是否为奇数。用’\0’加在字符串的末尾来表示字符串的结束。
要删除ASCII码值为偶数的字符,也就是要留下ASCII码值为奇数的字符。由于最终是要求出剩余字符(即ASCII码值为奇数)形成的新串,所以本题程序的算法是对原字符串从头到尾扫描,并找出ASCII码值为奇数的字符并将其依次存入数组t中。此外,还要注意数组t的下标变化和下标的初值(初值必须为0,即i-0),t[i++]的作用是先使用t
,然后再使i自增1。
转载请注明原文地址:https://kaotiyun.com/show/Uxxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是()。#include<stdio.h>intfun(intx){staticintt=0;return(t+=x);}main(){ints,i;for(i=1;
下列属于不合法的main函数命令行参数表示形式的是()。
有下列程序段:intk=0,a=1,b=2,c=3;k=a<b?b:a;k=k>C?C:k;执行该程序段后,k的值是()。
两次运行下面的程序,如果从键盘上分别输入3和2,则输出结果是()。#include<stdio.h>main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);
以下程序的输出结果是()。#includeintm=13;intfun(intx,inty){intm=2;return(x*y-m);}main(){
在软件工程中,白盒测试法可用于测试程序的内部结构,此方法将程序看做是()。
下列选项中,不是一个算法的基本特征的是()。
以下能正确定义二维数组的是______。
下列叙述中,正确的是
结构化程序设计主要强调的是______。
随机试题
所有热处理的工艺过程都应包括加热、保温和冷却。
丙酮酸脱氢酶复合体中不包括
报关员在办理报关业务时必须遵守相关的海关法律、法规,履行其义务,下列属于报关员在报关时应履行的义务的有( )。
建筑安装工程费用不包括()。
根据记忆信息储存时间的长短,记忆分为长时记忆、________、瞬时记忆。
下列关于法的类别的表述,不正确的是()(2008年综合课单选第6题)
工农民主政权的司法体制中,所设立的司法机关包括()。
Ifyouhavehighbloodpressure,you’reingood【C1】______.Hypertensionaffects67millionAmericans,includingnearlytwo-third
UrsulavonderLeyenconcededthatcompaniesinrichcountriesincludingGermanyhavebeengivenanunfairadvantagebytherela
一般情况下,Excel97默认的显示格式右对齐的是()。A.数值型数据B.字符型数据C.逻辑型数据D.不确定
最新回复
(
0
)