c语言中的%d,&y是什么意思?

%d 格式化输入输出的格式控制,用来表示数据输入输出的格式,具体可自行搜索,不是一两句说得清楚的。

&y 是取止操作,获取变量y在内存中的地址。

scanf("%d", &y)表示从标准输入(控制台)获得一个整数,并将这个整数写入变量y对应的内存。

printf("%d", y)表示将y转为整数输出。

格式说明由“%”和格式字符组成,如%d%f等。它的作用是将输出的数据转换为指定的格式输出。格式说明总是由“%”字符开始的。不同类型的数据用不同的格式字符。 
格式字符有d,o,x,u,c,s,f,e,g等。 

%d整型输出,%ld长整型输出,

%o以八进制数形式输出整数,

%x以十六进制数形式输出整数,

%u以十进制数输出unsigned型数据(无符号数)。

%c用来输出一个字符,

%s用来输出一个字符串,

%f用来输出实数,以小数形式输出,

%e以指数形式输出实数,

%g根据大小自动选f格式或e格式,且不输出无意义的零。

scanf(控制字符,地址列表) 
格式字符的含义同printf函数,地址列表是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。如scanf("%d%c%s",&a,&b,str);

注意,scanf是直接写内存,不转换,如果格式控制符与变量类型不兼容,会出现意想不到的结果。

如果是初学者不要纠结这些,记住4个基本的就够了%d(整数) %f(实数) %s(字符串) %c(字符),不要被细枝末节阻挡,大步向前。



 

上一篇:C语言考核


下一篇:UVA232 纵横字谜的答案 Crossword Answers 题解