pr0907.cpp
来自「practice c++, it is from the book http:/」· C++ 代码 · 共 47 行
CPP
47 行
// Programming with C++, Second Edition, by John R. Hubbard
// Copyright McGraw-Hill, 2000
// Problem 9.7 on page 222
// Changes to lower case
#include <fstream>
#include <iostream>
using namespace std;
void reduce(string&);
int main()
{ ifstream infile("Pr0907.in");
string word;
while (infile >> word)
{ reduce(word);
cout << word << "\t";
}
}
bool is_upper(char);
bool is_lower(char);
bool is_letter(char);
void reduce(string& s)
{ while (s.length() > 0 && !is_letter(s[0]))
s.erase(0, 1);
int k = s.length() - 1;
while (k > 0 && !is_letter(s[k--]))
s.erase(k+1, 1);
int len = s.length();
if (len == 0) return;
for (int i=0; i<len; i++)
if (is_upper(s[i])) s[i] += 'a' - 'A';
}
bool is_upper(char c)
{ return bool(c >= 'A' && c <= 'Z');
}
bool is_lower(char c)
{ return bool(c >= 'a' && c <= 'z');
}
bool is_letter(char c)
{ return bool(is_upper(c) || is_lower(c));
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?