C语言,输入1个字符串,然后显示出这个字符串的最后一个字符,我编的哪里错了呢

#include<stdio.h>
#include<string.h>
char lastchar ( char str[])
{
int i;
i=strlen(str);
if(str[0]!='\0')
return printf("%c",str[i]);
return NULL;
}
main()
{
char str[50];
scanf("%s",str);
lastchar(str);
}

第1个回答  2013-07-20

这段程序问题比较多:

#include<>
#include<>
char lastchar (char str[])
{
    int i;
    i = strlen(str);
    if(str[0]!='\0')
        return str[i-1]; // 不能返回printf的结果。返回倒数第二个字符(而不是返回\0)。
    return '\0'; // char类型,不能返回NULL
}
int main()
{
    char str[50];
    char c;
    scanf("%s",str);
    c = lastchar(str); // 最后一个字符是通过这个函数返回的
    printf("%c", c); // 打印
    return 0;
}

第2个回答  2013-07-20
return printf("%c",str[i-1]);本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网