我必须做一个练习,我需要从键盘获取一个文本,最多 1000 行,每行最多有 100 个字符。
我还需要在用户键入包含单词“END”的行时完成输入的获取,并且我必须显示所有没有“END”行的获取行,以及使用的所有字母数字字符,并且在最后,使用的单词总数。
我试图通过数组从键盘获取行,但是用于添加行的 for 循环效果不佳,实际上循环在第一次调用后结束。
我认为发生这种情况是因为数组已满,但我不知道为什么以及如何修复它。
这是我的代码:
#include <stdio.h>
#define MAX_ROWS 1000
#define MAX_CHARACTERS 100
int main() {
int i;
char text[MAX_CARACTERS];
for(i=0;i<MAX_ROWS && text!="END";i++) {
scanf("%98[^\n]",text);
}
return 0;
}
最佳答案
在 C 中你必须使用 strcmp
来比较字符串:
for(i=0; (i < MAX_ROWS) && strcmp(text, "END"); i++)
关于c - 关于如何在数组中插入字符串的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26680277/