如何打印输入的第一个数字?
How do I print out the first number typed?
int main()
{
int i;
float number[6];
for (i=0; i<=2; i++) {
printf("write number %in", i+1);
scanf("%i",&number[i]);
}
printf ("the first number you wrote: %i", number[1]);
return 0;
}
我很难理解如何打印出索引变量中的第一个数字。答案总是0
,如果输入number[1]
或number[5]
,输出总是0
当我打印第一个数字时,我不知道该写什么,结果总是0。
但是从这个语句中很明显你没有打印输入的第一个数字
printf ("the first number you wrote: %i", number[1]);
由于number[1]
指的是您输入的第二个数字,请尝试使用number[0]
代替number[1]
printf ("the first number you wrote: %i", number[0]);
除了上面的问题,还有一个问题。您在scanf()
和printf
语句中使用了错误的float
格式说明符在扫描或打印float
's时使用%f
, %i
用于int
's
通常使用错误的格式说明符会导致未定义的行为,看看这个:如果使用错误的格式字符串调用printf会发生什么?
另外,尽量避免使用printf()
和scanf()
,而使用std::cout
和std::cin
,就像其他人指出的那样。
相关文章:
- 代码以查找数组中的最大数字,但它仅将第一个数字显示为最大数字. 有人请告诉我为什么
- 我必须更改我的数字最后一个数字和第一个数字,但不要使用仅带有整数或循环的函数.例如从 12345 到 52341
- 为什么字符串流只读取整数中的第一个数字?如何使它只在空白处移动?
- 说单精度碰撞的第一个数字是 131072.02 是否正确?(阳性,将 2 位数字视为尾数)
- 如何在 c++ 中将第一个数字移动到数字的末尾
- C 搜索算法第一个数字= n
- 为什么我的数组只接受它们中的第一个数字
- 给定一个数字n,打印序列中大于或等于n的第一个数字
- 如何从文件中获取数字行并忽略第一个数字
- 打印由用户定义的数组,第一个数字确定单词的大小,第二个数字确定行的大小
- 两个非常大的数字的乘积的第一个数字
- for循环在将第一个数字放入数组后退出
- 查找双精度数组中的第一个数字
- 获取线 CIN 忽略输入中的第一个数字
- 默认值仅适用于 8 和 9.之后,它使用第一个数字并将其视为 1,2,3
- Atoi 仅返回 char* 参数的第一个数字
- 如何从C++文件中读取第一个数字
- c++中的随机数生成第一个数字不是随机的
- 如何打印输入的第一个数字?
- 计算文本文件每行的第一个数字