#include<stdio.h>
int main() {
int m,n;
float cake;
printf("Enter total kgs of cake:");
scanf("&d", &n);
printf("Enter the number of friends:");
scanf("&d", &m);
cake = m/n;
printf(He has to distribute %f kg cake to each of his %d friends",
&cake, &m);
}
当我在codeblocks中运行这个程序时,它要求我输入总kgs of cake,当我输入它并点击enter时,程序只打印下面printf函数中的所有其他内容,而不是让我输入朋友的数量。
答案 0 :(得分:4)
FROM python:3.4-alpine
RUN pip3 install -U setuptools
RUN pip3 install -U pylint
您需要将其更改为
scanf("&d", &n);
scanf("&d", &m);
此外,在printf函数中,您不应传递变量的地址
答案 1 :(得分:3)
&#34;&amp; d&#34;保存特定变量的地址。所以,你需要改变
scanf("&d",&m)
到scanf("%d",&m)
和scanf("&d",&n)
到scanf("%d",&n)
。这里%d
是整数变量的占位符。
同样,在最终的print语句中,&符号&
打印的地址不是值,因此在最终的printf语句中删除&
答案 2 :(得分:1)
您的代码中存在几个问题。首先,scanf()
应该是这样的:
scanf("%d", &var);
下一个关闭在您的printf
声明中。在var部分中,您执行了&cake
和&m
这是错误的,因为您要打印变量的地址。要解决此问题,请删除&
。