您的位置:首页 > 游戏 > 游戏 > 网站制作怎么赚钱_自助建站软件下载_seo入门视频_seo排名点击软件

网站制作怎么赚钱_自助建站软件下载_seo入门视频_seo排名点击软件

2024/12/28 16:08:39 来源:https://blog.csdn.net/qq_41840843/article/details/144176007  浏览:    关键词:网站制作怎么赚钱_自助建站软件下载_seo入门视频_seo排名点击软件
网站制作怎么赚钱_自助建站软件下载_seo入门视频_seo排名点击软件

最长最短单词

      • C语言实现
      • C++实现
      • Java实现
      • Python实现


💐The Begin💐点点关注,收藏不迷路💐

输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。
试输出第1个最长的单词和第1个最短单词。

输入

一行句子。

输出

第1行,第一个最长的单词。
第2行,第一个最短的单词。

样例输入

I am studying Programming language C in Peking University

样例输出

Programming
I

C语言实现

#include <stdio.h>
#include <string.h>
#include <ctype.h>#define MAX_LENGTH 200 * 100  // 考虑句子最多200个单词,每个单词最长100字符,预留足够空间int main() {char sentence[MAX_LENGTH];  // 存储输入的句子fgets(sentence, MAX_LENGTH, stdin);  // 从标准输入读取句子,包含换行符int len = strlen(sentence);if (len > 0 && sentence[len - 1] == '\n') {  // 去除换行符sentence[len - 1] = '\0';}char longest_word[100];  // 存储最长的单词char shortest_word[100];  // 存储最短的单词strcpy(longest_word, "");  // 初始化为空字符串strcpy(shortest_word, "");  // 初始化为空字符串int current_word_start = 0;  // 当前单词开始的位置int current_word_length = 0;  // 当前单词的长度int max_length = 0;  // 记录最长单词长度int min_length = 100;  // 初始设为一个较大值,方便比较找最短单词for (int i = 0; i < len; i++) {if (isalpha(sentence[i])) {  // 如果是字母,说明在单词内current_word_length++;} else if (sentence[i] =='' || sentence[i] == ',') {  // 如果是间隔符号,说明单词结束if (current_word_length > max_length) {  // 判断是否是目前最长的单词max_length = current_word_length;strncpy(longest_word, sentence + current_word_start, current_word_length);longest_word[current_word_length] = '\0';}if (current_word_length < min_length && current_word_length > 0) {  // 判断是否是目前最短的单词且长度大于0min_length = current_word_length;strncpy(shortest_word, sentence + current_word_start, current_word_length);shortest_word[current_word_length] = '\0';}current_word_start = i + 1;  // 更新下一个单词开始的位置current_word_length = 0;  // 重置当前单词长度}}// 处理最后一个单词的情况(因为循环结束时没处理最后一个单词结束的情况)if (current_word_length > max_length) {max_length = current_word_length;strncpy(longest_word, sentence + current_word_start, current_word_length);longest_word[current_word_length] = '\0';}if (current_word_length < min_length && current_word_length > 0) {min_length = current_word_length;strncpy(shortest_word, sentence + current_word_start, current_word_length);shortest_word[current_word_length] = '\0';}printf("%s\n", longest_word);printf("%s\n", shortest_word);return 0;
}

C++实现

#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
using namespace std;int main() {string sentence;getline(cin, sentence);  // 从标准输入读取句子,自动去除换行符string longest_word;  // 存储最长的单词string shortest_word;  // 存储最短的单词longest_word = "";  // 初始化为空字符串shortest_word = "";  // 初始化为空字符串stringstream ss(sentence);  // 创建stringstream对象,用于分割句子string current_word;int max_length = 0;  // 记录最长单词长度int min_length = 100;  // 初始设为一个较大值,方便比较找最短单词while (ss >> current_word) {  // 从stringstream中按空格或逗号分割读取单词int length = current_word.length();if (length > max_length) {  // 判断是否是目前最长的单词max_length = length;longest_word = current_word;}if (length < min_length && length > 0) {  // 判断是否是目前最短的单词且长度大于0min_length = length;shortest_word = current_word;}}cout << longest_word << endl;cout << shortest_word << endl;return 0;
}

Java实现

import java.util.Scanner;public class LongestAndShortestWord {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String sentence = scanner.nextLine();  // 从标准输入读取句子String longestWord = "";  // 存储最长的单词String shortestWord = "";  // 存储最短的单词int maxLength = 0;  // 记录最长单词长度int minLength = 100;  // 初始设为一个较大值,方便比较找最短单词String[] words = sentence.split("[,\\s]+");  // 按空格或逗号分割句子得到单词数组for (String word : words) {int length = word.length();if (length > maxLength) {  // 判断是否是目前最长的单词maxLength = length;longestWord = word;}if (length < minLength && length > 0) {  // 判断是否是目前最短的单词且长度大于0minLength = length;shortestWord = word;}}System.out.println(longestWord);System.out.println(shortestWord);scanner.close();}
}

Python实现

sentence = input()  # 从标准输入读取句子words = sentence.split()  # 以空格为分隔符将句子分割成单词列表longest_word = ""  # 存储最长的单词
shortest_word = ""  # 存储最短的单词for word in words:word = word.strip(",")  # 去除单词两端可能存在的逗号length = len(word)if length > len(longest_word):  # 判断是否是目前最长的单词longest_word = wordif length < len(shortest_word) or shortest_word == "":  # 判断是否是目前最短的单词shortest_word = wordprint(longest_word)
print(shortest_word)

在这里插入图片描述


💐The End💐点点关注,收藏不迷路💐

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com