| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 904 人关注过本帖
标题:一个二维字符组转一维字符组问题
取消只看楼主 加入收藏
可怜的C人
Rank: 1
等 级:新手上路
帖 子:18
专家分:2
注 册:2013-11-18
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
一个二维字符组转一维字符组问题
请编写函数fun,函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
例如,二维数组中的数据为:
W  W   W   W
S   S    S    S
H   H   H    H
则字符串中的内容应是:WSHWSHWSH。(要求字符从键盘输入,且每个字符间有空格
我的算法是
#include<stdio.h>
#include<string.h>
void fun(char a[100][100],int M,int N)
{int i,j,n=0;
char c[100];
for(j=0;j<=N-1;j++)
 { for(i=0;i<=M-1;i++)
  c[n]=a[i][j];n++;
  }
  puts(c);
}
void main()
{int M,N,i,j;
char a[100][100];
printf("请输入行数M:");
scanf("%d",&M);
printf("请输入行数N:");
scanf("%d",&N);
printf("请输入%d个字符:",M*N);
for(i=0;i<=M-1;i++)
  for(j=0;j<=N-1;j++)
      scanf("%c",&a[i][j]);
 for(i=0;i<=M-1;i++)
  for(j=0;j<=N-1;j++)
  printf("%c ",a[i][j]);
  printf("\n");
  fun(a,M,N);

}
问题是运行不了  还有字符串的空格处理  求大神解答 拜托了!!新手痛苦中
搜索更多相关主题的帖子: include 字符串 键盘 
2013-11-18 23:21
可怜的C人
Rank: 1
等 级:新手上路
帖 子:18
专家分:2
注 册:2013-11-18
收藏
得分:0 
回复 3楼 韶志
哇!!!大神啊 !!!能帮我分析下我的问题么???我才学到函数,有些语句没见过?比如fflush(stdin);就不明白的。。。有没有把fflush(stdin);删掉的写法???

[ 本帖最后由 可怜的C人 于 2013-11-19 10:09 编辑 ]
2013-11-19 10:03
可怜的C人
Rank: 1
等 级:新手上路
帖 子:18
专家分:2
注 册:2013-11-18
收藏
得分:0 
回复 8楼 韶志
哦 懂了 谢谢哈 引用了!!!嘿嘿 很谢谢你啊 !对了如果用我这样的算法,如果想不用那个语句应该怎么写?有空帮我想下哈。谢了。
2013-11-19 12:25
可怜的C人
Rank: 1
等 级:新手上路
帖 子:18
专家分:2
注 册:2013-11-18
收藏
得分:0 
回复 10楼 韶志
哦 还没学指针 。还有问下如果输入每个字符间需要空格。就比如输入是abcdef,但是要这样输a b c d e f 这要怎么避免空格所充当的字符呢?
2013-11-19 21:22
可怜的C人
Rank: 1
等 级:新手上路
帖 子:18
专家分:2
注 册:2013-11-18
收藏
得分:0 
回复 12楼 韶志
o(︶︿︶)o 唉 老师偏要这样。。。所以这做了遇到空格就不输出在编入字符组里。。。郁闷的很。。。以为有什么语句可以遇到什么符号可以跳过的。。。看来是没有吧。嘿嘿  很谢谢你啦!!!
2013-11-19 21:33
快速回复:一个二维字符组转一维字符组问题
数据加载中...
 
   



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

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