C语言二维数组——添加与修改

我该怎么在这里添加代码,达到可以添加会员信息还有修改会员信息?急!!!

你这样写不太好,我建议使用结构体来存储数据,可以一开始初始化一个大一点的结构体数组,在主程序里面用一个while循环(你可以设一个标志为退出),同时在里面用switch表示各个功能项,增加会员信息就是在结构体数组中增加一个成员,修改就是修改指定结构体成员的属性值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-11-15
用数组时,必须要知道二维数组的后一个维度,否则无法正确修改,比如: void modify(int a[][10]) { a[1][2] = 12; a[2][5] = 25; } void main() { int a[5][10]; a[1][2] = 0; a[2][5] = 0; modify(a); printf("a(1,2)=%d, a(2,5)=%d\n",12, 25); } 用指针方式实现时要注意二维数组的建立过程。比如以上的int a[5][10],用指针实现相同功能的代码如下: void modify(int **a) { a[1][2] = 12; a[2][5] = 25; } void main() { int **a; a = (int **) malloc( sizeof(int *) *5); for(int i=0 ; i<5 ; i++) a[i]=(int *) malloc(sizeof(int)*10); a[1][2] = 0; a[2][5] = 0; modify(a); printf("a(1,2)=%d, a(2,5)=%d\n",12, 25); }追问

这是我的源代码

本回答被网友采纳
第2个回答  2020-07-18
#include<stdio.h>

void Ch_g(float B[][4]);
int main()
{
float A[3][4],m=0;
int i,j;

for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{

A[i][j]=m+1;
m=m+1;
}
}
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{

printf(" %f\t",A[i][j]);
}
printf("\n");
}

printf("\n");
printf("\n");
printf("\n");

Ch_g(A);

printf("数组改变后的值为以下输出\n");
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{

printf("%f\t",A[i][j]);
}
printf("\n");
}

printf("\n");
printf("\n");

return 0;
}
void Ch_g(float B[][4])
{
int i,j;
float m=2;
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{

B[i][j] = B[i][j]+1;

}

}

}
相似回答