又让你厌恶了吗 2022-04-06 13:16 采纳率: 66.7%
浏览 1516
已结题

本题要求实现一个函数,统计给定字符串中英文字母、空格或回车、数字字符和其他字符的个数。

#include <stdio.h>
#define MAXS 15

void StringCount( char s[] );
void ReadString( char s[] ); /* 由裁判实现,略去不表 */

int main()
{
char s[MAXS];

ReadString(s);
StringCount(s);

return 0;

}

/* Your function will be put here /
void StringCount(char
s) {
int num = 0, uletter = 0, lletter = 0, blank = 0, other = 0;
for (; *s != '\0'; s++) {
if ((*s >= '0') && (*s <= '9')) {
num++;
}
else if ((*s >= 'a') && (*s <= 'z')) {
lletter++;
}
else if ((*s >= 'A') && (*s <= 'Z')) {
uletter++;
}
else if (*s == ' ') {
blank++;
}
else {
other++;
}
}
printf("% % % % %", uletter, lletter, blank, num, other);
}
(我运行不了,是哪里有问题,应该怎么更改)

  • 写回答

1条回答 默认 最新

  • SkatingXDU 2022-04-06 13:32
    关注

    s是字符串的首地址,建议你把字符串看成一个字符数组来编程,像你的s应该是运行不了的,应该改成(s+i),i的值根据字符变化

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月14日
  • 已采纳回答 4月6日
  • 创建了问题 4月6日

悬赏问题

  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?
  • ¥200 C++表格文件处理-悬赏
  • ¥15 Windows Server2016本地登录失败
  • ¥15 复合卡卡号轨道写入芯片卡
  • ¥20 基于MATLAB的TDOA
  • ¥15 为啥输入字体突然变了
  • ¥20 已知坐标,换成MATLAB可以用的数据
  • ¥15 这个python五子棋代码的每一句意思是什么啊
  • ¥15 求一段隐藏代码,隐藏一些内容