70,021
社区成员




#include <stdio.h>
#define SIZE 10000
int main(){
char s[SIZE];
int i, j;
while(gets(s)){
for(i = j = 0; s[i]; i++){
if(s[i] >= '0' && s[i] <= '9'){//是数字
;
}else{
s[j++] = s[i];//j是指遍历到当前位置i时出现的字母个数
}
}
s[j] = 0;
printf("%s\n",s);
}
return 0;
}
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
char* remove_number(char *str);
int main()
{
char buffer[100]="abc123def456_abc123def456_abc123def456";
string s=(buffer);
string del("0123456789");
string::size_type pos=0;
while((pos=s.find_first_of(del,pos))!=string::npos) {
s.erase(pos,pos);
}
printf("%s\n", remove_number(buffer));
cout<<s<<endl;
return 0;
}
// 删除C风格字符串中的数字
char* remove_number(char *str)
{
char *write, *read;
write = read = str; // 三个指针指向原来的字符串
while (*read != 0) { // 当指针指向的字符不是字符串结尾
if (!('0' <= *read && *read <= '9')) { // 如果是数字
*write++ = *read; // 后一个字符填充前一个字符,这里还没有完全理解
}
++read;
}
*write = NULL; // 封闭字符串
return str; // 返回字符串指针
}
#include <stdio.h>
#include <stdlib.h>
char* remove_number(char *str);
int main()
{
char buffer[100];
while (scanf("%s", buffer) != EOF) {
printf("%s\n", remove_number(buffer));
}
return 0;
}
// 删除C风格字符串中的数字
char* remove_number(char *str)
{
char *write, *read;
write = read = str; // 三个指针指向原来的字符串
while (*read != 0) { // 当指针指向的字符不是字符串结尾
if (!('0' <= *read && *read <= '9')) { // 如果是数字
*write++ = *read; // 后一个字符填充前一个字符,这里还没有完全理解
}
++read;
}
*write = NULL; // 封闭字符串
return str; // 返回字符串指针
}
#include <stdio.h>
#include <stdlib.h>
#define IsNumber(a) (('0' <= (a)) && ((a) <= '9'))
char *delete_num(char *src)
{
char *slow;
char *fast;
if(NULL == src)
return NULL;
fast = src;
while(*fast && !IsNumber(*fast))
fast++;
slow = fast;
while(*fast != '\0') {
if(IsNumber(*fast)) {
*fast++;
}
else {
*slow++ = *fast++;
}
}
*slow = '\0';
return src;
}
int main(void)
{
char src[] = "abcdeflg35454k6lm7n8";
printf("%s\n",delete_num(src));
return 0;
}