首页 > 代码库 > scanf
scanf
1、在使用scanf 函数进行输入时,要对变量取地址,使用&
1> 变量实例
int b = 10;
int a = 20;
l 1>内存由大到小寻址,优先分配内存地址较大的字节给变量。b的内存地址比a大
l 2>每个变量都有地址:第一个字节的地址就是变量的地址
2、在该函数的格式化中,不能添加除格式化外的内容
scanf注意事项
例:
scanf("a=%d,b=%d",&a,&b);
printf("Hello, World!\n");
printf("\n%d,%d",a,b);
printf("Hello, World!\n");
printf("\n%d,%d",a,b);
输出结果:0,0
在scanf格式串后面加‘\n‘字符,会抵消掉人工输入的回车,敲回车不起作用,程序无法输出,解决方法,再输入一个符号,例逗号,然后再输入回车
例:
scanf("%d%d\n",&a,&b);错误
printf("\n%d,%d\n",a,b);
printf("\n%d,%d\n",a,b);
//输入时必须在两个数字之间输逗号,即与格式传中保持一致
例:
scanf("%d,%d",&a,&b);
printf("\n%d,%d\n",a,b);
scanf("%d,%d",&a,&b);
printf("\n%d,%d\n",a,b);
3、使用该函数一定要使用大键盘(小键盘,数字与快捷键组成)
小键盘回车与大键盘回车ASCII码值不同,所以作用在不同场合有所不同
4、scanf()函数返回成功读入的项目的个数。即在下面程序中scanf的返回值为1
int n;
float p;
n= scanf("%f",&p);
printf("%d,%f",n,p);
float p;
n= scanf("%f",&p);
printf("%d,%f",n,p);
5、用%c读入空格和字符的问题。如果在格式字符串中%c之前有一个空格,那么scanf()会跳到第一个非空白字符处。也就是说,命令scanf(“%c”,&ch)读取在输入中遇到的第一个字符,而scanf(“ %c”,&ch)(%c前有个空格)则读取遇到的第一个非空白字符。
对于同时输入几个字符,如果逗号(或任何非空格字符)和第一个%c之间没有间隔,则输入时,第一个字符与逗号之间也不能有间隔;如果有空格,则输入时,第一个字符和逗号之间可以有任意多个字符,也可以是0个。如果逗号和第二个%c之间没有间隔,则逗号和第二个输入字符间也不能有间隔。如果有空格,则输入时,第二个字符和逗号之间可以有任意多个字符,也可以是0个。
scanf
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。