使用while循环在c中反转字符串

时间:2014-03-07 17:14:13

标签: c

我正在刷新我的C知识,我碰巧穿过这个程序来反转一个字符串。我有一种感觉,最后反转字符串的最后一个字符应该被赋予'\ 0'值,否则它可能有一个垃圾值。您能告诉我这段代码是否正确或需要修改吗?提前致谢!

#include<stdio.h>
#include<string.h>

void main()
{
  char str[100],temp;
  int i,j=0;

  printf("nEnter the string :");
  gets(str);

  i=0;
  j=strlen(str)-1;

  while(i<j)
  {
    temp=str[i];
    str[i]=str[j];
    str[j]=temp;
    i++;
    j--;
  }

  printf("nReverse string is :%s",str);
  return(0);
}

1 个答案:

答案 0 :(得分:0)

根据man gets

  

...缓冲区以0结尾。

我想你们都已经准备好了!