1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 两种方法:实现输入一行字符 统计数字字符 英文字母和其他字符的个数(C语言)

两种方法:实现输入一行字符 统计数字字符 英文字母和其他字符的个数(C语言)

时间:2022-12-23 11:52:14

相关推荐

两种方法:实现输入一行字符 统计数字字符 英文字母和其他字符的个数(C语言)

C语言中:gets和getchar的区别以及指针的运用

方法一:

使用gets实现

#include<stdio.h>

void main()

{

char str[80], * p;

int digit,letter,other;

gets(str);

p = str;

digit = letter = other = 0;

while (*p != '\0')

{

if ((*p >= 'A' && *p <= 'Z')|| (*p >= 'a' && *p <= 'z'))

letter++;

else if (*p >= '0' && *p <= '9')

digit++;

else

other;

p++;

}

printf("digit=%d letter=%d other=%d\n", digit, letter, other);

}

方法二:

使用getchar实现

#include<stdio.h>

void count(char* s, int* digit, int* letter, int* other)

{

*digit = *letter = *other = 0;

while (*s!='\0')

{

if (*s >= '0' && *s <= '9')

(*digit)++;

else if ((*s >= 'a' && *s <= 'z') || (*s >= 'A' && *s <= 'Z'))

(*letter)++;

else

(*other)++;

s++;

}

}

void main()

{

int i = 0, digit, letter, other;

char ch, str[80];

printf("Enter characters:\n");

ch = getchar();//getchat读取字符

while (ch !='\n')

{

str[i] = ch;

i++;

ch = getchar();

}

str[i] = '\0';

count(str, &digit, &letter, &other);

printf("digit=%d letter=%d other=%d\n", digit, letter, other);

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。