通过键盘输入一个不多于50个字符的字符串,分别统计出其中ASCII码值为奇数和偶数的字符的个数并输出。
时间: 2024-03-24 18:35:48 浏览: 15
好的,这是一个计算字符ASCII码值奇偶性的问题,我可以帮你解决。以下是 C++ 代码示例:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
int odd_count = 0, even_count = 0;
getline(cin, str); // 输入字符串
for (int i = 0; i < str.length(); i++) {
int ascii = (int) str[i]; // 获取字符的ASCII码值
if (ascii % 2 == 0) {
even_count++; // 统计偶数个数
} else {
odd_count++; // 统计奇数个数
}
}
cout << "Odd count: " << odd_count << endl;
cout << "Even count: " << even_count << endl;
return 0;
}
```
以上代码通过 `getline()` 函数从键盘读入一个字符串,然后遍历字符串中的每个字符,通过 `(int) str[i]` 获取字符的 ASCII 码值,判断奇偶性并统计个数,最后输出结果。希望能够帮到你!
相关问题
c语言输出通过键盘输入一个不多于50个字符的字符串,分别统计出其中ASCII码值为奇数和偶数的字符的个数并输出。
好的,这是使用 C 语言实现的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char string[50];
int odd_count = 0, even_count = 0;
printf("请输入一个不多于50个字符的字符串:");
fgets(string, 50, stdin);
for (int i = 0; i < strlen(string); i++) {
int ascii_value = (int)string[i];
if (ascii_value % 2 == 0) {
even_count++;
} else {
odd_count++;
}
}
printf("奇数字符个数:%d\n", odd_count);
printf("偶数字符个数:%d\n", even_count);
return 0;
}
```
以上代码中,我们使用了 `fgets()` 函数从键盘获取输入的字符串,并使用了 `strlen()` 函数获取字符串的长度。然后,我们遍历字符串中的每个字符,计算其 ASCII 码值并判断奇偶性,最后输出统计结果。
你可以将以上代码复制到一个 C 语言编译器中,然后运行它。程序会提示你输入一个不多于50个字符的字符串,你可以输入任何你想要的字符串。程序会统计出其中 ASCII 码值为奇数和偶数的字符的个数,并输出结果。
从键盘输入一个字符串,以换行符结束,输入不多于1000个字符。保证输入中至少有一个数字。 输出字符串中的全部数字c语言
以下是一个简单的C语言程序实现该功能:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[1001]; // 定义一个字符串数组
fgets(str, 1001, stdin); // 从标准输入中读取字符串
// 遍历字符串中的每个字符,如果是数字就输出
for (int i = 0; str[i] != '\0'; i++) {
if (isdigit(str[i])) {
printf("%c", str[i]);
}
}
return 0;
}
```
程序逻辑比较简单,通过fgets函数从标准输入中读取字符串,然后遍历字符串中的每个字符,如果是数字就输出。注意,isdigit函数是C标准库中的函数,用于判断一个字符是否是数字。