首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串的前导*号不得多于n个,若多于n个,则删除多余的*号;若少于
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串的前导*号不得多于n个,若多于n个,则删除多余的*号;若少于
admin
2018-08-11
52
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串的前导*号不得多于n个,若多于n个,则删除多余的*号;若少于或等于n个,则不做处理。字符串中间和尾部的*号不删除。
例如,字符串中的内容为“*******A*BC*DEF*G****”,若n的值为4,删除后,字符串中的内容应当是“****A*BC*DEF*G****”;若n的值为8,则字符串中的内容仍为“*******A*BC*DEF*G****”。n的值在主函数中输入。在编写函数时,不得使用C语言提供的字符串函数。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
void fun(char*a,int n)
{
}
void main()
{
char s[81];int n;
printf("Enter a string:\n");
gets(s);
printf("Enter n:");
scanf("%d",&n);
fun(s,n);
printf("The string aEter deleted:\n");
puts(s);
}
选项
答案
void fun(char*a,int n) { inti:0,k=0; char*p,*t; p=t=a;/*开始时,p与t同时指向数组的首地址*/ while(爿ct==’*’)/*用k来统计前部星号的个数*/ {k++;t++;} if(k>n)/*如果k大于n,则使p的前部保留n个星号,其后的字符依次存入数组a中*/ {while(*p) {a[i]=*(p+k-n); i++; p++; } a[i]=’\0’;/*在字符串最后加上结束标识*/ } }
解析
字符串中前导*号不能多于n个,多余的应删除。首先需要通过while循环统计字符串前导*号的个数,然后通过if条件语句完成前导*号的个数和n的比较,如果前导术号多于n个,需要把n个*号和其余字符重新保留。
转载请注明原文地址:https://kaotiyun.com/show/UVxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有如下程序:longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%d\n",fib(3));}
以下程序的输出结果是main(){charc=’z’;printf("%c",c-25);}
在设计程序时,应采纳的原则之一是
数据库系统的三级模式分别为【】模式、内部级模式与外部级模式。
设函数fun的定义形式为:voldfun(charch,floatx){……}则以下对函数fun的调用语句中,正确的是()。
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是()
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)
有一函数:以下程序段中不能根据x值正确计算出y值的是
当用户要求输入的字符串中含有空格时,应使用的输入函数是
随机试题
telecommunications
下列著作属于“两汉时期”的是
慢性宫颈炎病人正确的护理是
下列哪个是施工建设阶段的开始日期?[2006-44]
在焊接接头的构造形式中,盖板接头、套管接头、塞焊接头,其实质上属于变形的是()。
受压杆件在下列各种支承情况下,若其他条件完全相同,其中临界应力最小的是()。
2012年6月1日起,上海证券交易所A股交易过户费的收费标准调整为按成交面额的()向买卖双方投资者分别收取。
Don’ttalk:yourcellphonemaybeeavesdropping.Thankstorecentdevelopmentsin"spyphone"software,ado-it-yourselfspook
A、Inarailwaystation.B、Inabusstop.C、Attheairport.C根据“请注意,101航班将在10分钟后起飞”可推断出他们应该在机场。所以应选C。
中国许多地方都出产玉石,以新疆和田玉最为著名。
最新回复
(
0
)