首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun(),它的功能是:判断字符串是否是回文?若是,函数返回1,主函数中输出:YES,否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串12312就不是回文。 [注意] 部分源程序给
请编写函数fun(),它的功能是:判断字符串是否是回文?若是,函数返回1,主函数中输出:YES,否则返回0,主函数输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串12312就不是回文。 [注意] 部分源程序给
admin
2013-06-12
74
问题
请编写函数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://www.kaotiyun.com/show/trJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序通过函数sunFun求f(x)。这里f(x)=x2+1,由F函数实现。请填空。main(){printf("Thesum=%d\n",SunFun(10));}SunFun(intn){int
在函数调用过程中,如果函数fun A调用了函数fun B,函数fun B又调用了函数fun 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\
评价排序算法优劣的主要标准是______和______。
语句printf("a\bhow\’s\\\bhe\n");的输出结果是______。(说明:’b’是退格符)
以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#defineM2#defineN4voidSumColumM
以下与函数fseek(fp,OL,SEEK_SET)有相同作用的是______。
在待排序的元素序列基本有序的前提下,效率最高的排序方法是______。
以下程序中,fun()函数的功能是求3行4列二维数组每行元素中的最大值,请填空。voidfun(int,int,int(*)[4],int*);main(){inta[3][4]={{12,41,36,28},{19,33
以下程序统计从终端输入的字符中大写字母的个数,num[0]中统计字母A的个数,num[1]中统计字母B的个数,其他依次类推。用#号结束输入,请填空。#include<stdio.h>#include<ctype.h>mai
随机试题
请你说明信用证的关系人包括哪些?
人员配备的工作包括______、培训和考核组织成员。
慢性肾盂肾炎的基本病变属于
依据《安全生产法》的规定,承担安全评价、认证、检测、检验工作的机构,出具虚假证明,给他人造成损害的,()。
质量计划应根据()来编制。
根据会计科目设置的,具有一定格式和结构,用于分类反映会计要素增减变动情况及其结果的载体是()。
某公司拟采购一批零件,供应商报价如下:(1)立即付款,价格为9620元;(2)20天内付款,价格为9650元;(3)21至40天内付款,价格为9800元;(4)41至90天内付款,价格为10000元。要求回答以下两个互不相关的问题:假设银行短
韵律活动中,3-4岁最感兴趣的动作是()。
有些教师,其所带班级的考试成绩总是处在年级前茅,个人的教育教学能力、工作能力都特别强,但是学生对其满意度却不是很高,这是由于()。
WhattheHeckDoesVincentvanGoghHaveToDoWithInternetMarketing?[A]Nothingandeverything!Tuckeddiscreetlyawayon
最新回复
(
0
)