السلام عليكم في الحقيقة انا كتبت برنامج في السي ولكن لا اعرف ما هي الاخطاء
البرنامج يحتوي على ثلاث وظائف الاولى in_list وهي تقارن بين الارقام التي وضعت قبله فاذا كان الرقم مساوي لاي رقم قبله فانها لاتحسبه عند ايجاد المجموع
والوظيفة الثانية هي حساب المجموع والثالثة حساب المتوسط باستدعاء وظيفة المحموع
ويقوم المستخدم بادخال الارقام حتى عشرين و ايضا عندما يكون الادخال EOF
البرنامج
/* nodups.c */
#include <stdio.h>
#define ArraySize 20
/* function */
int in_list(int,int,int[]);
int total(int,int[]);
float average(int,int[]);
int main()
{
int num[ArraySize];
int T[ArraySize];
while(scanf("%d",num[ArraySize])!=EOF)
{
for(i=0;i<20;i++)
{
scanf("%d\n",&num);
printf("%d",num);
in_list(num,num[i-1],T);
}
printf("Total %d\n",total(i,num);
printf("Total %d\n",average(i,num);
}
}
int in_list(int NewV,int OldV,int Value[ArraySize])
{
if(NewV==OldV)
{
return 1;
Value[ArraySize]=Value[ArraySize]-NewV;
}
if(NewV !=OldV)
{
return 0;
Value[ArraySize]=Value[ArraySize]+NewV;
}
}
int total(int a,int b[ArraySize])
{
int a=0;
return b[ArraySize]+=a;
}
float average(int c,int d[ArraySize])
{
return (total(c,d[Arraysize]))/20;
}اتمنا ان احصل على التصحيح في اسرع وقت ممكن وشكرا