注册 登录
编程论坛 C++教室

求助!!!哪里错了,大神快来》》》

啦啦啦VL 发布于 2014-06-25 21:55, 381 次点击
#include<stdio.h>
int main()
{
    char a[]={"******asdwereg**h********"};
    int i,j,k;
    for(i=0;a[i]!='\0';i++);
        if(a[i]>='a'&&a[i]<='z')
         k=i;
    printf("%d\n",k);
    for(i=0;i<=k;i++)
        printf("%c\n",a[i]);

}
ps:假定输入的字符串中只包含字母和*号。请编写程序,它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。
例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:****A*BC*DEF*G
1 回复
#2
rjsp2014-06-26 09:49
程序代码:
#include <stdio.h>

int main()
{
    char str[] = "******asdwereg**h********";

    { // 处理
        size_t k = 0;
        for( size_t i=0; str[i]!='\0'; ++i )
        {
            if( str[i] != '*' )
                k = i+1;
        }
        str[k] = '\0';
    }

    printf( "%s", str );

    return 0;
}
1