水题:判断单词有几个
刚开始没仔细想 仅仅判断了空格和空格的个数+1就是单词的个数,后来wa后仔细读读,他说连续的字母是一个单词所以abc!abc这就是两个单词了,还有uva不支持子啊循环中定义变量
#include<stdio.h> char str[ 500 ]; int Find( int t) { int i; for (i=t;str[i];i++ ) { if ((str[i]>= ' A ' && str[i]<= ' Z ' ) || (str[i]>= ' a ' && str[i]<= ' z ' )) continue ; return i; } return i; } int main() { int i; while (gets(str)!= NULL) { int ans= 0 ; for (i= 0 ;str[i];) { if ((str[i]>= ' a ' && str[i]<= ' z ' ) || (str[i]>= ' A ' && str[i]<= ' Z ' ) ) { int t= Find(i); ans ++ ; i = t; } else i++ ; } printf( " %d\n " ,ans); } return 0 ; }