【发布时间】:2016-02-23 21:58:12
【问题描述】:
我完全是 C 新手,刚刚了解了使用 malloc、realloc、calloc 和 free 进行动态内存分配。
我想制作一个小程序,它将一个 int 数作为将要给出的字符串的数量,然后将它们全部“扫描”。
接下来用这些琴弦演奏。例如找到最频繁的并打印出来。
例如,当我运行程序并输入:
5
车房狗树树
它应该打印:
树 2
我想要 scanf-printf 因为这是我目前最熟悉的输入/输出方法。
我的代码:
int main (){
int N,i,j ;
char *array;
int *freq;
scanf("%d",&N);
array = (char*)calloc(N,sizeof(char*));
for (i=0;i<=N;i++){
scanf( ??? );
}
free(array);
return 0;
}
我应该在 scanf 函数中输入什么才能正确地用字符串填充数组? 在我填充它之后,我会使用 strcmp 和 for 循环之类的东西来扫描数组并找到最常用的单词吗? (我可以将频率存储在 *freq 中)
【问题讨论】:
标签: c arrays string malloc calloc