hanyue-AC
 1 /*二维字符数组转换(卜胜贤)
 2 题目描述:
 3 编写函数fun, 函数的功能是: 将M行N列的二维数组中的字符数据, 按列的 
 4 顺序依次放到一个字符串中。 
 5 例如, 二维数组中的数据为: 
 6 W W W W 
 7 S S S S 
 8 H H H H 
 9 则字符串中的内容应是: WSHWSHWSH。 
10 (知识点:数组、指针)
11 输入描述:
12 输入为一个3行4列二维字符数组数据
13 输出描述描述:
14 输出为一个长度为12的字符数组;
15 #include<stdio.h>
16 void main()
17 {
18     char a[3][4],s[12];
19     char (*p1)[4],*p2;
20     int i;
21     void fun(char (*p1)[4],char *p2);
22     for(i=0;i<4;i++)
23     {
24         scanf("%c",&a[0][i]);
25         getchar();
26     }
27     for(i=0;i<4;i++)
28     {
29         scanf("%c",&a[1][i]);
30         getchar();
31     }
32     for(i=0;i<4;i++)
33     {
34         scanf("%c",&a[2][i]);
35         getchar();
36     }
37     p1=a;
38     p2=s;
39     fun(p1,p2);
40     puts(s);
41 }
42 void fun(char (*p1)[4],char *p2)
43 {
44     int i,j;
45     for(i=0;i<4;i++)
46         for(j=0;j<3;j++)
47         {
48             *p2=*(*(p1+j)+i);
49             p2++;}
50         *p2=\'\0\';
51            
52 }*/
53 #include <stdio.h>
54 void main()
55 {
56     char a[3][8],b[24];
57     int i,j,k=0,t=0;
58     for(i=0;i<3;++i)
59         for(j=0;j<8;++j)
60             scanf("%c",&a[i][j]);
61 
62     while(k<24)
63     {  
64        b[k]=a[k%3][t];
65        k++;
66        if(k%3==0)
67            t++;
68         
69     }
70     for(i=0;i<24;++i)
71     {
72         if(b[i]!=\' \')
73            printf("%c",b[i]);
74         if(b[i]==\'\n\')
75             break;
76     }
77 } 

分类:

技术点:

相关文章:

  • 2021-12-10
  • 2021-11-30
  • 2021-12-19
  • 2021-12-29
  • 2022-12-23
  • 2021-11-07
  • 2021-11-30
  • 2021-11-30
猜你喜欢
  • 2021-11-30
  • 2021-11-30
  • 2022-01-10
  • 2022-12-23
  • 2021-08-19
  • 2021-11-30
  • 2021-11-30
相关资源
相似解决方案