c++里怎样实现判断某个字符串是否为特定字母并输出的功能

2025-02-27 02:56:41
推荐回答(5个)
回答1:

一般来讲ASCII码在0x20以下的(含)都是格式字符
0x21~0x7E都是可以显示的符号

0x30~0x39都是数字
0x41~0x5A都是大写字母
0x61~0x7A都是小写字母
0x7F~0xFF都是不可直接显示的字符,一般用来显示中文
所以判断字符是否为特定字母并输出
关键看这个特定是什么含义
1 特定是指指定字母
则可以尝试
void OutPutChar(char ch)
{
const char cond = 'A';
if(ch==cond){

putchar(ch);//输出一个字符到屏幕
}

}
2 特定是指若干个字母中的一个
void OutPutChar(char ch)
{
const char* cond = "abcdefg;'>";
if(strchr(cond,ch)!=NULL){//ch在指定的字符序列中

putchar(ch);
}

}
3 特定是指符合否些规律,比如是小写字母
void OutPutChar(char ch)
{
unsigned cond = (unsigned)ch;
if(cond-'a'<26){//如果ch ASCII码比'a'小,则会变成一个很大的数,无法通过判定

putchar(ch);
}

}
除了putchar(ch)可以输出字符外
printf("%c",ch)也可以输出字符,并可以提供更丰富的输出风格

回答2:

#include "iostream"

#include "cstring"

using namespace std;

int main()

{

     string str1;

     char instr[100]={0};

     

     cin>>instr;

     str1=instr;

     if(strcmp(str1.c_str(),"abc")==0)//

      cout<<"1"<

     if(strcmp(str1.c_str(),"bcd")==0)

      cout<<"2"<

}

运行结果:

回答3:

if(strcmp(A,"abc") == 0) printf("1\n");
if(strcmp(A,"bcd") == 0) printf("2\n");
也可以换成swith进行筛选,判断字符串是否一致就用strcmp

回答4:

用判断语句呗
if(A == "abc")
cout<<1;
else if(A == "bcd")
cout<<2;

回答5:

string a="abc";
string b="abc";
a.compare(b); a==b 着返回0.否者其他值