传说这是集美大学的学生对话。本题要求你做一个简单的自动问答机,对任何一个问句,只要其中包含 PTA 就回答 Yes!,其他一概回答 No.。 输入格式: 输入第一行给出一个整型范围内的正整数 N,随后 N 行,每行给出一个长度不超过 80 的字符串,为用户输入的句子,由英文字母、数字、空格和标点符号组成,以回车结束。 输出格式: 对每一行句子,如果其结尾字符为问号 ? 则判断此句中有无 PTA?如果有则在一行中输出 Yes!,否则输出 No.。如果不是问号结尾,则敷衍地回答 enen。请用c++语言实现
时间: 2023-06-04 15:04:02 浏览: 454
#include <stdio.h>
#include <string.h>
int main()
{
int n;
char str[81];
scanf("%d", &n);
getchar(); // 读入换行符
while (n--) {
fgets(str, 81, stdin); // 读入一行字符串
int len = strlen(str);
if (len > 0 && str[len-1] == '\n') { // 去掉换行符
str[len-1] = '\0';
len--;
}
if (len > 0 && str[len-1] == '?') { // 如果是问号结尾
if (strstr(str, "PTA") != NULL) { // 判断是否包含 PTA
printf("Yes!\n");
} else {
printf("No.\n");
}
} else { // 否则敷衍地回答
printf("enen\n");
}
}
return 0;
}
相关问题
传说这是集美大学的学生对话。本题要求你做一个简单的自动问答机,对任何一个问句,只要其中包含 PTA 就回答 Yes!,其他一概回答 No.。 输入格式: 输入第一行给出一个整型范围内的正整数 N,随后 N 行,每行给出一个长度不超过 80 的字符串,为用户输入的句子,由英文字母、数字、空格和标点符号组成,以回车结束。 输出格式: 对每一行句子,如果其结尾字符为问号 ? 则判断此句中有无 PTA?如果有则在一行中输出 Yes!,否则输出 No.。如果不是问号结尾,则敷衍地回答 enen。
好的,下面是一份 Python 代码,实现了你的要求:
```python
n = int(input()) # 输入整数 N
for i in range(n):
s = input().strip() # 读入一行字符串并去掉首尾空格
if s[-1] == '?': # 如果句子以问号结尾
if 'PTA' in s: # 如果包含 PTA
print('Yes!')
else:
print('No.')
else: # 如果句子不以问号结尾
print('enen')
```
代码分析:
1. 首先读入整数 N,表示有 N 行字符串需要处理。
2. 使用 `input` 函数读入一行字符串,并使用 `strip` 方法去掉首尾空格。
3. 判断句子是否以问号结尾。
4. 如果句子以问号结尾,则使用 `in` 运算符判断是否包含 PTA,如果包含则输出 Yes!,否则输出 No.。
5. 如果句子不以问号结尾,则直接输出 enen。
6. 循环处理下一行字符串,直到处理完所有字符串。
注意事项:
1. 使用 `strip` 方法去掉字符串首尾的空格。
2. 对于字符串的末尾,需要使用下标 `-1`(而不是 `-2`),因为 Python 中下标从 0 开始计数,最后一个字符的下标为 `-1`。
3. 使用 `in` 运算符判断字符串是否包含子串时,需要注意大小写问题,例如 PTA 和 pta 是不同的字符串。如果需要忽略大小写,可以将字符串转换为小写后再进行判断。
7-10 jmu_python_是否是数(异常) 分数 10 作者 蔡莉白 单位 集美大学 本题要求从键盘输入一个字符串,判断该串是否属于整数、浮点数或者复数的表示 输入格式: 输入一个字符串 输出格式: 输出yes或no
7-10 jmu_python_这个题目要求你编写一段Python程序,用户通过键盘输入一个字符串,你需要判断这个字符串是否能代表一个有效的整数、浮点数,或者是复数的形式。为了完成这个任务,你可以按照以下步骤:
1. 使用`try-except`结构对输入的字符串尝试转换成对应的数值类型(int、float或complex)。如果转换成功,说明字符串是有效的数值表示。
```python
input_str = input("请输入一个字符串:")
try:
# 尝试转换为整数
int_num = int(input_str)
# 如果转换为整数无误,再尝试转换为浮点数
float_num = float(input_str)
# 再尝试转换为复数,注意需要两个部分,如 "3+4j"
complex_num = complex(input_str)
except ValueError:
output = "no" # 如果转换失败,则认为不是有效数值表示
else:
output = "yes" # 否则字符串可以表示为数值
print(output)
```
阅读全文