初学C,请问怎样可以实现向字符数组a中多次输入一个字符串,每输入一次将该字符串存放到二维数组b的一个维中?例如,输入a[10]=abcdefg,将其存放到b[2][10]中的第一行,再输入a[10]=hijknlm,将其存放到b[2][10]中的第二行。
第1个回答 推荐于2017-11-24
楼主是这个意思么?输入两个字符串到a,将它复制到b里面
#include<stdio.h>
void main()
{
int i;
char a[10];
char b[2][10];
for (i = 0; i != 2; ++i)
{
scanf("%s", a);
strcpy(b[i], a);
}
for (i = 0; i != 2; ++i)
{
printf("%s\n", b[i]);
}
}本回答被提问者采纳
#include<stdio.h>
void main()
{
int i;
char a[10];
char b[2][10];
for (i = 0; i != 2; ++i)
{
scanf("%s", a);
strcpy(b[i], a);
}
for (i = 0; i != 2; ++i)
{
printf("%s\n", b[i]);
}
}本回答被提问者采纳
第2个回答 2011-11-22
给你一个例子吧,大体差不多
#include<stdio.h>
int main()
{
int i,j,a[50][50],k,sum=1;
printf("你想输入几阶方阵\n");
scanf("%d",&k);
printf("输入方阵的数,以空格键隔开\n");
for(i=0;i<k;i++)
for(j=0;j<k;j++)
scanf("%d",&a[i][j]);
for(i=0;i<k;i++)
{
for(j=0;j<k;j++)
{
printf("%8d",a[i][j]);
}
printf("\n");
}
for(i=0;i<k;i++)
{
for(j=0;j<k;j++)
if(i==j)
sum=sum*a[i][j];
}
printf("对角线数乘积为%d\n",sum);
}
#include<stdio.h>
int main()
{
int i,j,a[50][50],k,sum=1;
printf("你想输入几阶方阵\n");
scanf("%d",&k);
printf("输入方阵的数,以空格键隔开\n");
for(i=0;i<k;i++)
for(j=0;j<k;j++)
scanf("%d",&a[i][j]);
for(i=0;i<k;i++)
{
for(j=0;j<k;j++)
{
printf("%8d",a[i][j]);
}
printf("\n");
}
for(i=0;i<k;i++)
{
for(j=0;j<k;j++)
if(i==j)
sum=sum*a[i][j];
}
printf("对角线数乘积为%d\n",sum);
}