第一次写博客,今天介绍一下scanf的用法。

scanf的功能:用一句话来概括就是“通过键盘给程序中的变量赋值”。

其函数的原型为:

int scanf(const char *format, ...);

具体有两种用法:

1、scanf(“输入控制符”,输入参数);

作用:将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入已输入参数的值为地址的变量中。

例如:

#includeint main(){int a,b;printf("请输入整数:");scanf("%d",&a);// %d,将输入的字符转化为十进制形式printf("a=%d\n",a);// %d,以十进制输出a的值,\n换行符b=a>0?1:-1;//三目运算符,当a>0,b=1;否则b=-1printf("b=%d\n",b);return 0;}

2、scanf(“非输入控制符输入控制符”,输入参数);

作用:将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入已输入参数的值为地址的变量中(非输入控制符必须原样输入)。

例如:

#includeint main(){int a,b;printf("请输入整数:");scanf("a=%d",&a);// %d,将输入的字符转化为十进制形式b=a>0?1:-1;//三目运算符,当a>0,b=1;否则b=-1printf("b=%d\n",b);return 0;}

根据scanf(“a=%d”,&a)双引号里的内容”a=%d”,在终端输入必须输入“a=数字”,然后回车,注意”a=”不能少,否则程序不能向下执行。

总结:推荐第一种用法,尽量不要用非输入控制符,可以结合printf使用来提示输入的东西,然后根据提示直接输入就好。

可参考:http://t.csdn.cn/8NDof