用c++编写输入一个字符串只保留其中的数字字符和字母字符的程序
3个回答
展开全部
#include <iostream>
using namespace std;
int main(int argc, _TCHAR* argv[])
{
char src[100];
char dest[100];
int i = 0, j = 0;
cin >> src;
while (src[i++] != '\0')
{
if ((src[i] < 'Z' && src[i] > 'A') || (src[i] < 'z' && src[i] > 'a') || (src[i] < '9' && src[i] > '0'))
{
dest[j++] = src[i];
}
}
dest[j] = '\0';
cout << dest;
}
using namespace std;
int main(int argc, _TCHAR* argv[])
{
char src[100];
char dest[100];
int i = 0, j = 0;
cin >> src;
while (src[i++] != '\0')
{
if ((src[i] < 'Z' && src[i] > 'A') || (src[i] < 'z' && src[i] > 'a') || (src[i] < '9' && src[i] > '0'))
{
dest[j++] = src[i];
}
}
dest[j] = '\0';
cout << dest;
}
展开全部
将字符串转为 char[],
对每一个字母用 isalnum 进行检查,
isalnum 是用来检查一个 char 是否是 alphanumeric (数字字母, 0-9, a-z, A-Z)
将不是数字字母的字符删除
对每一个字母用 isalnum 进行检查,
isalnum 是用来检查一个 char 是否是 alphanumeric (数字字母, 0-9, a-z, A-Z)
将不是数字字母的字符删除
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以在原数组基础上修改,无需分配新的数组。
void SaveNumChar(char *src)
{
int flag = 0;
char *str = src;
while(*str != '\0')
{
if((*str <= '9' && *str >= '0') || (*str <= 'Z' && *str >= 'A') || (*str <= 'z' && *str >= 'a'))
{ src[flag] = *str; flag++; }
str++;
}
src[flag] = '\0';
}
void SaveNumChar(char *src)
{
int flag = 0;
char *str = src;
while(*str != '\0')
{
if((*str <= '9' && *str >= '0') || (*str <= 'Z' && *str >= 'A') || (*str <= 'z' && *str >= 'a'))
{ src[flag] = *str; flag++; }
str++;
}
src[flag] = '\0';
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询