编程题
要求:删除字符串所有数字,str字符数组键盘输入,自定义数字函数在dele完成
输入要求为键盘输入内容:abcd123efg
输出结果应为:The new string is:abcdefg
分析:键盘内容需要用scanf()函数,字符数组需要用gets()或do{}while()判断回车,并调用自定函数进行判定字符值,赋值到新数组
#include<stdio.h>
int dele(char x[]){
int i = 0; int j = 0;
while (x[i] != '\0'){
if (x[i] >= '0'&&x[i] <= '9') //用ASCII判断x[]数组内容是否为数字
i++; //只加i变量,相当于剔除当字符串某一字符为数字剔除下标
else
{
x[j] = x[i]; i++; j++;
}
}
x[j] = '\0'; //末尾的下标是没\0的,需要加进去
return x[j];
}
int main()
{
char str[100]; //char型数组存字符;int型数组存整形
printf("Please input a sentence\n");
//scanf("%s", str); //遇到空格\t \n停止
gets(str); //遇到回车停止
dele(str);
printf("The new string is:%s\n", str);
return 0;
}