这个C程序哪里出错了?谢谢帮忙!

来源:百度知道 编辑:UC知道 时间:2024/05/22 14:31:49
#include<stdio.h>
void main()
{
int i,n ,cq=1;
float a[n];
//scanf("%d",&n);
for(i=0,i<n,i++)
scanf("%f",&a[i]);
for(i=0,i<n,i++)
if(a[i]%2==0)
cq*=a[i];
else continue;
printf("%f\n",cq);
}
这个程序哪里出错了?请各位大侠多多指教!
我想做的是这样的!输入N和对应的N个数,输出它们中所有奇数的乘积!按我的做法应该这样修改啊!或者有没有什么好的程序?请多多指教!

数组的大小只能用常量表示。a[n]不合法。a[i]是float不能取余。

n付个初值也是不行的。a[n]中的n一定要是常量。你可以定义一个很大的常量如a[100],然后n要求输入少于100的数。另外你只要求奇数的话,a[i]可以定义为int,你的cq也是int的,a[i]定义为float根本就无用。

其它就是上面讲到的,和;了。

for(i=0,i<n,i++)
for(i=0,i<n,i++)
其中的“,”应该是“;”哦!

你把编译结果给我看一下,还要说明你想要的目的
首先n要付个初值,因为a[n]中的n值应该为一个定量

#include<stdio.h>
void main()
{
int i,n ,cq=1;
float a[n];
//scanf("%d",/n);
for(i=0,i<n,i++)
scanf("%f",&a[i]);
for(i=0,i<n,i++)
if(a[i]%2==0)
cq*=a[i];
else continue;
printf("%f\n",cq);
}