目前我正在尝试根据每个单词的第一个字符对段落进行排序。我正在初始化两个字母(Upper 和 Lower)字符数组,以将单词的第一个字符与数组索引进行比较。
我对问题的计划;
- 用字母表初始化两个数组,以了解哪个字母表在哪个之前。
- 有一个函数实际比较第一个字符和两个数组。
- 返回排序后的单词 :)
我的问题是我试图查看这两个数组是否有 26 个字符以确保每个字母都被计算在内,但它打印出 1,我不知道为什么。
代码:
#include <stdio.h>
int main(int argc, const char * argv[]) {
char _alphabetUpperCase[100] = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R,","S","T","U","V","W","X","Y","Z"};
char _alpabetLowerCase[100] = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};
int i = 0;
int n = 0;
while(_alpabetLowerCase[i] != NULL)
{
n = n+1;
i++;
}
printf("%d\n",n);
return 0;
}
最佳答案
这个“A”与“A”不同。您应该将“A”分配给一个字符。 用相应的 '' 字符替换所有 ""字符串。例如
char _alpabetLowerCase[100] = {'a','b','c' ... };
关于计算字符数组中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39483142/