编写程序实现功能:用户从键盘输入一行字符,分别统计出其英文字母和数字字符的个数

如题所述

代码如下:

s=input("请输入一行字符:\n")

alpha,num,space,other=0,0,0,0

for i in s:

    if i.isalpha():

        alpha+=1

    elif i.isdigit():

        num+=1

    elif i.isspace():

        space+=1

    else:

        other+=1

print('英文字符数{},数字字符数{},空格字符数{},其他字符数{}'.format(alpha,num,space,other))

扩展资料

字符串的函数应用:

1、连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn.

例:concat(‘11’,'aa’)='11aa’;

2、求子串。 Copy(s,I,I) 从字符串s中截取第I个字符开始后的长度为l的子串。

例:copy(‘abdag’,2,3)=’bda’

3、删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长度为l的子串。

例:s:=’abcde’;delete(s,2,3);结果s:=’ae’

4、插入子串。 过程Insert(s1,s2,I) 把s1插入到s2的第I个位置

例:s:=abc;insert(‘12’,s,2);结果s:=’a12bc’

5、求字符串长度 length(s) 例:length(‘12abc’)=5

在ASP中 求字符串长度用 len(s)例: len("abc12")=5

6、搜索子串的位置 pos(s1,s2) 如果s1是s2的子串 ,则返回s1的第一个字符在s2中的位置,若不是子串,则返回0.

例:pos(‘ab’,’12abcd’)=3

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-11
#include <stdio.h>
int main(void)
{
char a[100];
scanf("%s",a);
int num = 0,ab = 0;

int i = 0;

while(a[i]!=0)
{
if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))

ab++;
else if(a[i]>='0'&&a[i]<='9')
num++;

}

printf("字母: %d,数字 %d\n",ab,num);

return 0;

}
第2个回答  2013-11-15
#include"stdio.h"
void main()
{int letters,space,digit,other;
letters=space=digit=other=0;
char c;
while((c=getchar()())!='\n')
{if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters ++;
else if(c>=0&&c<=9)
digit++;
else if(c==' ')
space++;
else
other++;}
printf("letters=%d space=%d digit=%d other=%d\n",letters,space,digit,other);
}

编写程序实现功能:用户从键盘输入一行字符,分别统计出其英文字母和数字...
print('英文字符数{},数字字符数{},空格字符数{},其他字符数{}'.format(alpha,num,space,other))

输入一行字符,统计他有多少个字母
参考代码如下:include<stdio.h> int main(void){ \/\/输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。char ch;int char_num=0,kongge_num=0,int_num=0,other_num=0;while((ch=getchar())!='\\n')\/\/回车键结束输入,并且回车符不计入 { if(ch>='a'&&ch<='z'||...

编程:输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个...
} printf("字母有%d个,数字有%d个,空格有%d个,其他有%d个",letters,digits,spaces,others);return 0;}

输入一行字符,分别统计其中英文字母、空格、数字和其它字符个数。
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。1.程序分析:利用while语句,条件为输入的字符不为'\\n'.2.程序源代码:include "stdio.h"main(){char c;int letters=0,space=0,digit=0,others=0;printf("please input some characters\\n");while((c=getchar())!='...

输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数...
参考代码:include<stdio.h>int main(){char str[100];int word = 0, blank = 0, num = 0, other = 0;int i = 0;gets(str);while (str[i] != '\\0'){if ((str[i]>= 'a' && str[i] <= 'z') || (str[i]>= 'A' && str[i] <= 'Z')){word++;}else if ((...

C语言~~~输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的...
') c++;else f++;} printf("字母个数%d,数字个数%d,空格个数%d,其余符号个数%d\\n",a,b,c,f);return 0;} 这是我改的 ~scanf("%s",e); 这样输入字符串 遇到空格就会停止的 所以用gets for(d=0;e[d]!='\\n';d++) 字符串结束应该是\\0 而\\n是换行 这样就ok了 ...

从键盘任意输入一行字符,分别统计出其中英文字母、空格、数字和其他字...
void main(){ char m;int n,a=0,b=0,c=0,d=0;do { m=getchar();n=m;if(( n>=65 && n<=90) || (n>=97 && n<=122)) a++;else if(n==4) b++;\/\/两个等号 else if(n>=48 && n<=57) c++;else d++;if(m=='\\n') break;}while(1);printf("\\n英文字母有...

用C语言编程:输入一行字符,分别统计出其中英文字母、空格、数字和其他字...
void main(){ char line[30];int i,count1=0,count2=0,count3=0,count4=0;printf("\\n请输入一行字符: ");gets(line);i=0;while(line[i]!='\\0'){ if(((line[i]>=97) && (line[i]<=122))||((line[i]>=65) && (line[i]<=90))){ count1++;} else if(line[i]==...

求:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个...
void main(){ char a[MAX];int i,word=0,num=0,space=0,other=0;printf("请输入:");gets(a); \/*将输入的字母存入数组*\/ for(i=0;a[i]!='\\0';i++){ if(a[i]>='a'&&a[i]<='z'||a[i]>='A'&&a[i]<='Z')word++;else if(a[i]>='0'&&a[i]<='9')num++;...

1. 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个...
int main(){ int i=0, space=0, num=0, n=0, ch=0;char s[20];printf("请输入一串字符 ");gets(s);while(s[i] != '\\0'){ if(s[i]==' ')space++;else if(s[i]<='9' && s[i]>='0')num++;else if(s[i]<='z' && s[i]>='a' || s[i]<='Z' && s[...

相似回答