c - 我的第二个 scanf 不工作 - 我该怎么办?
问题描述
我scanf
在这段代码中的第二个不起作用,计算机不会等待我输入第二个值。
我知道当它发生时只需要在
但不能让它工作%c
之前放一个空格%
%f
#include <stdlib.h>
#include <stdio.h>
main()
{
float a, p;
printf("Insira seu peso: "); scanf("%.1f", &p);
printf("Insira sua altura: "); scanf("%.2f", &a);
}
解决方案
点.
不是scanf()
函数族中的有效格式标志字符。这些格式与格式printf()
系列有关(这不是偶然的),但它们远非相同。
每个转换规范都由字符 '
%
' ... 引入,之后依次出现以下内容:
一个可选的赋值抑制字符'
*
'。一个可选的非零十进制整数,指定最大字段宽度。
[CX] ⌦ 一个可选的赋值分配字符'
m
'。⌫</p>一个选项长度修饰符,指定接收对象的大小。
一个转换说明符字符,它指定要应用的转换类型。有效的转换说明符如下所述。
里面没提.
。
推荐阅读
- ios - 以编程方式添加的 UITableView 中的错误单元格插图
- jquery - 未捕获的 TypeError:尝试使用 jQuery 时的非法构造函数
- javascript - 如何以箭头符号解构参数
- webpack - 如何在 vue.js 应用程序的生产环境中禁用源映射?
- php - Laravel 和 Mysql '已经消失了'
- clearcase - 无法识别的命令:“vob_restore”
- .htaccess - .htaccess 重写规则以包含文件
- f# - 如何从 IList 对象中的单个对象创建对象列表
- java - 如何使用 Eclipse 工作区作业等详细信息按钮实现 Eclipse 进度条
- c - 将变量传递给另一个可变参数函数 [专家版]