#include
#include
int main(void)
{
int *p=NULL,*q=NULL,n,i,j,sum1,sum2; //p改成小写的,下边用到的都是小写的啊
printf("please enter array size:");
scanf("%d",&n); //输入学生人数
p=(int*)malloc(n*sizeof(int));
q=(int*)malloc(n*sizeof(int));//向系统申请一段连续的存储空间
if(p==NULL)
{
printf("no enough memory!\n");
exit(0);
}
printf("please enter the score1:"); //输入第一门课程的成绩
for(i=0;i
scanf("%d",p+i);
}
sum1=0; //累计变量sum1付初值
for(i=0;i
sum1=sum1+*(p+i);
}
if(q==NULL)
{
printf("no enough memory!\n");
exit(0);
}
printf("please enter the score2:"); //输入第二门课程的成绩
for(j=0;j
scanf("%d",q+j);
}
sum2=0; //累计变量sum2付初值
for(j=0;j
sum2=sum2+*(q+j);
}
printf("aver1=%d\naver2=%d",sum1/n,sum2/n); //打印出两门课程的平均分
free(p);
free(q); //释放存储空间
return 0; //函数需要一个int类型的返回值
}
#include"stdafx.h"
#include
#include
int main(void)
{
int *p,*q,n,i,j,sum1,sum2;
printf("please enter array size:");
scanf("%d",&n); //输入学生人数
p=(int*)malloc(n*sizeof(int));
q=(int*)malloc(n*sizeof(int));//向系统申请一段连续的存储空间
if(p==NULL)
{
printf("no enough memory!\n");
exit(0);
}
printf("please enter the score1:"); //输入第一门课程的成绩
for(i=0;i
scanf("%d",p+i);
}
sum1=0; //累计变量sum1付初值
for(i=0;i
sum1=sum1+*(p+i);
}
if(q==NULL)
{
printf("no enough memory!\n");
exit(0);
}
printf("please enter the score2:"); //输入第二门课程的成绩
for(j=0;j
scanf("%d",q+j);
}
sum2=0; //累计变量sum2付初值
for(j=0;j
sum2=sum2+*(q+j);
}
printf("aver1=%d\naver2=%d",sum1/n,sum2/n); //打印出两门课程的平均分
free(p);
free(q); //释放存储空间
}
这就对了
你定义的p是大写
你下面的都是小写
int *P=NULL,*q=NULL,n,i,j,sum1,sum2;
这里定义的是大写的P;
p=(int*)malloc(n*sizeof(int));
这里申请的是小写的p;
所以会有C:\Documents and Settings\Administrator\桌面\{lie}7-13.c(9) : error C2065: 'p' : undeclared identifier
的错误。
下面的错误都是它引起的所以改这个就行了。
#include
#include
int main(void)
{
int *P=NULL,*q=NULL,n,i,j,sum1,sum2; //所有错误就在这里,也是唯一的错误,注意p应该是小写不是大写