创建一个打印身体质量指数的代码
printf("What is your height in inches?\n");
scanf("%d", height);
printf("What is your weight in pounds?\n");
scanf("%d", weight);我有初始化为int height,int weight的身高和体重,但是程序不让我运行它,因为它说在两个scanf行上格式都是int*类型。为了让这个程序运行,我做错了什么?
发布于 2014-08-30 03:33:54
scanf需要格式(您的"%d")和变量的内存地址,该变量应该将所读取的值放入其中。height和weight是int,而不是int的内存地址(这是int *类型所说的:指向int内存地址的指针)。您应该使用运算符&将内存地址传递给scanf。
你的代码应该是:
printf("What is your height in inches?\n");
scanf("%d", &height);
printf("What is your weight in pounds?\n");
scanf("%d", &weight);更新:正如顺磁翻译器指出的那样,引用不是正确的term.So,我将其更改为内存地址。
https://stackoverflow.com/questions/25574981
复制相似问题