首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
假定输入的字符串中只包含字母和“*”号。请编写函数fun,它的功能是:使字符串中尾部的“*”号不得多于n个;若多于n个,则删除多余的“*’号;若少于或等于n个,则什么也不做,字符串中间和前面的“*’号不删除。 例如,字符串中的内容为:****A*B
假定输入的字符串中只包含字母和“*”号。请编写函数fun,它的功能是:使字符串中尾部的“*”号不得多于n个;若多于n个,则删除多余的“*’号;若少于或等于n个,则什么也不做,字符串中间和前面的“*’号不删除。 例如,字符串中的内容为:****A*B
admin
2017-02-27
22
问题
假定输入的字符串中只包含字母和“*”号。请编写函数fun,它的功能是:使字符串中尾部的“*”号不得多于n个;若多于n个,则删除多余的“*’号;若少于或等于n个,则什么也不做,字符串中间和前面的“*’号不删除。
例如,字符串中的内容为:****A*BC*DEF*G******,若n的值为4,删除后,字符串中的内容应当是:
****A*BC*DEF*G****;若n的值为7,则字符串中的内容仍为:****A*BC*DEF*G******。n的值在主函数中输入。
在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
voici fun (char *a,int n)
{
}
main()
{char s[81]; int n;
void NONO ();
printf ("Enter a string:\n");
gets (s);
printf ("Enter n:");scanf("%d", &n);
fun (s,n);
printf( "The string after deleted:
\n");puts(s);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函
数,输出数据,关闭文件。 */
FILE *in, *out ;
int i, n ; char sl81];
in= fopen ("in.dat","r");
out = fopen ("out.dat","w");
for (i= 0 ; i < 10 ; i++) {
fscanf (in, "%s",s);
fscanf (in, "%d",&n);
fun (s,n);
fprintf (out, "%s\n",s) ;
}
fclose (in);
fclose (out);
}
选项
答案
1 iint i=0,j=0; 2 lchar * p,* t; 3 p=t=a; 4 {while (*t) //让指针t指向串尾 5 t++; 6 t——; //t指向串中的最后一个字符 7 while(* t==’* ’) 8 //当t指针当前指向的字符是“* ,’号时 9 {j++; //对“* ”号计数的累加器加1 10 t——; ) //指向前一个字符 11 t++; //跳出“* ”号统计后,指针t继续指向字符串的下一个字符 12 if (j>n) //对统计的“* ”号数目大予给定的“* ”号总数n 13 { while(*p&&p
解析
解题过程首先确定字符串尾,然后由串尾开始对字符进行判断,同时对“*”字符进行统计,如果大于n,就进行截取。
(1)首先确定字符串的尾,然后判断“*”号字符,并对字符串中的字符进行判断,如果字符是符号“*”则对“*”号进行统计。
(2)根据统计的“*”号数目结合题目中对“*”号个数的要求,判断是执行对“*”号的截取操作,还是什么都不用做。
(3)所有字符处理完后,记得在新串s的末尾加上结束符“’\0’”。
转载请注明原文地址:https://kaotiyun.com/show/bgID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
我国体现人民主权原则的宪法规定,不包括()。
许许多多的临床实验都表明抗氧化物质实际上并不能对我们的心血管系统起到改善作用。关于抗氧化物质与癌症关系的数据没那么多,但最近一次大规模的检验维生素E能否抑制癌症的实验中途就被停止了——因为维生素E不仅没有显示出益处,反倒略微增加了前列腺癌的发病率。
需求不足造成生产过剩,而裁员和降薪又造成低收入群体收入继续下降,需求更加疲软,生产过剩更加严重。根据以上这段话,下列说法错误的是()。
下列叙述错误的是()。
根据下列材料回答问题。2006—2012年,上表中指标数值逐年减小的指标有()。
根据下列材料回答问题。表中七个城市2008年的国内生产总值之和与以下哪个最接近?()
根据下列材料回答问题。为建立规范的税费体制和完善的价格机制,促进节能减排、环境保护和结构调整,公平负担,依法筹措交通基础设施养护和建设资金,我国出台了成品油价税费改革方案,自2009年1月1日正式施行。方案规定:取消公路养路费、航道养护费、公路运输管理费
随着科学技术的进步,电脑的问世让人类制造这样的机器“耳朵”成为可能。20世纪60年代,科学家开始在实验室里研究声控技术的核心——语言识别技术。20世纪70年代末,微电脑的出现更是让声控技术实现了飞跃式发展——微电脑处理与存贮信息的神奇功能,以及它低廉的价格
互联网深切地变革了媒体的内容生产方式。媒体环境呈现“移动化、社交化、视觉化”三大趋势,在这些趋势影响下所诞生的网络媒体是粉丝经济的基础。传播媒介更为迅速便捷,与粉丝的心理距离更为接近,粉丝的组织化程度大幅提高,这些都使得粉丝能更为顺利地介入偶像生活,甚至可
随机试题
(2007年第12题)胆汁中有利胆作用的成分是
患者男,37岁,颈椎病。经前路椎间盘摘除植骨融合术后2天。下列哪项需护士特别注意
操作灵活,使用方便,在一般平整坚实的场地上可以载荷行驶作业,可进行打桩、起重等作业的自行式、全回转起重机械为( )。
基础电信业务经营者可以在民用建筑物上附挂、设置()设施。
学习动机
学校教师对班级后十名的同学进行劝退,此做法()。
下列关于胎儿与母体关系的表述错误的是()。
甲窃得某公司的银行账户密码,在办公室利用互联网将该公司账上的5万元钱转入自己的账户。后被一同事发现,对甲极力规劝,甲悔悟,遂将5万元转回该公司的账户。甲的行为属于
在Linux中,可使用()命令关闭系统。
Readthenoteandtheattachedjobdetailsbelow.Completetheformbelow.Writeawordorphrase(inCAPITALLETTERS)oranumber
最新回复
(
0
)