C语言程序出错error C2109、error C2102、error C2064 如何修改?0
brave_ice2016.10.14浏览56次分享举报
错误: cpp(18) : error C2109: subscript requires array or pointer type cpp(18) : error C2102: '&' requires l-value cpp(19) : error C2064: term does not evaluate to a function 代码: #include #include using namesp... 错误:
cpp(18) : error C2109: subscript requires array or pointer type
cpp(18) : error C2102: '&' requires l-value
cpp(19) : error C2064: term does not evaluate to a function
代码:
#include
#include
using namespace std;
#define M 10
int x[][3];
int n;
int a[M];
int t,k,l;
int i,f,j;
int main()
{
printf("请输入培养皿数\n");
scanf("%d",&n);
printf("请分别输入n个培养皿的相关数据\n");
for(i=0;i
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
f(a,n);
return 0;
for(i=0;i
a[i]=(x[i][2]/x[i][1]);
for(i=0;i
if(a[i]
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
k=x[i][0];
x[i][0]=x[i+1][0];
x[i+1][0]=k;
}
l=0; //计数
for(i=0;i
{
if(a[i]/a[i+1]<10)
l++;
else
break;
}
printf("A亚种培养皿数量:%d\n",l+1);
for(i=l;i>=0;i--) //按照题目要求,分别按照升序输出
printf("%d\n",x[i][0]);
printf("B亚种培养皿数量:%d\n",M-l-1);
for(i=M-1;i>=l+1;i--)
printf("%d\n",x[i][0]);
return 0;
}
描述
有一种细菌分为A、B两个亚种,它们的外在特征几乎完全相同,仅仅在繁殖能力上有显著差别,A亚种繁殖能力非常强,B亚种的繁殖能力很弱。在一次为时一个 小时的细菌繁殖实验中,实验员由于疏忽把细菌培养皿搞乱了,请你编写一个程序,根据实验结果,把两个亚种的培养皿重新分成两组。
输入
输入有多行,第一行为整数n(n≤100),表示有n个培养皿。
其余n行,每行有三个整数,分别代表培养皿编号,试验前细菌数量,试验后细菌数量。
输出
输出有多行:
第一行输出A亚种培养皿的数量,其后每行输出A亚种培养皿的编号,按繁殖率升序排列。
然后一行输出B亚种培养皿的数量,其后每行输出B亚种培养皿的编号,也按繁殖率升序排列。
样例输入
5
1 10 3456
2 10 5644
3 10 4566
4 20 234
5 20 232
样例输出
3
1
3
2
2
5
4 展开