栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言实现洛谷题库中的 P1125 [NOIP2008 提高组] 笨小猴

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言实现洛谷题库中的 P1125 [NOIP2008 提高组] 笨小猴

文章目录
  • 前言
  • 答案
    • 1.源代码
  • 总结


前言

该题目来自洛谷题库中的字符串第三题,有一定难度。


答案 1.源代码
#define _CRT_SECURE_NO_WARNINGS 1
#include
int main()
{
	char dh[101],eh[100];
	int ch[25], fh[100], a, b, c, d = 0, e, f, g=0,h,i,j;
	ch[0] = 2;
	for (a = 3; a <= 100; a++) {
		for (b = 2; b < a; b++) {
			c = 1;
			if (a % b == 0) {    //找出100以内的素数,并用数组ch存起来。
				c = 0; break;}}
		if (c == 1) { d+=1; ch[d] = a; }}
	//for (d = 0; d <= 24; d++) { printf("%dn",ch[d]); }//用以判断该段代码的可行性
	
	for (d = 0; d <=100; d++) {
		scanf("%c",&dh[d]);
		if (dh[d] == 'n') { dh[d] = ''; e = d;break;  }//输入字符串
	}
	//for (d = 0;dh[d]!='' ; d++) { printf("%c", dh[d]); }//用以输出判断该段代码的可行性

	for (d = 0; d <= e-1; d++) {
		g = 0;
		for (c = 0; c <= e-1;c++) {
			if (dh[d] == dh[c]) { g += 1; fh[d] = g; }//找出每一个字母出现的次数并用fh数组存起来
		}
	}//printf("%d",fh[0]);//用以输入qqqq试一试该代码能否可行
	
	h = fh[0];
	for (d = 0; d <= e - 1; d++) {
		if(fh[d] > h){ h = fh[d];}//找出某字母出现次数的最大值
	}
	
	i = fh[0];
	for (d = 0; d <= e - 1;d++) {
		if (fh[d] < i) { i = fh[d]; }//找出某字母出现次数的最小值
	}
	//printf("h=%d",h);printf("i=%d", i);//用以判断输入一段字符串能否找出出现最大或最小次数的字母
	
	a = h - i;//出现最大系数-出现最小次数
	j = 0;
	for (d = 0; d <= 24;d++) {
		if (a == ch[d]) {
			j = 1;               //判断a是否为100以内的质数
		}
		else; 
	}
	
	if(j==1){ printf("Lucky Wordn%d", a); }//完成题目要求的输出
	else printf("No Answern0"); 
	
	return 0;
}


总结

该代码涉及字符数组和整形数组,有一定的综合性,每段代码的作用博主以予注释方便理解。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/873571.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号