我正在从“C编程现代方法第2版”文本中解决问题。我想写一个写最小和最大单词的程序。当用户输入一个4个字母的单词时,程序停止接受输入。C将字符串存储到数组中
我正在使用字符串数组来解决这个问题,但我甚至无法让我的程序在其中存储单词。
#include <stdio.h>
#include <string.h>
#define WORD_LEN 20
int main()
{
char word[WORD_LEN]={0},ch;
char *a[10]={}; //Max 10 words in the array
int i=0,j;
for(;;)
{
printf("Enter a word: ");
fgets(word,WORD_LEN,stdin);
strtok(word, "\n"); //removes newline
a[i] = word;
if(strlen(word) == 4) //if word is 4 characters
break; //break out of loop
i++;
}
for(j=0;j<i;j++) //displaying array
printf("%s\n",a[j]);
return 0;
}
输出:
Enter a word: Analysis
Enter a word: Martin
Enter a word: Jonathan
Enter a word: Dana
Dana
Dana
Dana
任何想法变成什么,我做错了什么?谢谢。
'A [1] =字;':设置word'的'相同ADDRES到'A [1]' – BLUEPIXY