c++ 输入一个字符串,判断是否有八位,是否存在大小写字母和数字,存在输出yes
时间: 2024-06-03 07:10:08 浏览: 138
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int len, has_digit = 0, has_upper = 0, has_lower = 0, has_eight = 0;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
if (len == 8)
has_eight = 1;
for (int i = 0; i < len; i++)
{
if (str[i] >= '0' && str[i] <= '9')
has_digit = 1;
else if (str[i] >= 'A' && str[i] <= 'Z')
has_upper = 1;
else if (str[i] >= 'a' && str[i] <= 'z')
has_lower = 1;
}
if (has_eight && has_digit && has_upper && has_lower)
printf("yes");
else
printf("no");
return 0;
}
相关问题
c++输入两个单词,判断是否可以首尾拼接,一单词首部和另一单词尾部有相同的字符串(大小写字母不分)才能拼接,如果可以拼接,输出“yes”,否则输出“no”。直接写代码。
你可以使用C++编写一个简单的函数来实现这个功能。首先,我们需要读取两个单词并将其转换为小写,以便比较时不区分字母大小写。然后检查第一个单词的最后一个字符能否作为第二个单词的第一个字符。如果可以,返回"Yes",否则返回"No"。以下是代码示例:
```cpp
#include <iostream>
#include <string>
#include <cctype>
std::string checkIfCanCombine(const std::string& word1, const std::string& word2) {
// 转换为小写并获取长度
std::string lowerWord1 = word1;
std::transform(lowerWord1.begin(), lowerWord1.end(), lowerWord1.begin(), ::tolower);
std::string lowerWord2 = word2;
std::transform(lowerWord2.begin(), lowerWord2.end(), lowerWord2.begin(), ::tolower);
// 检查第一个单词的最后一个字符是否等于第二个单词的第一个字符
if (lowerWord1[lowerWord1.size() - 1] == lowerWord2[0]) {
return "Yes";
} else {
return "No";
}
}
int main() {
std::string word1, word2;
std::cout << "Enter first word: ";
std::cin >> word1;
std::cout << "Enter second word: ";
std::cin >> word2;
std::string result = checkIfCanCombine(word1, word2);
std::cout << "Result: " << result << std::endl;
return 0;
}
```
字符串判等 题目描述 判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等,是输出YES,否输出NO。c++
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char str1[100], str2[100];
int len1, len2, i, j;
scanf("%[^\n]s", str1); // 输入字符串1
getchar(); // 读取回车符
scanf("%[^\n]s", str2); // 输入字符串2
len1 = strlen(str1);
len2 = strlen(str2);
if (len1 != len2) { // 如果长度不等,肯定不相等
printf("NO\n");
return 0;
}
for (i = 0, j = 0; i < len1 && j < len2; i++, j++) {
if (isspace(str1[i])) { // 忽略空格
j--;
continue; // 继续下一次循环
}
if (isspace(str2[j])) {
i--;
continue;
}
if (tolower(str1[i]) != tolower(str2[j])) { // 忽略大小写
printf("NO\n");
return 0;
}
}
printf("YES\n");
return 0;
}
阅读全文