为什么scanf语句不执行?

来源:百度知道 编辑:UC知道 时间:2024/09/27 23:29:39
for(k=0;k<G.arcsnum;k++)
{
printf("输入弧%d的始点:\n",k+1);
scanf("%c",&x);
//read(x);
printf("%d:\n",i);
for(i=0;i<G.vexnum;i++)
{
if(x==G.vexs[i])

n=i;
}
printf("%d:\n",i);
temp=getchar();
printf("输入弧%d的终点:\n",k+1);
//scanf("%c",&y);
read(y);
for(j=0;j<G.vexnum;j++)
{
if(y==G.vexs[j])
m=j;
}
temp=getchar();

printf("%d:\n",m);
G.arcs[n][m]=1;
}
// TODO (#1#): 先输入顶点个数和顶点数据,然后输入弧,建立图
return OK;
//-------------------------------------
}

因为被回车符吃掉啦

方案1:
scanf("%c",&x); //下面加上
getchar();

方案2:
scanf("%c",&x); //下面加上
fflush(stdin);//这个方法通用性高一点

//后面整行是注释……
/* */ 中间夹的也是……

注释不执行……