我有以下问题:-
编写一个程序,获取用户输入的名字和姓氏,并显示姓氏、逗号和第一个首字母,后跟一个句点:
用户的输入可能在名字之前、名字和姓氏之间以及姓氏之后包含额外的空格。
我为它编写了这样的代码:
#include <stdio.h>
#include<stdlib.h>
int main(void)
{
int i=0,j=0;
char name[100];
gets(name);
while( name[i] == ' ' || name[i] == '\t' )
i++;
while( *(name+i) != ' ' && *(name+i)!= '\t' )
i++;
while(name[i] == ' '|| name[i] == '\t')
i++;
while( *(name+i) != ' ' && *(name+i) != '\t' && *(name+i) != '\0' )
putchar(name[i++]);
putchar(',');
while( name[j] == ' '|| name[j] == '\t' )
j++;
while( *(name+j) != ' ' && *(name+j) != '\t' )
{
putchar(name[j++]);
break;
}
putchar('.');
return 0;
}
虽然它正在工作,但它似乎在某种程度上是不可接受的。我该如何改进它?