A-A+

请编写一个函数proc 它的功能是:求出1~m(含m) 能被7或11整除的所有整数放在数组a

2022-08-05 21:47:45 问答库 阅读 172 次

问题详情

请编写一个函数proc,它的功能是:求出1~m(含m) 能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。 例如,若传给m的值为70,则程序输出: 7 11 14 21 22 28 33 35 42 44 49 55 56 63 66 70 注意:部分源程序给出如下。 请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填人所编写的若干语句。 试题程序: include<stdlib.h> include<conio.h> include<stdio.h> define N 100 void proc(int m,int*a,int*n) {
} void main { int arr[N],n,k; system("CLS"); proc(70,arr,&n); for(k=0;k<n;k++) if((k+1)%20==0)//每行输出20个数 { printf("%4d",arr[k]); printf("\n"); } else printf("%4d",arr[k]); printf("\n"); } 请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:

void proc(int m,int*a,int*n)
{
int i,j=0;
for(i=1;i<=m;i++)//进行m次循环
if(i%7==0||i%11==0)//能被7或11整除的所有整数
a[j++]=i;//符合条件的数放在数组a中
*n=j;//返回这些数的个数
}
【解析】本题需要先判断1~m每一个整数能否被7或11整除,然后将符合条件的整数放在数组a中,最后将符合条件的数的个数通过形参n返回主函数。

考点:整数,数组