关于常量和变量的问题

2024-11-25 09:45:04
推荐回答(3个)
回答1:

常量
c语言中使用define命令定义符号常量。

定义符号常量的格式是#define 标识符 字符串。

这个标识符称为宏名。这样编译时,程序中凡是出现宏名地方,都用字符串代替。

\t 横向跳到下一制表位置
\f 走纸换页

如:
void main()

{

int a,b,c;

a=5; b=6; c=7;

printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);

}

此程序练习转义字符的使用

a、b、c为整数 5->a,6- c

此程序练习转义字符的使用

a、b、c为整数 5->a,6->b,7->c

调用printf显示程序运行结果

printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);

程序在第一列输出a值5之后就是“\n”,故回车换行;接着又是“\t”,于是跳到下一制表位置(设制表位置间隔为8),再输出b值6;空二格再输出c 值7后又是"\n",因此再回车换行;再空二格之后又输出a值5;再空三格又输出b的值6;再次后"\t"跳到下一制表位置(与上一行的6 对齐),但下一转义字符“\b”又使退回一格,故紧挨着6再输出c值7。

回答2:

1. #define a 30是宏替换,用30替代a
定义常量是const int a = 30;两者效果一样。

2. '\t'是一个制表符,相当于你按一次TAB键。
'\f'是换页符。

3. 语法错误,编译不通过
改成printf("%f", a);

回答3:

3。有个程序
float a;
a=123.456;
printf(%d,a);
为什么结果为0

%d对应int类型, float 对应 %f
所以你要的写法是
float a;
a=123.456;
printf(%f,a);

按照你原来 的写法 把float类型当作int类型来处理,
先不说float 和int的表示方法是不一样的,也不清楚printf是怎么样处理这
两种类型的。