| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1917 人关注过本帖
标题:实现str中字符的互换 如“abcde”“edcba”
只看楼主 加入收藏
a761171048
Rank: 1
来 自:河南省洛阳市
等 级:新手上路
帖 子:24
专家分:0
注 册:2016-7-15
收藏
 问题点数:0 回复次数:7 
实现str中字符的互换 如“abcde”“edcba”
实现str中字符的互换 如“abcde”“edcba”

#include<stdio.h>
str_change(char str1[];char str2[])
{
int i,j,k,t,a[];
    for(k=0;str1[k]!='\0';k++)
    printf("%d",k);   
     for(i=0;str1[i]!='\0';i++)
     {
         j=k-i;
        str2[j]=str1[i];
     }
    return str2[];
}
main
{
    char a[],b[];
scanf("%s",a[]);
b[]=str_change(a[],b[]);
printf("%s\n",b[]);

}
搜索更多相关主题的帖子: return 
2016-09-04 16:55
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
#include<stdio.h>
 str_change(char str1[];char str2[])   //参数之间分隔符用逗号
 {
 int i,j,k,t,a[];          //数组不能这样定义,应给出确定的长度,如不给长度应在定义时赋初值
     for(k=0;str1[k]!='\0';k++)
     printf("%d",k);   
      for(i=0;str1[i]!='\0';i++)
      {
          j=k-i;         //这里应为j=k-i-1;
         str2[j]=str1[i];
      }
     return str2[];   //不用数组值可以直接传递不用返回,还有这里加一项str2[k]='\0';
 }
 main                   //main后有一对圆括号,
 {
     char a[],b[];    //定义不正确
 scanf("%s",a[]);      //输入格式不正确应为scanf("%s",a);
 b[]=str_change(a[],b[]);  //这里改成str_change(a,b);即可
 printf("%s\n",b[]);    //输出格式不正确printf("%s\n",b);

 }
2016-09-04 17:12
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
下面是我编译通过的程序
#include<stdio.h>
 str_change(char str1[],char str2[])
 {
 int i,j,k,t,a[10];
     for(k=0;str1[k]!='\0';k++);
     for(i=k-1,j=0;i>=0;i--,j++)
     {
         str2[j]=str1[i];
     }
     str2[j]='\0';
 }
  main()
 {
     char a[10],b[10];
 scanf("%s",a);
 str_change(a,b);
 printf("%s\n",b);

 }
2016-09-04 17:13
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:0 
问题不少。希望我的代码不会让你更加困惑。你对数组、字符串的概念都还基本不了解。需要继续学习使用

程序代码:
#include<stdio.h>
#include <string.h>
void str_change(char str1[], char str2[]) {
    int i,j,k,t;

    int len=strlen(str1);//J计算字符串长度

    str2[len]='\0';//写上字符串结束标记


    for(k=0; k<len; k++)
//        printf("%d",k);
//     for(i=0;str1[i]!='\0';i++)
//     {
//         j=k-i;
    str2[len-1-k]=str1[k];//把str1 从前往后依次填入str2中对应的位置

//     }
//    return str2;
}
int main() {
    char a[20],b[20];//注意输入的字符串不要大于这个数组大小

    scanf("%s",a);
    str_change(a,b);
    printf("%s\n",b);
    return 0;
}


φ(゜▽゜*)♪
2016-09-04 17:15
a761171048
Rank: 1
来 自:河南省洛阳市
等 级:新手上路
帖 子:24
专家分:0
注 册:2016-7-15
收藏
得分:0 
回复 2楼 ehszt
谢谢了  很清楚 明白了

不忘初心才是真
2016-09-06 19:09
a761171048
Rank: 1
来 自:河南省洛阳市
等 级:新手上路
帖 子:24
专家分:0
注 册:2016-7-15
收藏
得分:0 
回复 4楼 书生牛犊
我正在学的是字符串这章  他说的是不用string函数  要重新构造函数来实现这点

不忘初心才是真
2016-09-06 19:11
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:0 
回复 6楼 a761171048
那就是要自己实现string函数的功能
2016-09-07 08:50
tfcybu
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-8-2
收藏
得分:0 
2018-08-02 15:25
快速回复:实现str中字符的互换 如“abcde”“edcba”
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017213 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved