C语言代码问题?

#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>intmain(){inta[100][100],i,j,k,c,d;cha... #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int a[100][100], i, j, k, c, d;
char ch;
for (i = 0; i < 100; i++)
{
for (j = 0; j < 100; j++)
{
scanf("%d", &a[i][j]);
if ((ch = getchar()) == '\n') break;
else continue;
}
d = j;
if ((ch = getchar()) == '\n') break;
else continue;
}
c = i;
printf("%d %d", c,d);
return 0;
}

我想知道每行 每列各有多少数字,但我用了c和d来取值,出来的结果不对
展开
 我来答
White_MouseYBZ
2019-11-26 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6701万
展开全部
逻辑错得太远,改成下面的样子。如ch = getchar()若不是'\n'不就把数字读出来了?若读取了数字,又没有后续处理,当然要出错了。下面是按你的思路改的。
int main(int argc,char *argv[]){
int a[100][100], i, j, k, c, d;
char ch;
for (i = 0; i < 100; i++){
for (j = 0; j < 100; j++){
scanf("%d", &a[i][j]);
if ((ch = getchar()) == '\n'){
d=j,c=i;
i=101;
break;
}
else ungetc(ch,stdin);
}
}
printf("%d %d\n", c,d);
return 0;
}
更多追问追答
追问
呃。。。刚刚上大一,你的代码有的地方看不懂啊🙈🙈🙈还没学过呢

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式