首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"
admin
2020-10-26
51
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"。回文是指顺读和倒读都一样的字符串。
例如,字符串LEVEL是回文,而字符串123312就不是回文。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#define N80
int fun(char*sir)
{
}
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");
/*********found*********/
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);
/*********found*********/
}
选项
答案
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://www.kaotiyun.com/show/wk3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>main(){inti,j=0;chara[]="abl23c4d56ef7gh89";for(i=0;a[i];i++)if(a[i]>=’0’&&a[i]<=’9’)a[j++]=a[i]
关于程序设计基本概念,以下叙述错误的是()。
有以下程序:#includemain(){intx=1,y=2,z=3;if(x>1)if(y>x)putchar(’A’);elseputchar(’B’);elseif
有以下程序:#includemain(){if(’\0’==0)putchar(’1’);if(’0’==0)putchar(’2’);if(’a’>’b’)putchar(’3’);
若有定义:chars[30]={0};运行时输入:Thisisastring.则以下不能正确读入整个字符串:Thisisastring.到字符数组S中的语句组是()。
属于结构化程序设计原则的是()。
有以下程序:#includemain(){inti,j=0;chara[]=“Howareyou”,b[10]={0};for(i=0;a[i];i++)if(a[i]==’’)
有以下程序:#includevoidf(intx[],intn){if(n>1){printf("%d,",x[0]);f(&x[1],n一1);printf("%d,",x[0]);
随机试题
在一定时期内,患某种疾病的人群中因该病而死亡的频率称为
贵金瓷冠的金属基底冠有瓷覆盖部位的厚度最少为
更换新账簿时,如有余额,则在新账簿中的第一行摘要栏内注明“上年结转”字样。()
下列关于融资租赁合同租赁物所有权归属的说法中,错误的是()。
某公司因生产经营的需要再筹资50万元。现有两种筹资方案可供选择:①增发25,000股普通股,每股发行价为20元;②发行债券50万元,债券年利率为10%。公司的息税前盈余目标为40万元,所得税率为25%,该公司筹资后的盈余状况见下表:根据上述资料,回答下
甲公司适用的所得税税率为25%。甲公司于2015年1月1日以货币资金2000万元取得了乙公司10%的股权,甲公司将取得的乙公司10%股权作为可供出售金融资产核算。2015年12月31日,该可供出售金融资产的公允价值为2400万元。2015年度乙公司实
事业单位不应缴纳的流转税金是()。
一位社会学家对两组青少年作了研究。第一组成员每周看暴力内容的影视时间平均不少于10小时,第二组则不多于2小时。结果发现第一组成员中举止粗鲁者所占的比例要远高于第二组。因此,此项研究认为,多看暴力内容的影视容易导致青少年举止粗鲁。以下哪项,如果为真,将对上述
生产力具有复杂的系统结构,其基本要素有
WhatiscausingtheflightdelaysatHeathrowAirport?
最新回复
(
0
)