对一个已知的字符串查找最长单词,并且输出来
2014-07-21 21:41
323 查看
// 第一种方法
//如何求出字符串中的单词的长度
// char str[] = "lanou is a big company";
// int maxlength = 0; //存储最长单词长度
// int length = 0;//用来记录单词的长度
// int maxIndex = 0;
// // 使用while循环对字符串进行遍历
// int i = 0;
// while (str[i] != '\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// //遇到空格
// if (length > maxlength) {
// maxlength = length;
// maxIndex = i - maxlength;
// }
// length = 0;// 当读到空格时,将length清零,记录下一个单词的长度
// }
// i ++;
// }
// //如果最后一个单词没有空格直接到\0,并且最后一个单词到铲毒也是最长 的,此时就会缺少一个和Max length比较的过程,所以我们只要在while循环的外部加上比较操作即可
// if (length > maxlength) {
// maxlength = length;
// maxIndex = i - maxlength;
// }
//// 输出最长单词
// for (int i = maxIndex; i <maxIndex + maxlength ; i ++) {
// printf("%c", str[i]);
// }
// printf("最大长度为:= %d, maxlength, maxIndex = %d\n", length, maxIndex);
// // 使用while循环对字符串进行遍历
//
// //2 编程在一个已知的字符串中查找最长单词,假定字符串中只含有字母和空格,用空格来分隔单词。
// //问题1: 如何求出字符串中单词的长度
// // 第二种方法
// char str[] = "lanlanh is a big company";
// int maxLength = 0;//存储最长单词的长度
// int length = 0;//用来记录单词的长度
// int maxIndex = 0;//用来记录最长单词开始的下标
// // 使用while循环对字符串进行遍历
// int i = 0;
// while (str[i] !='\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// if (length > maxLength) {
// maxLength = length;
// maxIndex = i - maxLength;
// }
// length = 0;//读到空格时,将length清零,记录下一个单词的长度
// }
// i ++;
// }
// printf("最长单词长度为:%d", length);
// printf("\n");
// //如果最后一个单词后面没有空格,并且最后一个单词的长度也是最长的,此时就会缺少一个和maxlength比较的过程,所以我们只需要在while循环的外面加上一个比较的操作即可
// if (length > maxLength) {
// maxLength = length;
// maxIndex = i - maxLength;
// }
//// for (int i = maxIndex; i < maxIndex + maxLength; i ++) {
//// printf("%c", str[i]);
//// }
// while (str[i] == '\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// if (length == maxLength) {//一旦找到和最长单词相等长度的单词,就立即输出该单词
// for (int j = i - maxLength; j < i; j ++) {
// printf("%c", str[j]);
// }
// printf("\n");
// }
// length = 0;
// }
// }
return
0;
}
//如何求出字符串中的单词的长度
// char str[] = "lanou is a big company";
// int maxlength = 0; //存储最长单词长度
// int length = 0;//用来记录单词的长度
// int maxIndex = 0;
// // 使用while循环对字符串进行遍历
// int i = 0;
// while (str[i] != '\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// //遇到空格
// if (length > maxlength) {
// maxlength = length;
// maxIndex = i - maxlength;
// }
// length = 0;// 当读到空格时,将length清零,记录下一个单词的长度
// }
// i ++;
// }
// //如果最后一个单词没有空格直接到\0,并且最后一个单词到铲毒也是最长 的,此时就会缺少一个和Max length比较的过程,所以我们只要在while循环的外部加上比较操作即可
// if (length > maxlength) {
// maxlength = length;
// maxIndex = i - maxlength;
// }
//// 输出最长单词
// for (int i = maxIndex; i <maxIndex + maxlength ; i ++) {
// printf("%c", str[i]);
// }
// printf("最大长度为:= %d, maxlength, maxIndex = %d\n", length, maxIndex);
// // 使用while循环对字符串进行遍历
//
// //2 编程在一个已知的字符串中查找最长单词,假定字符串中只含有字母和空格,用空格来分隔单词。
// //问题1: 如何求出字符串中单词的长度
// // 第二种方法
// char str[] = "lanlanh is a big company";
// int maxLength = 0;//存储最长单词的长度
// int length = 0;//用来记录单词的长度
// int maxIndex = 0;//用来记录最长单词开始的下标
// // 使用while循环对字符串进行遍历
// int i = 0;
// while (str[i] !='\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// if (length > maxLength) {
// maxLength = length;
// maxIndex = i - maxLength;
// }
// length = 0;//读到空格时,将length清零,记录下一个单词的长度
// }
// i ++;
// }
// printf("最长单词长度为:%d", length);
// printf("\n");
// //如果最后一个单词后面没有空格,并且最后一个单词的长度也是最长的,此时就会缺少一个和maxlength比较的过程,所以我们只需要在while循环的外面加上一个比较的操作即可
// if (length > maxLength) {
// maxLength = length;
// maxIndex = i - maxLength;
// }
//// for (int i = maxIndex; i < maxIndex + maxLength; i ++) {
//// printf("%c", str[i]);
//// }
// while (str[i] == '\0') {
// if (str[i] != ' ') {
// length ++;
// } else {
// if (length == maxLength) {//一旦找到和最长单词相等长度的单词,就立即输出该单词
// for (int j = i - maxLength; j < i; j ++) {
// printf("%c", str[j]);
// }
// printf("\n");
// }
// length = 0;
// }
// }
return
0;
}
相关文章推荐
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词(只使用循环,数组)
- 算法:编程在一个已知的字符串中查找最长单词,假定字符串中只包含字母和空格,空格用来分隔不同单词
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空 格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- C语言编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
- 在一个已知的字符串中找最长单词
- 【字符串操作】11.查找一个字符串中最长的纯字母的子串(即查找最长的单词)
- 编程在一个已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。
- 怎么查找字符串中最长的一个单词
- 自己写的一个后缀树算法查找一个字符串的最长重复子串
- C语言 已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。
- 一个字符串求最长的单词C++算法
- 查找一个字符串中每个单词的出现次数--Java