puts()和putchar()的差异?
#include<stdio.h>#include<string.h>
int main()
{int j,n;
char ch[80],tran[80];
printf("please enter code:");
gets(ch);
printf("\ncode :%s",ch);
j=0;
while(ch[j]!='\0')
{if((ch[j]>='A')&&(ch[j]<='Z'))
tran[j]=155-ch[j];
else
if((ch[j]>='a')&&(ch[j]<='z'))
tran[j]=219-ch[j];
else
tran[j]=ch[j];
j++;
}
(1)
n=j;
printf("\noriginal text:");
for (j=0;j<n;j++)
putchar(tran[j]);
printf("\n");
return 0;
(2)
printf("\nthe tran[] is:");
puts(tran);
printf("\n");
return 0;
}
用第一部分没有问题,为什么用第二部分直接输出字符串就会出现问题?