C 字符宽度1和例如6之间有什么区别
我从C语言开始学习。我不理解整个字符。当我改变它时,没有任何视觉效果发生,所以我不知道这是为了什么 我在研究,一开始我发现它不是字符串长度而是 字符数据类型,但我无法找到更多信息C 字符宽度1和例如6之间有什么区别,c,C,我从C语言开始学习。我不理解整个字符。当我改变它时,没有任何视觉效果发生,所以我不知道这是为了什么 我在研究,一开始我发现它不是字符串长度而是 字符数据类型,但我无法找到更多信息 main() { float farh, celsium ; int lower, upper, step; lower = 0; upper = 300; step = 20; farh = lower; while(farh <=
main()
{
float farh, celsium ;
int lower, upper, step;
lower = 0;
upper = 300;
step = 20;
farh = lower;
while(farh <= upper) {
celsium = (5.0/9.0) * (farh - 32.0);
printf( "%5.2f %5.2f\n",farh, celsium);
farh = farh + step;
}
}
用至少5个字符宽和小数点后2个数字表示要发出警报的每个参数。但如果我写2、6或其他数字而不是5,会有什么变化
printf("%5.2f\n", 3.223467856);
考虑上面的说法:
使用%5.2f打印将生成:_3.22(符号u表示开头的空白,不会在控制台中打印)
5:
数字将占用5个字符宽的空间。(.)点也占用1个字符空间)
2:
数字将在小数点(.)后占据2位数字
使用%6.2f打印将生成:_3.22
printf("%6.3f\n", 3.223467856);
如果修改程序(进行一些清理),使用%6.2f打印将生成:_3.223:
当fahrenheit
从0
变为20
时,与从80
变为100
时,您会看到行为上的差异。请注意,C中的“宽字符”并不是指您当前正在询问的内容。相反,它与Unicode 16位编码字符有关。查看此条目:
printf("%6.2f\n", 3.223467856);
printf("%6.3f\n", 3.223467856);
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int const lower_limit = 0;
int const upper_limit = 300;
int const step = 20;
float fahrenheit = lower_limit;
while (fahrenheit <= upper_limit) {
float const celsius = (5.0f / 9.0f) * (fahrenheit - 32.0f);
printf("%9.6f\t%10.6f\n", fahrenheit, celsius);
fahrenheit += step;
}
return EXIT_SUCCESS;
}
0.000000 -17.777779
20.000000 -6.666667
40.000000 4.444445
60.000000 15.555556
80.000000 26.666668
100.000000 37.777779
120.000000 48.888893
140.000000 60.000004
160.000000 71.111115
180.000000 82.222229
200.000000 93.333336
220.000000 104.444450
240.000000 115.555557
260.000000 126.666672
280.000000 137.777786
300.000000 148.888901