c语言空格字符怎么表示

2024-12-16 00:09:29
推荐回答(5个)
回答1:

你犯的都是一些小错误,在你程序基础上,帮你改过调试成功的程序
#include
# include

# include
int length=0;

int main()
{

char line[20];
int longest(char[],int *count);
int count = 0;
int j;
int i= 0;

gets(line);

i = longest(line,&count);
for (j = i;jprintf("%c",line[j]);

getch();
}
int longest (char str[],int *len)
{
int place=0;
int count=0;

for (int i=0;i{
if(str[i]!=' ')
count++;
else if(count>length)
{
length=count;
place=i;
count=0;
}

}
*len = count;
place +=1;
return place;

}

回答2:

1
在c语言中空字符用'\0'表示
2
扩展
'\0'对应的整型值是0,所以给一个字符变量赋值为空字符时,以下两种都是可以的
char ch='\0';char ch=0;

回答3:

你的longest(line)返回的是最长单词的起始位置,那么i最终达到的位置就不是length,而是longest(line)+length
你的程序我给改了,输入要求最后一个单词后面也有一个空格,你看看吧
# include

# include
int longest(char*); //添加
int length=0;
void main()
{
int i=0,j=0;
char line[20];
gets(line);

j=longest(&line[0]);//添加

for (i=j-length;iprintf("%C",line[i]);

}
int longest (char *str) //修改
{
int place=0;
int count=0;
int i=0;

for (i=0;i{if(str[i]!=' ')
count++;
else if(count>length)
{length=count;
place=i;
count=0;
}
}
return place;

}

回答4:

你的int longest (char str[]) 表明返回值为一个整形数,而你需要的是一个整形指针指向一个字符串。

回答5:

1
在c语言中空字符用'\0'表示
2
扩展
'\0'对应的整型值是0,所以给一个字符变量赋值为空字符时,以下两种都是可以的
char
ch='\0';
char
ch=0;