QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

VIP至尊会员

Rank: 15Rank: 15Rank: 15

积分
200
查看: 290|回复: 6

[已解决]这个C程序那里错了为什么执行2选项的时候给矩阵赋值会错

[复制链接]
最佳答案
1 
累计签到:98 天
连续签到:1 天
奥普瓯江 发表于 2018-1-10 15:12:21 2906 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 奥普瓯江 于 2018-1-11 15:55 编辑

给矩阵赋值会出现错误不能赋值到指定位置应该赋值给第一行第五个但是他却斜向赋值了。
2018-01-10 15-10-19 的屏幕截图.png

  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>


  4. void welcome(void);
  5. int my_scanf(void);
  6. int *matrix(void);
  7. int my_printf(int *ppt);
  8. void my_tow(int *ptr);
  9. void my_three(int *ptr);


  10. void welcome()
  11. {
  12.                 printf("============================\n");
  13.                 printf("*欢迎使用该程序,指令如下  *\n");
  14.                 printf("*1.生成一个 M*N 的矩阵     *\n");
  15.                 printf("*2.初始化矩阵              *\n");
  16.                 printf("*3.给矩阵中某个元素赋值    *\n");
  17.                 printf("*4.读取矩阵中某个元素      *\n");
  18.                 printf("*5.打印整个矩阵            *\n");
  19.                 printf("*6.结束程序                *\n");
  20.                 printf("============================\n");
  21. }

  22. int my_scanf(void)
  23. {
  24.                 int num;
  25.                 printf("请输入一个指令: ");
  26.                 scanf("%d", &num);

  27.                 if (num < 1 || num > 6)
  28.                 {
  29.                                 printf("你输入的数字错误请从新输入");
  30.                 }

  31.                 return num;
  32. }

  33. int  *matrix(void)
  34. {
  35.                 static int *full = NULL;
  36.                 static int i, j;
  37.                 printf("请输入新矩阵规模(M * N) ->");
  38.                 scanf("%d*%d", &i, &j);

  39.                 full = (int *)realloc(full, sizeof(int) * (i * j + 2));

  40.                 if(full == NULL)
  41.                 {
  42.                                 printf("你的矩阵未创建成功");
  43.                                 exit(1);
  44.                 }
  45.                 else
  46.                 {
  47.                                 printf("%d*%d的矩阵以创建成功", i, j);
  48.                 }
  49.                 full[0] = i;
  50.                 full[1] = j;
  51.                
  52.                 return full;

  53. }

  54. void my_tow(int *ptr)
  55. {
  56.                 int n = ptr[0];
  57.                 int m = ptr[1];
  58.                 int *matrix = ptr + 2;
  59.                 int num;

  60.                 printf("你想出使化指针的数值是多少 ->");
  61.                 scanf("%d", &num);

  62.                 for(int i = 0; i < n; i++)
  63.                 {
  64.                                 for(int j = 0; j < m; j++)
  65.                                 {
  66.                                                 *((matrix + i) + j) = num;
  67.                                 }
  68.                 }
  69. }

  70. void my_three(int *ptr)
  71. {
  72.                 int i, j;
  73.                 int number;

  74.                 printf("请输入要修改的位置(行,列) ->");
  75.                 scanf("%d*%d", &i, &j);
  76.                 putchar('\n');
  77.                 printf("请输入一个数字:");
  78.                 scanf("%d", &number);
  79.                 putchar('\n');

  80.                 *((ptr + i - 1) + (j + 1)) = number;
  81.                

  82. }

  83. int my_printf(int *ptr)
  84. {
  85.                 int n = ptr[0];
  86.                 int m = ptr[1];
  87.                 int *matrix = ptr + 2;

  88.                 for(int i = 0; i < n; i++)
  89.                 {
  90.                                 for(int j = 0; j < m; j++)
  91.                                 {
  92.                                                 /*printf("%-3d",matrix[i * j]);*/
  93.                                                 printf("%-3d", *((matrix + i) + j));
  94.                                 }
  95.                                 putchar('\n');
  96.                 }
  97. }
  98.                


  99. int main(void)
  100. {
  101.                 welcome();
  102.                 int i;
  103.                 int *ptr = NULL;
  104.                
  105.                 while((i = my_scanf()) != 6)
  106.                 {
  107.                                 switch(i)
  108.                                 {
  109.                                                 case 1 :
  110.                                                                  {
  111.                                                                                  ptr = matrix();
  112.                                                                                  putchar('\n');
  113.                                                                                  putchar('\n');
  114.                                                                                  break;
  115.                                                                  }
  116.                                                 case 2 :
  117.                                                                  {
  118.                                                                                  my_tow(ptr);
  119.                                                                                  putchar('\n');
  120.                                                                                  putchar('\n');
  121.                                                                                  break;
  122.                                                                  }
  123.                                                 case 3 :
  124.                                                                  {
  125.                                                                                  my_three(ptr);
  126.                                                                                  putchar('\n');
  127.                                                                                  putchar('\n');
  128.                                                                                  break;
  129.                                                                  }
  130.                                                 case 4 :
  131.                                                                  {
  132.                                                                                  my_printf(ptr);
  133.                                                                                  putchar('\n');
  134.                                                                                  break;
  135.                                                                  }
  136.                                                 case 5 :
  137.                                                                  {
  138.                                                                                  my_printf(ptr);
  139.                                                                                  putchar('\n');
  140.                                                                                  break;
  141.                                                                  }




  142.                                 }
  143.                 }

  144.                 return 0;
  145. }
复制代码



这个程序我又改了一下成为了现在这样但是还是不对,想请教一下大神给解答一下、



  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>


  4. void welcome(void);
  5. int my_scanf(void);
  6. int *my_matrix(void);
  7. int my_printf(int *ptr);
  8. void my_tow(int *ptr);
  9. void my_three(int *ptr);


  10. void welcome()
  11. {
  12.                 printf("============================\n");
  13.                 printf("*欢迎使用该程序,指令如下  *\n");
  14.                 printf("*1.生成一个 M*N 的矩阵     *\n");
  15.                 printf("*2.初始化矩阵              *\n");
  16.                 printf("*3.给矩阵中某个元素赋值    *\n");
  17.                 printf("*4.读取矩阵中某个元素      *\n");
  18.                 printf("*5.打印整个矩阵            *\n");
  19.                 printf("*6.结束程序                *\n");
  20.                 printf("============================\n");
  21. }

  22. int my_scanf(void)
  23. {
  24.                 int num;
  25.                 printf("请输入一个指令: ");
  26.                 scanf("%d", &num);

  27.                 if (num < 1 || num > 6)
  28.                 {
  29.                                 printf("你输入的数字错误请从新输入");
  30.                 }

  31.                 return num;
  32. }

  33. int  *my_matrix(void)
  34. {
  35.                 static int *full = NULL;
  36.                 int i, j;
  37.                 printf("请输入新矩阵规模(M * N) ->");
  38.                 scanf("%d*%d", &i, &j);

  39.                 full = (int *)realloc(full, sizeof(int) * (i * j + 2));

  40.                 if(full == NULL)
  41.                 {
  42.                                 printf("你的矩阵未创建成功");
  43.                                 exit(1);
  44.                 }
  45.                 else
  46.                 {
  47.                                 printf("%d*%d的矩阵以创建成功", i, j);
  48.                 }
  49.                 full[0] = i;
  50.                 full[1] = j;
  51.                
  52.                 return full;

  53. }

  54. void my_tow(int *ptr)
  55. {
  56.                 int n = ptr[0];
  57.                 int m = ptr[1];
  58.                 int *matrix = ptr + 2;
  59.                 int num;

  60.                 printf("你想出使化指针的数值是多少 ->");
  61.                 scanf("%d", &num);

  62.                 for(int i = 0; i < n; i++)
  63.                 {
  64.                                 for(int j = 0; j < m; j++)
  65.                                 {
  66.                                                 *((matrix + j) + i) = num;
  67.                                 }
  68.                 }
  69. }

  70. void my_three(int *ptr)
  71. {
  72.                 int x, y;
  73.                 int number;
  74.                 int *matrix = ptr + 2;

  75.                 printf("请输入要修改的位置(行,列) ->");
  76.                 scanf("%d,%d", &x, &y);
  77.                 putchar('\n');

  78.                 printf("请输入一个数字:");
  79.                 scanf("%d", &number);
  80.                 putchar('\n');

  81.                 *((matrix + (x - 1)) + (y - 1)) = number;
  82.                

  83. }

  84. int my_printf(int *ptr)
  85. {
  86.                 int n = ptr[0];
  87.                 int m = ptr[1];
  88.                 int *matrix = ptr + 2;

  89.                 for(int i = 0; i < n; i++)
  90.                 {
  91.                                 for(int j = 0; j < m; j++)
  92.                                 {
  93.                                                 printf("%-3d", *((matrix + i) + j));
  94.                                 }
  95.                                 putchar('\n');
  96.                 }
  97. }
  98.                


  99. int main(void)
  100. {
  101.                 welcome();
  102.                 int i;
  103.                 int *ptr = NULL;
  104.                
  105.                 while((i = my_scanf()) != 6)
  106.                 {
  107.                                 switch(i)
  108.                                 {
  109.                                                 case 1 :
  110.                                                                  {
  111.                                                                                  ptr = my_matrix();
  112.                                                                                  putchar('\n');
  113.                                                                                  putchar('\n');
  114.                                                                                  break;
  115.                                                                  }
  116.                                                 case 2 :
  117.                                                                  {
  118.                                                                                  my_tow(ptr);
  119.                                                                                  putchar('\n');
  120.                                                                                  putchar('\n');
  121.                                                                                  break;
  122.                                                                  }
  123.                                                 case 3 :
  124.                                                                  {
  125.                                                                                  my_three(ptr);
  126.                                                                                  putchar('\n');
  127.                                                                                  putchar('\n');
  128.                                                                                  break;
  129.                                                                  }
  130.                                                 case 4 :
  131.                                                                  {
  132.                                                                                  my_printf(ptr);
  133.                                                                                  putchar('\n');
  134.                                                                                  break;
  135.                                                                  }




  136.                                 }
  137.                 }
  138.                 free(ptr);

  139.                 return 0;
  140. }
复制代码
最佳答案
2018-1-12 09:30:48
我用手机回的帖子,你试试看对不对
#include<stdio.h>
#include<stdlib.h>
#include<string.h>


void welcome(void);
int my_scanf(void);
int *my_matrix(void);
int my_printf(int *ptr);
void my_tow(int *ptr);
void my_three(int *ptr);


void welcome()
{
                printf("============================\n");
                printf("*欢迎使用该程序,指令如下  *\n");
                printf("*1.生成一个 M*N 的矩阵     *\n");
                printf("*2.初始化矩阵              *\n");
                printf("*3.给矩阵中某个元素赋值    *\n");
                printf("*4.读取矩阵中某个元素      *\n");
                printf("*5.打印整个矩阵            *\n");
                printf("*6.结束程序                *\n");
                printf("============================\n");
}

int my_scanf(void)
{
                int num;
                printf("请输入一个指令: ");
                scanf("%d", &num);

                if (num < 1 || num > 6)
                {
                                printf("你输入的数字错误请从新输入");
                }

                return num;
}

int  *my_matrix(void)
{
                static int *full = NULL;
                int i, j;
                printf("请输入新矩阵规模(M * N) ->");
                scanf("%d*%d", &i, &j);

                full = (int *)realloc(full, sizeof(int) * (i * j + 2));

                if(full == NULL)
                {
                                printf("你的矩阵未创建成功");
                                exit(1);
                }
                else
                {
                                printf("%d*%d的矩阵以创建成功", i, j);
                }
                full[0] = i;
                full[1] = j;
               
                return full;

}

void my_tow(int *ptr)
{
                int n = ptr[0];
                int m = ptr[1];
                int *matrix = ptr + 2;
                int num;

                printf("你想出使化指针的数值是多少 ->");
                scanf("%d", &num);

                /*for(int i = 0; i < n; i++)
                {
                                for(int j = 0; j < m; j++)
                                {
                                                *((matrix + j) + i) = num;
                                }
                }*/
//你在创建内存空间的时候是1维数组,赋值按1维赋值就可以了
for (i=0;i<m*n;i++)
{
*(matrix+i)=num;
}
}

void my_three(int *ptr)
{
                int x, y;
                int number;
                int *matrix = ptr + 2;

                printf("请输入要修改的位置(行,列) ->");
                scanf("%d,%d", &x, &y);
                putchar('\n');

                printf("请输入一个数字:");
                scanf("%d", &number);
                putchar('\n');

                //*((matrix + (x - 1)) + (y - 1)) = number; 需要行的值*x-1
                 *(matrix+((x-1)*ptr[0])+(y))=number;
               

}

int my_printf(int *ptr)
{
                int n = ptr[0];
                int m = ptr[1];
                int *matrix = ptr + 2;

                /*for(int i = 0; i < n; i++)
                {
                                for(int j = 0; j < m; j++)
                                {
                                                printf("%-3d", *((matrix + i) + j));
                                }
                                putchar('\n');
                }*/
               for(int i=0;i<n*m;i++)
{
printf("%-3d", *(matrix + i);

}
  putchar('\n')
}
               


int main(void)
{
                welcome();
                int i;
                int *ptr = NULL;
               
                while((i = my_scanf()) != 6)
                {
                                switch(i)
                                {
                                                case 1 :
                                                                 {
                                                                                 ptr = my_matrix();
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 2 :
                                                                 {
                                                                                 my_tow(ptr);
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 3 :
                                                                 {
                                                                                 my_three(ptr);
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 4 :
                                                                 {
                                                                                 my_printf(ptr);
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }




                                }
                }
                free(ptr);

                return 0;
}
楼层
跳转到指定楼层
最佳答案
19 
累计签到:393 天
连续签到:7 天
qq1242009750 发表于 2018-1-10 16:38:06 | 显示全部楼层
索引方式错了
*((ptr + i - 1) + (j + 1)) = number;  改为 *(ptr+i*j-1) = number;
printf("%-3d", *((matrix + i) + j)); 改为 printf("%-3d",*(matrix+i*j-1));
最佳答案
1 
累计签到:98 天
连续签到:1 天
奥普瓯江  楼主| 发表于 2018-1-11 01:54:01 | 显示全部楼层
qq1242009750 发表于 2018-1-10 16:38
索引方式错了
*((ptr + i - 1) + (j + 1)) = number;  改为 *(ptr+i*j-1) = number;
printf("%-3d", *((m ...

没明白能在给解释一下么
最佳答案
8 
累计签到:31 天
连续签到:2 天
sp1ral 发表于 2018-1-11 15:59:26 From FishC Mobile | 显示全部楼层
5行5列的地址应该是和1行1列偏移多少呢5*5-1*1,明白了吗
最佳答案
1 
累计签到:98 天
连续签到:1 天
奥普瓯江  楼主| 发表于 2018-1-11 23:48:24 | 显示全部楼层
sp1ral 发表于 2018-1-11 15:59
5行5列的地址应该是和1行1列偏移多少呢5*5-1*1,明白了吗

我说的是我的这个程序,错在哪里了,二楼说的那个方法我试了,编译后并没有解决问题,还麻烦了
最佳答案
8 
累计签到:31 天
连续签到:2 天
sp1ral 发表于 2018-1-12 09:30:48 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
我用手机回的帖子,你试试看对不对
#include<stdio.h>
#include<stdlib.h>
#include<string.h>


void welcome(void);
int my_scanf(void);
int *my_matrix(void);
int my_printf(int *ptr);
void my_tow(int *ptr);
void my_three(int *ptr);


void welcome()
{
                printf("============================\n");
                printf("*欢迎使用该程序,指令如下  *\n");
                printf("*1.生成一个 M*N 的矩阵     *\n");
                printf("*2.初始化矩阵              *\n");
                printf("*3.给矩阵中某个元素赋值    *\n");
                printf("*4.读取矩阵中某个元素      *\n");
                printf("*5.打印整个矩阵            *\n");
                printf("*6.结束程序                *\n");
                printf("============================\n");
}

int my_scanf(void)
{
                int num;
                printf("请输入一个指令: ");
                scanf("%d", &num);

                if (num < 1 || num > 6)
                {
                                printf("你输入的数字错误请从新输入");
                }

                return num;
}

int  *my_matrix(void)
{
                static int *full = NULL;
                int i, j;
                printf("请输入新矩阵规模(M * N) ->");
                scanf("%d*%d", &i, &j);

                full = (int *)realloc(full, sizeof(int) * (i * j + 2));

                if(full == NULL)
                {
                                printf("你的矩阵未创建成功");
                                exit(1);
                }
                else
                {
                                printf("%d*%d的矩阵以创建成功", i, j);
                }
                full[0] = i;
                full[1] = j;
               
                return full;

}

void my_tow(int *ptr)
{
                int n = ptr[0];
                int m = ptr[1];
                int *matrix = ptr + 2;
                int num;

                printf("你想出使化指针的数值是多少 ->");
                scanf("%d", &num);

                /*for(int i = 0; i < n; i++)
                {
                                for(int j = 0; j < m; j++)
                                {
                                                *((matrix + j) + i) = num;
                                }
                }*/
//你在创建内存空间的时候是1维数组,赋值按1维赋值就可以了
for (i=0;i<m*n;i++)
{
*(matrix+i)=num;
}
}

void my_three(int *ptr)
{
                int x, y;
                int number;
                int *matrix = ptr + 2;

                printf("请输入要修改的位置(行,列) ->");
                scanf("%d,%d", &x, &y);
                putchar('\n');

                printf("请输入一个数字:");
                scanf("%d", &number);
                putchar('\n');

                //*((matrix + (x - 1)) + (y - 1)) = number; 需要行的值*x-1
                 *(matrix+((x-1)*ptr[0])+(y))=number;
               

}

int my_printf(int *ptr)
{
                int n = ptr[0];
                int m = ptr[1];
                int *matrix = ptr + 2;

                /*for(int i = 0; i < n; i++)
                {
                                for(int j = 0; j < m; j++)
                                {
                                                printf("%-3d", *((matrix + i) + j));
                                }
                                putchar('\n');
                }*/
               for(int i=0;i<n*m;i++)
{
printf("%-3d", *(matrix + i);

}
  putchar('\n')
}
               


int main(void)
{
                welcome();
                int i;
                int *ptr = NULL;
               
                while((i = my_scanf()) != 6)
                {
                                switch(i)
                                {
                                                case 1 :
                                                                 {
                                                                                 ptr = my_matrix();
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 2 :
                                                                 {
                                                                                 my_tow(ptr);
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 3 :
                                                                 {
                                                                                 my_three(ptr);
                                                                                 putchar('\n');
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }
                                                case 4 :
                                                                 {
                                                                                 my_printf(ptr);
                                                                                 putchar('\n');
                                                                                 break;
                                                                 }




                                }
                }
                free(ptr);

                return 0;
}
最佳答案
1 
累计签到:98 天
连续签到:1 天
奥普瓯江  楼主| 发表于 2018-1-14 09:30:57 | 显示全部楼层
sp1ral 发表于 2018-1-12 09:30
我用手机回的帖子,你试试看对不对
#include
#include

我改了两处,经过测试这回程序可以按照我的思路执行了,主要是我赋值和打印的时候有错误。

  1. #include<stdio.h>
  2. #include<stdio.h>
  3. #include<stdlib.h>
  4. #include<string.h>


  5. void welcome(void);
  6. int my_scanf(void);
  7. int *my_matrix(void);
  8. int my_printf(int *ptr);
  9. void my_tow(int *ptr);
  10. void my_three(int *ptr);


  11. void welcome()
  12. {
  13.                 printf("============================\n");
  14.                 printf("*欢迎使用该程序,指令如下  *\n");
  15.                 printf("*1.生成一个 M*N 的矩阵     *\n");
  16.                 printf("*2.初始化矩阵              *\n");
  17.                 printf("*3.给矩阵中某个元素赋值    *\n");
  18.                 printf("*4.读取矩阵中某个元素      *\n");
  19.                 printf("*5.打印整个矩阵            *\n");
  20.                 printf("*6.结束程序                *\n");
  21.                 printf("============================\n");
  22. }

  23. int my_scanf(void)
  24. {
  25.                 int num;
  26.                 printf("请输入一个指令: ");
  27.                 scanf("%d", &num);

  28.                 if (num < 1 || num > 6)
  29.                 {
  30.                                 printf("你输入的数字错误请从新输入");
  31.                 }

  32.                 return num;
  33. }

  34. int  *my_matrix(void)
  35. {

  36.                 static int *full = NULL;
  37.         int i, j;
  38.         printf("请输入新矩阵规模(M * N) ->");
  39.         scanf("%d*%d", &i, &j);

  40.         full = (int *)realloc(full, sizeof(int) * (i * j + 2));

  41.         if(full == NULL)
  42.         {
  43.                         printf("你的矩阵未创建成功");
  44.                 exit(1);
  45.         }
  46.         else
  47.         {
  48.                         printf("%d*%d的矩阵以创建成功", i, j);
  49.         }
  50.         full[0] = i;
  51.         full[1] = j;
  52.                
  53.         return full;

  54. }

  55. void my_tow(int *ptr)
  56. {
  57.                 int n = ptr[0];
  58.         int m = ptr[1];
  59.         int *matrix = ptr + 2;
  60.         int num;

  61.         printf("你想出使化指针的数值是多少 ->");
  62.         scanf("%d", &num);

  63.                 /*for(int i = 0; i < n; i++)*/
  64.                 /*{*/
  65.                                 /*for(int j = 0; j < m; j++)*/
  66.                                 /*{*/
  67.                                                 /**((matrix + j * n) + i) = num;*/
  68.                                 /*}*/
  69.                  /*}*/
  70.                 //你在创建内存空间的时候是1维数组,赋值按1维赋值就可以了
  71.                 for (int i=0;i<m*n;i++)
  72.                 {
  73.                                 *(matrix+i)=num;
  74.                 }
  75. }

  76. void my_three(int *ptr)
  77. {
  78.                 int x, y;
  79.                 int n = ptr[0];
  80.                 int m = ptr[1];
  81.         int number;
  82.         int *matrix = ptr + 2;

  83.         printf("请输入要修改的位置(行,列) ->");
  84.         scanf("%d,%d", &x, &y);
  85.         putchar('\n');

  86.         printf("请输入一个数字:");
  87.         scanf("%d", &number);
  88.         putchar('\n');

  89.         //*((matrix + (x - 1)) + (y - 1)) = number; 需要行的值*x-1
  90.                 /**(matrix+((x-1)*ptr[0])+(y))=number;*/

  91.                 //这里也改一下了
  92.                 *(matrix + ((x - 1) * m + (y - 1)))=number;
  93.                

  94. }

  95. int my_printf(int *ptr)
  96. {
  97.                 int n = ptr[0];
  98.         int m = ptr[1];
  99.         int *matrix = ptr + 2;
  100.                 /*for(int i = 0; i < n; i++)
  101.                 * {
  102.                                  *for(int j = 0; j < m; j++)
  103.                           {
  104.                                                   printf("%-3d", *((matrix + i) + j));
  105.                           }
  106.                           putchar('\n');
  107.                 }*/

  108.    /*     for(int i=0; i < n*m; i++)*/
  109.                 /*{*/
  110.                                 /*printf("%-3d", *(matrix + i));*/

  111.                 /*}*/

  112.                 //输出我更改成这样了,这样输出能输出成矩阵
  113.                 for(int i=0; i < n; i++)
  114.                 {
  115.                                 for(int j = 0; j < m; j++)
  116.                                 {
  117.                                                 printf("%-3d", *(matrix + i * m + j));
  118.                                 }
  119.                                 putchar('\n');
  120.                 }
  121.                 putchar('\n');
  122. }
  123.                


  124. int main(void)
  125. {
  126.                 welcome();
  127.         int i;
  128.         int *ptr = NULL;
  129.                
  130.                 while((i = my_scanf()) != 6)
  131.                 {
  132.                
  133.                 switch(i)
  134.                 {

  135.                 case 1 :
  136.                                 {


  137.                                                 ptr = my_matrix();
  138.                                                 putchar('\n');
  139.                                                 putchar('\n');
  140.                                                 break;
  141.                                 }
  142.                 case 2 :
  143.                                 {
  144.                                                 my_tow(ptr);
  145.                                                 putchar('\n');
  146.                                                 putchar('\n');
  147.                                                 break;
  148.                                 }
  149.                 case 3 :
  150.                                 {
  151.                                                 my_three(ptr);
  152.                                                 putchar('\n');
  153.                                                 putchar('\n');
  154.                                                 break;
  155.                                 }
  156.                 case 4 :
  157.                                 {
  158.                                                 my_printf(ptr);
  159.                                                 putchar('\n');
  160.                                                 break;
  161.                                 }
  162.                 }
  163.                 }
  164.                 free(ptr);

  165.                 return 0;
  166. }
复制代码

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /1 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.1 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2018-4-21 19:35

快速回复 返回顶部 返回列表