求一道C语言的编程题

从键盘输入一个字符串存入数组s[80],统计该字符串的长度,统计其中大写字母、小写字母、数字字符、空格和其它字符的个数,并将其中所有小写字母改为大写字母,然后再将结果输出... 从键盘输入一个字符串存入数组s[80],统计该字符串的长度,统计其中大写字母、小写字母、数字字符、空格和其它字符的个数,并将其中所有小写字母改为大写字母,然后再将结果输出。 展开
 我来答
百度网友6fe74e2
2013-04-26 · TA获得超过6592个赞
知道大有可为答主
回答量:1973
采纳率:100%
帮助的人:230万
展开全部

#include "stdio.h"

int main()

{

     char s[80]={0};

     int i,countA=0,countB=0,countC=0,countD=0,countE=0;

     gets(s);

     for(i=0;s[i]!='\0';i++)

     {

              if(s[i]>='A' && s[i]<='Z')

                  countA++;

              else if(s[i]>='a' && s[i]<='z')

              {

                  countB++;

                  s[i]+='A'-'a';

              }

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

                   countC++;

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

                   countD++;

              else 

                   countE++;

 

      }

      printf("输入字符串中大写字母数:%d\n",countA);   

      printf("输入字符串中小写字母数:%d\n",countB); 

      printf("输入字符串中数字字符数:%d\n",countC);

      printf("输入字符串中空格字符数:%d\n",countD);

      printf("输入字符串中其它字符数:%d\n",countE);

      printf("小写字母转成大写字母后输出为:%s\n",s);

 

 

 

}

周生008
2013-04-26 · TA获得超过1222个赞
知道小有建树答主
回答量:1329
采纳率:0%
帮助的人:638万
展开全部
void func()
{
char s[80] = {0};
int len = 0;
int bNum = 0;
int sNum = 0;
int nNUm = 0;
int spNum = 0;
int i;

printf(" 请输入字符串:\n");
for(i = 0; i < 79; i++)
{
s[i] = getchar();
if (s[i] = '\n')
{
s[i] = '\0';
break;
}
}
len = strlen(s);;
printf("总长度为:%d\n", len);

for (i = 0; i < len; i++)
{
if (s[i] >= 'a' && s[i] <= 'z')
{
sNum++;
s[i] += 'A' - 'a';
}
else if (s[i] >= 'A' && s[i] <= 'Z')
{
bNum++;
}
else if (s[i] >= '0' && s[i] <= '9')
{
nNum++;
}
else if (s[i] == ' ')
{
spNum++;
}
}

printf("大写字母有%d个\n", bNum);
printf("小写字母有%d个\n", sNum);
printf("空格有%d个\n", spNum);
printf("其他字符有%d个\n", len - bNum - sNum - spNum);
printf("%s\n", s);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huliyuputao
2013-04-26 · TA获得超过1912个赞
知道小有建树答主
回答量:728
采纳率:0%
帮助的人:220万
展开全部
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main()
{
char s[80] = {'\0'};
int i, digital = 0, upper_alpha = 0, low_alpha = 0, space = 0, other = 0, length;
gets(s);
length = strlen(s);
for (i = 0; i < length; i++)
{
if (islower(s[i]))
{
low_alpha++;
s[i] = toupper(s[i]);
}
else if (isupper(s[i]))
upper_alpha++;
else if (isdigit(s[i]))
digital++;
else if (isspace(s[i]))
space++;
else
other++;
}
printf("%2d %2d %2d %2d %2d\n", low_alpha, upper_alpha, digital, space, other);
for (i = 0; i < length; i++)
{
printf("%c", s[i]);
}
printf("\n");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式