c语言102f
⑴ c语言 控制输出 不懂结果为什么是102和10
printf("%2d,%2d\n",x,y);
等于printf("%2d,%2d\n",102,012);
第二个参数是8进制,printf自动转换了!
所以结果是 102,10
⑵ c语言中%2f和%.2f有什么区别谢谢大神
%2f是把float的所有位数输出2位,包括小数点,如果不组2位,补0,如果超过2位,按照实际输出
%.2f是float后的小数只输出两位。
例如:
printf("%2f, %2f, %.2f",123.1, 123.123, 123.123);
VS的输出就是:123.100000, 123.123000,123.12
拓展资料:
特有特点
C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
不同的变量类型可以用结构体(struct)组合在一起。
只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
部份的变量类型可以转换,例如整型和字符型变量。
通过指针(pointer),C语言可以容易的对存储器进行低级控制。
预编译处理(preprocessor)让C语言的编译更具有弹性。
⑶ c语言中 10.f 12.0f 5.2f 7.2f代表什么
强制10.、12.0、 5.2、 7.2等这些浮点数为float型。因为C中的浮点常数被默认为double型,若不强制一下,赋给float型左值时会产生编译警告。
你完全可以不通过认证,权力在你手上;但不要鸡蛋里挑骨头:题目是“
c语言中 10.f 12.0f 5.2f 7.2f代表什么”,我答的第一句话就是“强制10.、12.0、 5.2、 7.2等这些浮点数为float型。”这还不开门见山?第二句话就说明了为什么要强制,难道还有什么别的意思?就放在这里让网友们评论吧……
⑷ c语言,%2f是什么意思详细点,举例说明,懂了才采纳
%2f 中的 2 表示占两位输出。
如下面的程序:
#include<stdio.h>
intmain()
{
floatx,y;
printf("请输入两个数: ");
scanf("%f,%f",&x,&y);
printf("%10f,%10f ",x,y);//%10f,表示右对齐,占10位输出
printf("%-10f,%-10f ",x,y);// %-10f,表示左对齐,占10位输出
//%5.2f,表示右对齐,占5位,保留两位有效数字;%-5.2则表示左对齐
printf("%5.2f,%-5.2f ",x,y);
return0;
}
输出:
⑸ C语言中“%lf,%.2lf,%.2f”代表什么
1、%lf 双精度浮点型,也就是double型的格式,默认保留6位小数。
如:double a = 1.2; printf("%lf",a); //1.200000。
2、%.2lf 同上,不过限制了,值保留2位小数。
如:double a = 1.2345; printf("%.2lf",a); //1.23。
3、%.2f 表示单精度浮点型,也就是float型的格式。
如:float a = 1.2731; printf("%.2f",a); //1.27。
⑹ 高手请进!一道C语言编程的题,对于您这相当简单!急!!
main()
{int x=‘f';
printf("%c\n",'A'+(x-'a'+1));
}
字符间的运算是其相应的ASCII码的运算.
'A'的ascii是65
'f'的ascii是102
'a'的ascii是97
'A'+(x-'a'+1)即
65+(102-97+1)=71
71对应的字符是'G'
而printf输出函数要求是按%c\n输出(%c\n即按字符输出,并输出结果后换行),所以屏幕输出结果是
G
换行
⑺ 这个c语言代码有什么问题
定义一个数组时需要指定大小, 当然可以通过赋值来由编译器自行判断, 比如 int a[] = {1,2,3}. 但直接写成 int a[] 是不行的.
而第二句 a['f'] = 0, 实际上向 'f' 对应的 ascii 码 102 的位置写入 0, 如果数组大小不够, 且是越界写入, 是错误的, 很可能导致程序挂掉.
可以写成:
int main(void)
{
int a[128] = {0};
a['f'] = 0;
return 0;
}
⑻ c语言中102等于多少
十进制数就是一个数字前面什么也不加,比如 123不能正确表示大学字母b的是 A,明显是小写b,B,C,D 是大写字母B的ASCII码
⑼ C语言题目 写出程序的最终输出结果 正确答案是f 我以为要写ASCII码 写了102 对不对
%c就输出f
%d输出102
如果正确答案是f 那你写102是错误的
⑽ C语言,为什么结果是f
char a[4]="ABC"; // 代码有误,修改为char b[4]="ABC";
数组a的存储如下:
[0] 97 'a'
[1] 98 'b'
[2] 99 'c'
[3] 100 'd'
[4] 101 'e'
[5] 102 'f'
[6] 0 ''
执行strcpy(a,b);后,存储如下:
[0] 65 'A'
[1] 66 'B'
[2] 67 'C'
[3] 0 ''
[4] 101 'e'
[5] 102 'f'
[6] 0 ''
由于b的长度比a短,所以复制时,只覆盖了前面的部分,后面的内容没有改变。
字符串时以第一个0为结束的,所以输出和计算字符串长度时是正确的。