问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

...其中英文字母,空格,数字和其他字符的个数。

发布网友 发布时间:2024-10-04 04:14

我来回答

5个回答

热心网友 时间:2024-10-25 13:54

错误代码:

if('a'<=nextchar<='z'||'A'<=nextchar<='Z')

else if('0'<=nextchar<='9')

修改后:

#include <stdio.h>

int main()

{

int letter=0,space=0,number=0,others=0;

char nextchar;

printf("Input your string\n");

for(;nextchar!='\n';)

{

scanf("%c",&nextchar);

if('a'<=nextchar&&nextchar<='z'||'A'<=nextchar&&nextchar<='Z')

letter++;

else if(nextchar==' ')

space++;

else if('0'<=nextchar&&nextchar<='9')

number++;

else

others++;

}

printf("letter=%d,space=%d,number=%d,others=%d\n",letter,space,number,others);

}

扩展资料

c++输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

#include<cstdio>

int main()

{

char x[999];

int i,a=0,b=0,c=0,d=0;

gets(x);

for(i=0;i<=x[i];i++)

{

if('A'<=x[i]&&x[i]<='z')

a++;

else if('0'<=x[i]&&x[i]<='9')

b++;

else if(x[i]==' ')

c++;

else

d++;

}

printf("%d %d %d %d\n",a,b,c,d);

return 0;

}

热心网友 时间:2024-10-25 13:53

#include<stdio.h>
void main()
{
//char a[50];
int letter=0,number=0,blank=0,other=0;
//int i;
//gets(a);
char c; 用来读取每个字符
while ((c=getchar())!='\n') //基本就是修改的这句,当读入的是回车即为结束运算
//for(i=0;i<50,a[i]='\n';i++)
{
if((c>='A'&&c<='Z')||(c>='a'&&c<='z'))
letter++;
else if(c>='0'&&c<='9')
number++;
else if(c==' ')
blank++;
else other++;
}
printf("letter=%d,number=%d,blank=%d,other=%d",letter,number,blank,other);
}
程序已经验证过,可以执行哦~~~

热心网友 时间:2024-10-25 13:50

一、问题分析:

输入一行字母,那么会以换行结束。所以可以存入数组,也可以逐个输入,遇到换行结束。

要统计各个类的个数,就要逐个判断是哪个分类的。

由于在ASCII码中,数字,大写字母,小写字母分别连续,所以可以根据边界值判断类型。

二、算法设计:

1、读入字符,直到遇到换行结束。

2、对于每个字符,判断是字母还是数字,或者空格,或者是其它字符。

3、对于每个字符判断后,对应类别计数器自加。

4、最终输出结果。

三、参考代码:

#include <stdio.h>
int main()
{
    int a,b,c,d,ch;
    a=b=c=d=0;//计数器初始化为0.
    while((ch=getchar())!='\n')//循环读取字符,到换行结束。
    {
        if(ch>='0' && ch<='9')//数字
            a++;
        else if((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))//字母
            b++;
        else if(ch==' ')//空格
            c++;
        else //其它
            d++;
    }
    printf("%d %d %d %d\n", a,b,c,d);//输出结果。
    return 0;
}

热心网友 时间:2024-10-25 13:52

#include "stdio.h"
void main()
{
char s;
int i=0,j=0,k=0,m=0,da=0,xiao=0;
printf("please input the string\n");
while((s=getchar())!='\n') /*循环从键盘读入字符直到一行结束(输入回车)*/
{

if((s<='z'&&s>='a')||(s<'Z'&&s>'A'))
{
if(s<='Z'&&s>='A')da++;
if(s<='z'&&s>='a')xiao++;
i++; /*i存入字母数*/
}
else if(s==' ') j++; /*j存入空格数,注意s==' '里面是有一个空格的*/
else if(s<58&&s>47)k++; /*k存入数字数*/
else m++; /*m存入其它符号数*/
}
printf("char:%d Capital letters:%d Lowercase%d\nspec:%d\nnumber:%d\nOther:%d\n",i,da,xiao,j,k,m); /*打印行中的字母,空格,数字,其它字符数*/
}

热心网友 时间:2024-10-25 13:54

错误代码:

1.'a'<=nextchar<='z'||'A'<=nextchar<='Z';

2.'0'<=nextchar<='9'。

错误原因:当多个条件时,需要使用逻辑运算符。

修改后代码为:

int main(void){

int letters = 0, spaces = 0, digits = 0, others = 0;

char c;

printf("输入一行字符串:\n");

while ((c = getchar()) != '\n')

{

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

{

letters++;

else if (c == ' ')

{

spaces++;

}

else if (c >= '0'&&c <= '9')

{

digits++;

}

else

{

others++;

}

}

printf("字母=%d,数字=%d,空格=%d,其他=%d\n", letters, digits, spaces, others);

return 0;

}

扩展资料:

逻辑运算符可以将两个或多个关系表达式连接成一个或使表达式的逻辑反转。本节将介绍如何使用逻辑运算符将两个或多个关系表达式组合成一个。

&& 运算符被称为逻辑与运算符。它需要两个表达式作为操作数,并创建一个表达式,只有当两个子表达式都为 true 时,该表达式才为 true。

|| 运算符被称为逻辑或运算符。它需要两个表达式作为操作数,并创建一个表达式,当任何一个子表达式为 true 时,该表达式为 true。

! 运算符被称为逻辑非运算符,执行逻辑 NOT 操作。它可以反转一个操作数的真值或假值。换句话说,如果表达式为 true,那么 ! 运算符将返回 false,如果表达式为 false,则返回 true。

参考资料:

百度百科-逻辑运算符

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
mrna转录试剂盒 windows7应用程序损坏或丢失怎么办? 联想windows7怎么恢复不小心删除的应用 Win7电脑图标不见了如何恢复解决Win7电脑图标丢失问题的有效方法_百 ... 美女主播软件有哪些 什么软件看美女直播? 什么视频直播软件可以免费看女神直播? 钣金工业设计 钣金灰本段用途 关于刮胡子的相关问题 在word07里打英文 突然就变成了这样的间距和字体“sjdoijf”改不... ...其中英文字母,空格,数字字符,其它字符及单词的个数. ...其中的英文字母个数,空格、数字和其他字符。 哪些品牌烘培工具好 昨晚梦见自已和陌生人准备结婚,在此说破,祝自已和家人大吉大利,万事... 隔空播放功能如何使用? 纽曼H600(8GB)基本参数 纽曼祥云(16GB)重要参数 纽曼8GB钥匙优盘的写入速度有多慢?这玩意要191元,会降价吗?还有纽曼的... 纽曼NewPad NP800(8GB)基本参数 纽曼U盘V2型(16GB)重要参数 纽曼钥匙U盘产品介绍 纽曼U盘V2型(32GB)纽曼U盘V2型(32GB)详细参数 纽曼U盘V2型基本信息 纽曼U盘V2型详细参数 ...眼前的沙滩变成一个城市 任务是偷外星人的什么东西 小强今年满11岁,只过了两个生日,你知道他的出生年月日吗?求解答 1955年生人属相是什么 电脑怎么禁用输入法 我听说什么AT,ATX什么的主板 那么现在的主板是AT的还是ATX的??怎么看... 四一向前见六数,二八出马脱困境.是什么生肖 QQ炫舞动态头像怎么做的,求教 有个扣号想便宜卖,有兴趣S我。非诚勿扰,是什么意思?前一句是认真的 敦煌西湖国家级自然保护区管理机构 业绩好股票为什么就涨 西湖管理区的管理制度 股票 为什么 会涨 什么情况股票会涨 ...企业年金发票的问题。想问问你们是拿什么给财务作为走账凭证的的呢... ...出具的企业年金缴款专用凭证是否能作为入账凭证 ...并写出出处。你还知道哪些关于友谊的诗句,写一句。 电脑ERR_ EMPTY_ RESPONSE怎么处理 工程施工,压顶的模板还需要计算底模? 怎么做家常版的蒜香猪脚? 蒜香烤猪脚怎么做好吃 怎么做蒜香猪脚口感更丰富? 蒜香浓郁的口味蒜香猪脚如何做? 电信手机tcl p306c 打电话出现无法访问移动网络 tcl p306c uim都已启动 电信卡都安好了 为什么还收不到网络 天津市英讯科技有限公司公司简介