#include <stdio.h> #define N 20 int fun(int n,int *a) { int i,j,k,sum; sum=j==0; for(k=3,i=0;i<n;i++,k+=5) { sum=sum+k; if(sum%4=2) a[j++]=sum; } return j; } main() { int a[N],d,n,i; printf("\nEnter n (4<n<=50): ");scanf("%d",&n); d=fun(n,a); printf("\n\nThe result :\n"); for(i=0; i<d; i++)printf("%6d",a[i]);printf("\n\n"); }
if(sum%4==2)少了一个= sum=j=0;这行之前多了一个= 输入n之后传到fun函数,fun函数循环n次,每次判断sum对4求余是否等于2,是放到a数组里,最后返回数组长度,输出
#include <stdio.h>
#define N 20
int fun(int n,int *a)
{
int i,j,k,sum;
sum=j=0;
for(k=3,i=0; i<n; i++,k+=5)
{
sum=sum+k;
if(sum%4==2)
a[j++]=sum;
}
return j;
}
main()
{
int a[N],d,n,i;
printf("\nEnter n (4<n<=50): ");
scanf("%d",&n);
d=fun(n,a);
printf("\n\nThe result :\n");
for(i=0; i<d; i++)
printf("%6d",a[i]);
printf("\n\n");
}