c primmer Plus第六版第十一章编程练习第12题

本文介绍了一个使用C语言编写的程序,该程序能够分析输入的文本并统计其中的单词数、大写字母数、小写字母数、标点符号数以及数字字符数。通过循环和条件判断,程序能准确地对各种字符进行分类计数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define SIZE 100

int main(void)
{
char st[SIZE];
int d; //单词数
int da; //大写字母数
int xiao; //小写字母数
int biao; //标点数
int shu; //数字字符数
int i;
int len;
d = da = xiao = biao = shu = 0; //初始化
puts(“请输入字符不得超过99:”);
fgets(st,SIZE,stdin); //输入字符串
len=strlen(st); //字符串长度
for(i=0;i<len;i++) //循环
{
if(isalpha(st[i])) //字母为真
{
if(islower(st[i])) //小写字母为真
xiao++;
else
da++;

    }
else if(isdigit(st[i]))  //数字为真
    shu++;
else if(ispunct(st[i]))  //标点符号为真
    biao++;
    if((ispunct(st[i])||isspace(st[i])||isdigit(st[i]))&&isalpha(st[i-1]))//如果i是标点符号或空字符或数字,i-1是字母的话
        d++;
}
printf("单词数=%d,\n大写字母=%d,\n小写字母=%d,\n标点符号=%d,\n数字字符=%d.\n",
       d,da,xiao,biao,shu);

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值