請(qǐng)編寫(xiě)一個(gè)函數(shù)proc,它的功能是:求出1~m(含m) 能被7或11整除的所有整數(shù)放在數(shù)組a中,通過(guò)n返回這
請(qǐng)編寫(xiě)一個(gè)函數(shù)proc,它的功能是:求出1~m(含m) 能被7或11整除的所有整數(shù)放在數(shù)組a中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。 例如,若傳給m的值為70,則程序輸出: 7 11 14 21 22 28 33 35 42 44 49 55 56 63 66 70 注意:部分源程序給出如下。 請(qǐng)勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號(hào)中填人所編寫(xiě)的若干語(yǔ)句。 試題程序: 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個(gè)數(shù) { 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++)//進(jìn)行m次循環(huán)if(i%7==0||i%11==0)//能被7或11整除的所有整數(shù)a[j++]=i;//符合條件的數(shù)放在數(shù)組a中*n=j;//返回這些數(shù)的個(gè)數(shù)}【解析】本題需要先判斷1~m每一個(gè)整數(shù)能否被7或11整除,然后將符合條件的整數(shù)放在數(shù)組a中,最后將符合條件的數(shù)的個(gè)數(shù)通過(guò)形參n返回主函數(shù)。
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢(xún)相關(guān)領(lǐng)域?qū)I(yè)人士。