将字母转换为整数,然后查找字符串的总和

时间:2014-05-27 10:25:54

标签: c++ c

我正在学习编程语言并需要帮助来理解我将string作为输入的场景逻辑,用(a = 0,b = 1,c = 2)等数字替换所有字母然后总结并最终展示它。

例如:如果字符串是“abcd”,则输出应为0 + 1 + 2 + 3 = 6.

提前致谢。

2 个答案:

答案 0 :(得分:4)

我宁愿不发布一个完整的解决方案,因为它会错过整个“我正在学习编程语言”的观点(除非你进入“从SO中复制硬件答案”并且我认为你不是:) )

  • 对于大写字母和非大写字母,字母的ASCII代码分别是65-90到97-122之间的连续块。
  • 如果您使用的是实际的string(因为它标记为c++而有意义),您应该阅读here有关访问字符串中特定字符的信息(与之相同)一个数组,但重点是开始熟悉各种文档\ man页面。)

答案 1 :(得分:0)

#include <stdio.h>
#include <string.h>

int main(){
    const char *string="abcd";
    unsigned sum = 0;
    while(*string)
        sum += strcspn("abcdefghijklmnopqrstuvwxyz", (char [2]){ *string++ });
    printf("%u\n", sum);
    return 0;
}