一般来讲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)也可以输出字符,并可以提供更丰富的输出风格
#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"< } 运行结果:
if(strcmp(A,"abc") == 0) printf("1\n");
if(strcmp(A,"bcd") == 0) printf("2\n");
也可以换成swith进行筛选,判断字符串是否一致就用strcmp
用判断语句呗
if(A == "abc")
cout<<1;
else if(A == "bcd")
cout<<2;
string a="abc";
string b="abc";
a.compare(b); a==b 着返回0.否者其他值