2024-06-04 00:02:09
有点不明白。。。能详细点么?
sr[100][100];
while(temp=getchar()!='\n')
{
int w=0;
sr[w][0]=temp;
gets(sr[w]);
w+=1;
}
是这个意思么?感觉不对额
首先,我的意思是用getchar便不再用gets,仅仅用getchar来进行录入,再则,while的判断条件不对(如果用我所说的思路),再加||w!=0(或),在while循环里面,w不能每次都赋值为0
这样,楼主,我写一下,你看看,
char sr[100][100];
int flag=0;
int next=0;
int line=0;
char temp;
while(((temp=getchar())!='\n')||flag!=0)
{
if(temp=='\n')
{ //printf("11 %d",temp);
line++;//行++,下一行录入
flag=0;
next=0;//第一列
fflush(stdin);
}
else
{
flag=1;
sr[line][next]=temp;
next++;
}
}
按照你说的要求,我运行着可以。有什么问题楼主再说。
2024-06-04 04:09:01
if(sum!='\r')
这是怎么回事?一个双重指针怎么可以和一个字符比较?
这个不是指针!这段代码的意思是(如果sum!=\r)就退出循环。也就是输入。
error C2040: '!=' : 'int [10][10]' differs in levels of indirection from 'int'
error C2446: '!=' : no conversion from 'int' to 'int (*)[10]'
真的是指针~
你用的什么编译器?我用的cv6.0。
定义指针变量前面需要加上*如:int *a;表示a是一个指针变量如果前面两个*表示指向指针变量。
同VC6.0 。
数组跟指针是一样的。 二维数组也就是双重指针~
如果你知道的这么透彻。那么你就不会问这么简单的问题了?你觉得我说的对吗?
2024-06-04 00:27:36
你好像没有理解我的意思。。虽然数组是[100][100]
但并不一定是输入100*100个数。。