首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文
请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文
admin
2017-11-27
39
问题
请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。
例如,字符串LEVEL是回文,而字符串123312就不是回文。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数flun的花括号中填入你编写的若干语句。
#include
#include
#define N 80
int fun(char *str)
{
}
main ()
{ char s[N] ;void NONO ();
printf("Enter a string: "); gets(s);
printf("\n\n"); puts(s);
if(fun(s)) printf("YES\n");
else printf("NO\n");
NONO();}
void NONO ()
{/*请在此函数内打开文件,输入测试数
据,调用fun函数,输出数据,关闭文件。
*/
FILE *rf, *wf ;
int i ; char s[N] ;
rf = fopen("in.dat","r") ;
wf = fopen("out.dat","w");
for(i = 0 ; i < 10 ; i++) {
fscanf(rf, "%sw, s);
if(fun(s))
fprintf(wf,"%s YES\n", s);
else fprintf(wf, "%s NO\n", s);
}
fclose(rf); fclose(wf); }
选项
答案
int i,n=0,flag=1;//初始设置标识位 char *p:str; //设置工作指针 while(*p) //取字符串大小 { n++; p++; } for(i=0;i
解析
进入fun函数,根据前面的分析主要思路是:
(1)首先用整型变量i表示所判断的字符串中前面对应元素的下标。i初值为0,n是字符串的长度,通过循环来求得n。(
2)然后,把下标为i的字符与下标为“n-1-i”的字符比较,如果相同,i加1,继续进行一对一的字符比较。不断重复此过程,直到i≥n/2为止。在此过程中,如果下标为i的字符与下标为“n-1-i”的字符不相同,则可以断定字符串不是回文,立即退出函数。
(3)如果正常结束循环,就说明字符串符合回文条件。
转载请注明原文地址:https://www.kaotiyun.com/show/r2xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
定义如下变量和数组:inti,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i:0;i
以下程序:#includemain(){charstr[10];scanf(“%s”,&str);printf(“%s\n”,str);}运行上面的程序,输入字符串.how
以下关于C语言的叙述中正确的是()。
若函数中有定义语句:inta;,则()。
C语言源程序名的后缀是()。
在学校中,“班级”与“学生”两个实体集之间的联系属于()关系。
对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是()。
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和()。
随机试题
伸直型((Colles)骨折典型表现是
连续监测法测定ALT活性时,血清用量10μl,底物量350μl,光径1cm,NADH在340nm的摩尔吸光系数为6300,计算K值为A.3376B.4127C.4920D.5714E.6508
甲类传染病城镇上报的时间要求甲类传染病农村上报的时间要求
皮下注射常用部位
患者男性,52岁,肝硬化,大量腹水。入院后给予利尿剂治疗,腹水量明显减少,但患者出现了淡漠少言、反应迟钝、言语不清等症状。如果患者出现大量呕血或黑便,甚至引起出血性休克,考虑可能出现了
7个月小儿可添加的辅食种类为
某公司推出的新产品预计每天销售5万件,每件定价为40元,利润为产品定价的30%。公司为了打开市场推出九折促销活动,并且以每天10万元的费用为产品和促销活动做广告宣传。问销量至少要达到预计销量的多少倍以上,每天的盈利才能超过促销活动之前?
下列程序段的执行结果为______。N=0ForI=1To3ForJ=5To1Step-1N=N+1NextJNextIPrintN;J;I
Questions14-17Thetexthas9paragraphs(A-I).Whichparagraphdoeseachofthefollowingheadingsbestfit?*
ThenumberofpeoplewhosurftheInternetviamobiledevicesinChinahasforthefirsttime【C1】______thenumberusingcomputer
最新回复
(
0
)