在你的题目中,定义了f1()函数的三个参数类型,它们依次为整型变量n,双精度浮点数组a[],双精度浮点数x。而程序中调用f1()函数时,给出的参数为(9,a[20],1.1),这与函数f1定义的参数不相符。
因为在C语言中,数组是用数组变量名来表示的,它代表的是一个地址(相当于指针变量),如果在数组名后添加了下标值,则其所代表的是一个由该下标指示的数组单元(相当于一个普通变量)。
程序中调用f1()函数时,将第二个参数写为a[20],代表的是a[]数组中的第20号单元,而不是f1()所要求的数组变量a。