一字褒贬:在C中怎么给二维数组赋值

来源:百度文库 编辑:中科新闻网 时间:2024/05/13 18:32:11
比如:
#include <stdio.h>
void main()
{
char s[10][20];
printf("enter string:");
scanf("%s",这里怎么写啊);
或者用别的方法赋值

}

急等人回答啊
void paixu(char s[][20],int i)

怎么把输入的东西传给函数

string其实就是char数组,读的时候传入的只是这个char数组的首地址.
比如 str[256]; scanf("%s", str);
那么对于string数组来说也是一样
比如你说的
s[10][20];
对于这个2维数组的10个string的首地址就是s[0] -- s[9]

所以读的时候可以用一个循环
for (i = 0; i < 10; i++)
{
printf("enter string:");
scanf("%s",str[i]);
}

补充回答: 至于调用void paixu(char s[][20],int i);
直接把str传入就可以了
paixu(str, 10);

很直观的方法:已运行。
#include <stdio.h>
void main(void)
{
int array[5][5],i,j;
printf("\nInput the numbers of array:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("array[%d][%d]=",i,j);
scanf("%d",&array[i][j]);
}
printf("The array is:\n");
for (i=0;i<5;i++)
{
for (j=0;j<5;j++)
printf("%5d",array[i][j]);
printf("\n");
getch();
}
}

#include <stdio.h>
void main()
{
char s[10][20];
for(int i=0;i<10;i++)
{printf("enter string:");
scanf("%s",str[i]);
}
}

下面是先输入,后输出的函数:
#inclde<stdio.h>
void main()
{
int i;
char s[10][20];
for(i=0;i<10;i++)
{
printf("enter string:");
scanf("%s",s[i]);
}
for(i=0;i<10;i++)
{
printf("s[i]=%s\n",s[i]);
}
}

#inclde<stdio.h>
void main()
{
int i;
char s[10][20];
for(i=0;i<10;i++)
{
printf("enter string:");
scanf("%s",s[i]);
}
for(i=0;i<10;i++)
{
printf("s[i]=",s[i]);
}
}
C语言也忘的差不多了,也不知道对不对。