如何用C语言将字符串逆序输出?
5个回答
展开全部
展开全部
//下面是C语言代码
#include <stdio.h>
int main(void)
{
char* ch;
scanf("%s",ch);
int i=0,j;
//while用来取得字符串的长度
while(*(ch+i)!='\0')
{
i++;
}
//for循环从后向前访问字符串,其实就是字符数组
for(j=i-1;j>=0;j--)
{
printf("%c",*(ch+j));
}
printf("\n");
return 0;
}
原理:
C语言中对字符串进行操作,不仅仅对于字符数组,都可以用字符串的变量名来做该字符串的指针,其变量名指向第一个字符。因此,可以通过指针从后往前进行读取操作,从而实现逆序输出。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main (void)
{
char a,ap[10];
int i;
printf("请输入:");
scanf("%s",ap);
i = strlen (ap);
for(;i>=0;i--)
{
ap[i];
printf("%c",ap[i]);
}
system("pause");
return 0;
}
#include <stdlib.h>
#include <string.h>
int main (void)
{
char a,ap[10];
int i;
printf("请输入:");
scanf("%s",ap);
i = strlen (ap);
for(;i>=0;i--)
{
ap[i];
printf("%c",ap[i]);
}
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>#include<stdlib.h>int main(void){ char* ch=(char*)malloc(100); //不分配内存会出现段错误 scanf("%s",ch); int i=0,j; while(*(ch+i)!='\0') { i++; } for(j=i-1;j>=0;j--) { printf("%c",*(ch+j)); } printf("\n"); return 0;}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
下面是C语言代码 #include <stdio.h> int main(void) { char* ch; scanf("%s",ch); int i=0,j; //while用来取得字符串的长度 while(*(ch+i)!='\0') { i++; } //for循环从后向前访问字符串,其实就是字符数组 for(j=i-1;j>=0;j--) { printf("%c",*(ch+j)); } printf("\n"); return 0; }原理: C语言中对字符串进行操作,不仅仅对于字符数组,都可以用字符串的变量名来做该字符串的指针,其变量名指向第一个字符。因此,可以通过指针从后往前进行读取操作,从而实现逆序输出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询