问题1:
#define f(z)
(z<2)?(((2-z)*(2-z))*((2-z)*(2-z)))*\
(((2-z)*(2-z))*((2-z)*(2-z)))/560:0;
上面这个*\什么意思
问题2:
一语句
printf("a=%.2f\n,b=%.2f\n,c=%.2f\n,d=%.2f\n,e=%.2f\n",a,b,c,d,e);
不提示错误。换成
printf("a=%.2f\n,b=%.2f\n,c=%.2f\n,
d=%.2f\n,e=%.2f\n",a,b,c,d,e);
编译时提示:unerminated string or chatacter constant in function
main,
function call missing,
illegal chatacter'\'(0*5) in function main
问题1中那个\表示和后面的是接一起的,告诉程序下一行和上一行是一起的。 反斜杠符号起到长代码分行书写功能。
问题2改成
printf("a=%.2f\n,b=%.2f\n,c=%.2f\n,\
d=%.2f\n,e=%.2f\n",a,b,c,d,e);
C语言中一行只可以输入80个字符,如果代码需要换行,则在每行后面加上行结束符“\”
像你的第二条语句,没加行结束符,编译时会认为,字符串没有正确结束
例如:
"I \
love \
you"
上面的字符串与下面的单行字符串等价:
"I love you"
但是printf这样的标识符和关键字不可以分行写。下面的两种写法都是错的:
1. print
f("hello");
2. print\
f("hello");