OJ题目 查找最大元素 C语言实现
来源:互联网 发布:可视化图表制作软件 编辑:程序博客网 时间:2024/06/05 18:54
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。
Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入”(max)”。
Sample Input
abcdefgfedcba
xxxxx
Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
思路:只要找到最大元素,在后面插入(max),然后输出插入后的结果就可以了。
#include<stdio.h>#include<conio.h>#define SIZE 601#define Debug void main(){ char str[SIZE]; char ch; char *p="(max)",*pstr,*qstr; int i,tag; while(scanf("%s",str)!=EOF) { tag=0; i=0; ch=str[0]; while(str[i]!='\0') //查找其中的最大元素,并且赋值给ch { if(ch<str[i]) ch=str[i]; i++; } pstr=str; //qstr和pstr都指向str的第一个元素 qstr=pstr; while(*pstr!='\0') //如果pstr还没有遍历str中所有的元素 { i=0; while(p[i]!='\0') //如果(max)还没全部插进去 { while(*pstr!=ch) //如果pstr没有指向最大的元素 { if(*pstr=='\0') { tag=1; break; } else pstr++; } if(tag==1) break; while(*qstr!='\0') qstr++; //qstr指到末尾 while((pstr+i)<qstr) { *(qstr+1)=*qstr; qstr--; //pstr+i前面的元素都后移一个位置 } *(pstr+1+i)=p[i++]; //多出来的一个位置插入p指向的字符 } if(tag==1) break; pstr+=6; //移动到下一个元素 } printf("%s\n",str); //输出结果 }}
附:还有一种方法,就是找出这个最大元素,然后输出时遇到这个最大元素的时候,后面加上(max),这种方法比较简单,没有什么难度,也没有什么价值,就不去实现了
阅读全文
0 0
- OJ题目 查找最大元素 C语言实现
- hdu2025 查找最大元素(C语言)
- C语言 查找数组中最大最小元素
- NEUQACM OJ:1255--查找最大元素
- hduoj 查找最大元素 题目2025
- 题目1200:最大的两个数 ACM C语言实现
- C语言中的数组元素查找
- hdu_2025_查找最大元素
- 2025 查找最大元素
- 查找最大元素
- HDOJ2025 查找最大元素
- HDU_2025 查找最大元素
- hdu2025 查找最大元素
- hdoj_2025 查找最大元素
- hdu-查找最大元素
- acm--查找最大元素
- 查找最大元素
- 查找最大元素
- Memcached Java客户端2.6.1发布
- 第一节 java数据类型
- PHP版:地图对接汇总(百度地图)
- 小问题的为什么
- MySQL插入更新删除
- OJ题目 查找最大元素 C语言实现
- Leaflet API 翻译上
- 进制转换:二进制、八进制、十六进制、十进制之间的转换
- php 数组模糊查询
- Hive相关
- qml与c++混合编程之简单demo说明
- node request如何请求第三方服务器的文件
- apkbuiler.bat编译出现'THIS TOOL IS DEPRECATED.See --help for more information'
- JavaSE基础知识学习一知识梳理