首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun(),它的功能是:判断字符串是否是回文?若是,函数返回1,主函数中输出:YES,否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串12312就不是回文。 [注意] 部分源程序给
请编写函数fun(),它的功能是:判断字符串是否是回文?若是,函数返回1,主函数中输出:YES,否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串12312就不是回文。 [注意] 部分源程序给
admin
2013-06-12
44
问题
请编写函数fun(),它的功能是:判断字符串是否是回文?若是,函数返回1,主函数中输出:YES,否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。
例如,字符串LEVEL是回文,而字符串12312就不是回文。
[注意] 部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
[试题源程序]
#include<stdio.h>
#define N 80
int fun(char *str)
{
}
main()
{
char s[N];
printf("Enter a string:")" gets(s);
printf("\n\n"); puts(s);
if(fun(s))
printf(" YES\n");
else
printf(" NO\n");
NONO();
}
NONO()
{
/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
FILE *rf, *wf;
int i ; char s[N];
rf=fopen("K:\\k06\\24010001\\in.dat", "r");
wf=fopen("K:\\k06\\24010001\\out.dat", "w");
for(i=0; i<10; i++){
fscanf(rf, "%s", s);
if(fun(S))
fprintf(wf, "%s YES\n", s);
else
fprintf(wf, "%s NO\n", s);
}
fclose(rf);
fclose(wf);
}
选项
答案
int fun(char *str) { int i, n=0, fg=1; char *p=str; while(*p) { n++; P++; } for(i=0; i<n/2; i++) if(str[i]==str[n-1-i]); else { fg=0; break; } return fg; }
解析
本题的设计思路是:(1)定义一个int型变量flag用做返回值,定义一个字符指针代替原串遍历,求字符串的长度;(2)利用循环及if条件语句判断字符串首尾对应字符是否相等;(3)如果为回文数,修改flag的值;(4)返回flag
转载请注明原文地址:https://kaotiyun.com/show/trJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若以下程序所生成的可执行文件名为filel.exe,当执行该程序时输入FILE1 CHINA BEIJING SHANGHAI,程序的输出结果是______。 main (int argc,char* argv[]) { while(--argc>0){
以下正确的数组定义语句是______。
若已定义: int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i; 其中0≤i≤9,则对a数组元素不正确的引用是______。
以下程序的运行结果是______。 #include <stdio.h> main() {int a[]:{1,2,3,4,5,6,7,8,9,10,11,12): int *p=a+5,*q=NULL: *q=*(p+5): printf("%d %d\
已知指针p的指向如下图所示,则执行语句“--p;”后p的值是______。
若按功能划分,软件测试的方法通常分为白盒测试方法和______测试方法。
语句printf("a\bhow\’s\\\bhe\n");的输出结果是______。(说明:’b’是退格符)
以下程序统计从终端输入的字符中大写字母的个数,num[0]中统计字母A的个数,num[1]中统计字母B的个数,其他依次类推。用#号结束输入,请填空。#include<stdio.h>#include<ctype.h>mai
函数min()的功能是:在带头结点的单链表中查找数据域中值最小的结点。请填空#include<stdio.h>structnode{intdata;structn
随机试题
在下列关于资产负债率、权益乘数和产权比率之间关系的表达式中,正确的是()。
总结的主要作用是()
下图所示影响线不是哪个量值的影响线?()
处方的结构中前记部分不包括
上颌结节阻滞麻醉容易发生的并发症是
下列关于使用寿命有限的无形资产摊销的表述中,正确的有()。(2014年)
企业接受的现金捐赠,应计入()。
关于生活事件的概念,不正确的叙述是()。
(1)前往某地的旅客未能按时登机(2)飞往某地的当日航班被取消(3)旅客纷纷到问讯处询问开航时间(4)等候在机场的旅客被送往民航招待所过夜(5)气象部门通知浓雾将持续6个小时
A.条件(1)充分,但条件(2)不充分B.条件(2)充分,但条件(1)不充分C.条件(1)和(2)单独都不充分,但条件(1)和条件(2)联合起来充分D.条件(1)充分,条件(2)也充分E.条件(1)和(2)单独都不充分,两个条件联合起来也不充分
最新回复
(
0
)