如何用c语言分离字符串中的字母和数字并分别输出?

如题所述

字符串存放到数组里面,一个一个比对(循环)后输出

判断数字:

for (i=0;i<n;i++){

if ((p[i]>='0') && (p[i]<='9'))

printf();

判断字母:

for (i=0;i<n;i++){

if ((p[i]>='a') && (p[i]<='Z'))

printf();

扩展资料:

通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。

参考资料来源:百度百科-字符串

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-06
先定义两个字符串数组变量a,b。。。。然后把原来的字符串进行遍历,判断每个字符的ACSSII码。。在数字区间的存在a中。。。字母的存在b中。。。然后再把a,b输出。
第2个回答  2017-01-16
把字符串存放到数组里面,一个一个比对(循环)后输出.
判断数字:
for (i=0;i<n;i++){
if ((p[i]>='0') && (p[i]<='9'))
printf();
判断字母:
for (i=0;i<n;i++){
if ((p[i]>='a') && (p[i]<='Z'))
printf();
第3个回答  推荐于2019-11-05
班门弄斧一下吧;大师们勿怪

char c[]="123asdf564afg" ,c1[100] ,c2[100];
int len=sizeof(c)/sizeof(char);
int i ,j =0,k=0;
for(i=0 ;i<len ;i++)
{
if(c[i]<'9'&&c[i]>'0')
{
c1[j++]=c[i];
}
else if(c[i]<'z'&&c[i]>'A')
c2[k++]=c[i];
}
c1[j]='\0';
c2[k]='\0';
puts[c1];
puts[c2];
主程序完善一下就行了本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网