3.设计并测试一个函数,其功能是读取输入行里的第一个单词到数组,并丢掉该行中其他 字符,一个单词的定义是一串字符,基中不含空格,制表及换行符。
#include <stdio.h>
char *getword(int n, char * p);
char clear(); // 清除字母前的字符
int main(void)
{
char word[20];
getword(20,word);
printf("The first word is :");
puts(word);
return 0;
}
char *getword(int n,char * p)
{
char ch;
int i = 0;
printf("enter word:");
ch = clear();
while(ch != '\n' && ch != '\t' && ch != ' ' && i < n-1){
*p = ch;
p++;
i++;
ch = getchar();
}
*p = '\0';
return p;
}
char clear()
{
char ch;
ch = getchar();
while(ch < 65 || ch > 122 || (ch < 97 && ch > 90))
{
ch = getchar();
continue;
}
return ch;
}