输入字符串后,要求程序输出字符串中数字字母,其余删除。
#include<stdio.h>
int main()
{
char c1[100] = { '\0' };
char c2[100] = { '\0' };
int i=0;
printf("请输入字符串\n");
gets(c1);
while(c1[i]!='\0')
{
if ((c1[i] > 48 && c1[i] < 57) || (c1[i] > 'a' && c2[i] < 'z') || (c1[i] > 'A' && c2[i] < 'Z'))
{
c2[i] = c1[i];
}
i++;
}
i = 0;
while(c2[i]!='\0')
{
printf("%c", c2[i]);
i++;
}
}
哈喽,具体修改代码如下,有用请点采纳哦~
#include<stdio.h>
int main()
{
char c1[100] = { '\0' };
int i=0;
printf("请输入字符串\n");
gets(c1);
while(c1[i]!='\0')
{
if ((c1[i] >= '0' && c1[i] <= '9') || (c1[i] >= 'a' && c1[i] <= 'z') || (c1[i] >= 'A' && c1[i] <= 'Z'))
{
printf("%c", c1[i]);
}
i++;
}
}
if那里,后面两个写错了,写成c2了;还有,应该都要加=,不然1、9、a、z、A、Z输出不了;最后加了个变量j用来遍历c2。修改如下,望采纳:
#include<stdio.h>
int main()
{
char c1[100] = { '\0' };
char c2[100] = { '\0' };
int i=0,j=0;
printf("请输入字符串\n");
gets(c1);
while(c1[i]!='\0')
{
if ((c1[i] >= 48 && c1[i] <= 57) || (c1[i] >= 'a' && c1[i] <= 'z') || (c1[i] >= 'A' && c1[i] <= 'Z'))
{
c2[j] = c1[i];
j++;
}
i++;
}
i = 0;
while(c2[i]!='\0')
{
printf("%c", c2[i]);
i++;
}
}