易截截图软件、单文件、免安装、纯绿色、仅160KB

c C++小问题 - C/C++ / C++ 语言

#include<stdio.h>
#include<malloc.h>
#include<iostream.h>
#define MAX 4
#define null 0
typedef struct ArcNode{
int adjvex;
struct ArcNode *nextarc;
}ArcNode;
typedef struct VNode{
char data;
ArcNode *firstarc;
}VNode,AdjList[MAX];
typedef struct{
AdjList vertices;
int vexnum,arcnum;

}ALGraph;
void insertv(ALGraph &Alg)
{
for(int i=0;i<Alg.vexnum;i++)
{

cout<<"输入:";//改为printf("输入\n");怎么不对呢?
cin>>Alg.vertices[i].data;//改为这个scanf("%c",&Alg.vertices[i].data);怎么不对呢
Alg.vertices[i].firstarc=null;
}
}
void main()
{
ALGraph alg;
printf("输入节点数与边数\n");
scanf("%d%d",&alg.vexnum,&alg.arcnum);
insertv(alg);

}
不应该啊,什么错误?

输入次数不一样,如果是cin则为Alg.vexnum次输入,如果是scanf 则不是


因为scanf读取字符的时候会冲缓冲区读取'\n'字符,所以才会出现楼主所说的问题,
而cin则不会读取'\n'字符。
问题的解决是:在读取字符的时候做'\n'判断,如果取到了'\n'字符,则舍去,重新读取
。。。。
正解


相关问答:

linux环境下gethostbyname函数问题 - C/C++ / C语言

写了个测试程序如下
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

c静态编译另一个文件夹的库函数 - C/C++ / C语言

在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......

求助:C代码改写成VB代码 - VB / 基础类

谁能帮我把下面这些代码改成VB形式的,多谢了,急用~~
#include "stdlib.h"
#include "math.h"
#include "stdio.h"
float objfx(float x[]);
void constraint(float x[],float g ......

求助:C代码change toVB代码 - VB / 基础类

挺繁琐,之前发的帖子,分值太低现在重发一个。欢迎各位大侠~~
#include "stdlib.h"
#include "math.h"
#include "stdio.h"
float objfx(float x[]);
void constraint(float x[] ......

C# SQL 的UPDATETEXT 问题 - .NET技术 / C#

A表 有两个字段 
  id 唯一数字域
  InfoTxt text 类型
 我现在要把 id 不是14 的所有 InfoTxt字段 文本后面 都加上 'aaa' 
按下面执行下来 只有表最后一行加上了 'aaa' ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号