关于二维数组赋值的问题
程序代码:
#include<stdio.h> #include<string.h> #include<stdlib.h> int main() { int n,m,p,q,i,w,r; int j[100][100]={0}; char a[99]={0},b[99]={0},*c[100][100]={0}; p=0;q=0; scanf("%d",&n);//指定输入的组数,每组输出两个字符或数组。 for(i=1;i<=n;i++) { scanf("%s ",a); scanf("%s",b); if(a[0]<=57&&a[0]>=48&&b[0]<=57&&b[0]>=48)//如果均为数字,将这两个数相加。 { int num=atoi(a); r=atoi(b); r=num+r; j[q][100]={r};/*这种写法是不是不正确?能否将r的值赋给数组j? 如果不可以,那怎样修改呢? */ printf("%d",j[0]); q++; } else//反之,将他们连起来输出,比如:输入:12 yes 输出:12yes { c[p][10]=strcat(a,b);/*这种写法是不是不正确?*/ p++; } } for(w=0;w<q;w++) printf("%d\n",j[w]); for(i=0;i<p;i++) printf("%s\n",c[i]); return 0; }
疑问处见程序中的注释(可能表述不清,还请见谅)
[此贴子已经被作者于2016-12-3 23:58编辑过]