首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文件
请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文件
admin
2017-02-24
40
问题
请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"。回文是指顺读和倒读都一样的字符串。
例如,字符串LEVEL是回文,而字符串123312就不是回文。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#define N 80
int fun(char*str)
{
}
main()
{
char s[N];
FILE*out;
char*test[]={"1234321","123421","123321","abcdCBA"};
int i;
printf("Enter a string:");
gets(s),
printf("\n\n");
puts(s);
if(fun(S))
printf("YES\n");
else
printf("NO\n");
/******************/
out=fopen("out.dat","w");
for(i=0;i<4;i++)
if(fun(test
))
fprintf(out,"YES\n");
else
fprintf(out,"NO\n");
fclose(out);
/******************/
}
选项
答案
int fun(char*str) { int i,n=0,fg=1; char*p=str; while(*p)/*将指针p置位到字符串末尾,并统计字符数*/ { n++; p++; } for(i=0;i<n/2;i++) /*循环比较字符*/ if(str[i]=str[n一1一i]);/*相同,什么都不作*/ else/*不同,直接跳出循环*/ { fg=0; break; } return fg; }
解析
判断回文就是将第一个字符与最后一个字符比较,第二个字符与倒数第二个字符进行比较,依此类推,直到中间的字符,如果比较的结果都相同,那么这个字符串就是回文,否则不是。程序中循环语句用来遍历字符串,条件语句用来判断当前字符与对应位置的字符是否相同。
转载请注明原文地址:https://kaotiyun.com/show/4MDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
结构化分析方法是面向()的自顶向下、逐步求精进行需求分析的方法。
阅读下列程序,则程序的输出结果为______。#include"stdio.h"structty{intdata;charc;};main(){structtya={30,’x’};fun(a);printf("%d%c
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
在执行下述程序时,若从键盘输入6和8,则结果为main(){inta,b,s;scanf("%d%d",&a,&b);S=aif(a<B)s=b;S*=S;printf("%d",s);}
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为【】。
函数的值通过return语句返回,下面关于return语句的形式描述错误的是
函数的值通过return语句返回,下面关于return语句的形式描述错误的是
随机试题
必须提交债务人承兑方可生效的商业票据是
方程y’=ex+y的通解为()
成人心脏正常二尖瓣瓣口面积是
(2010年)总线能为多个部件服务,它可分时地发送与接收各部件的信息,所以,可以把总线看成是()。
在高层建筑施工质量管理中,作为质量控制重点的有()。
一种汇率通常有( )位有效数字。
某企业与银行商定的周转信贷额为200万元,承诺费率为0.5%,借款企业年度内使用了120万元,那么,借款企业向银行支付承诺费()元。
阅读文本材料和相关要求,完成第19—21题。莫怀戚《散步》原文我们在田野散步:我,我的母亲,我的妻子和儿子。母亲本不愿出来的。她老了,身体不好,走远一点就觉得很累。我说,正因为如此,才应该多走走,母亲信服地点点头,便去拿外套。
兴乐镇拥有常住人口5876人,其中选民4145人。在选举新一届人民代表大会代表的过程中,有2273人参加投票。宫某作为代表候选人得票最多,共获得选票1096张。对兴乐镇的该次选举效力说法正确的是()。
ToHelptheKids,ParentsGoBacktoSchool[A]Forafewyearsnow,everyparentofanewbornbabyintheSouthFloridadist
最新回复
(
0
)