重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include "stdio.h"
创新互联公司是一家专注于网站建设、成都网站建设与策划设计,盘锦网站建设哪家好?创新互联公司做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:盘锦等地区。盘锦做网站价格咨询:028-86922220
#include "string.h"
void dx(char *ch,int n)
{
printf("%c",ch[n]);
if(n=0)
return dx(ch,n-1);
}
int main()
{
char ch[100];
printf("输入一个字符串:");
scanf("%s",ch);
dx(ch,strlen(ch)-1);
}
void reverse(int p[], int n)
{
int *q,t;
for(q=p+n-1;pq;++p,--q)
{
t=*p;
*p=*q;
*q=t;
}
}
int fun(char *str, int len)
{
int i = 0;
char *p = (char *)malloc(len*sizeof(char));
if (NULL == p)
return ERROR;
for (i=len-1;i=0;i--)
{
*(p++) = str[i];
}
memcpy(str,p,len);
free(p)
return OK;
}
代码没试,你可以先试试。不使用交换数据。
int fun(char *str, int len)
{
int i=0,j=len-1;
char tmp=0;
for (i=0,j=len-1;i=j;i++,j--)
{
tmp = str[i];
str[i] = str[j];
str[j] = tmp;
}
return OK;
}
这个是使用数据交换
颠倒数字符合先进后出的顺序,可以借助栈来执行。首先分解这个数字,将每一位存到栈中,然后在将栈中的数字逐个出栈,组合在一起即可。代码如下:
int reverse(int num)
{
int stack[100];
int top = 0;
int result = 0;
while (num != 0)
{
stack[top++] = num % 10;
num /= 10;
}
while (top != 0)
{
result *= 10;
result += stack[--top];
}
return result;
}
#include"stdio.h"
#include"string.h"
main()
{
char str[20],temp;
printf("请输入字符串:");
gets(str);
int len,i;
len=strlen(str);
for(i=0;ilen/2;i++)
{
temp=str[i];
str[i]=str[len-i-1];
str[len-i-1]=temp;
}
puts(str);
getchar();
}
#includestdlib.h
int daoXupai(int x)
{
int n,b,d=0;
while(n)
{
b=n%10;
d=d*10+b;
n=n/10;
}
return d;
}
int main()
{
int x,result;
printf("输入一个整数:",x);
scanf("%d",x);
result=daoXupai(x);
printf("倒序排后的数为:%d\n",result);
return 0;
}