#define add(x,y,z) { \\
x< main(int argc,char argv[]) { int a=10,b=5,t; switch(argv[1][0]) { case’1’:t=add(a,b,1); case’2’:t=add(a,b,2); default:break; } } 5.3 阅读下列程序或函数说明和C代码,将应填入---(n)处的字句写在答题纸的对应栏内 [程序说明] 本程序中的函数factor(m,fac,cp)用来计算正数m(m>2)的除自身以外的所有不同因子的和。该函数返回因子和,并把各因子从小到大依次存放在数组fac中,其因子个数存入在cp所指的变量中。 例如 m=16,求得的因子为 (1,2,4,8) 因子和为15,因子个数为4。 程序假定正整数m的不同因子个数不会超过100个。 [程序] #include #define N 100 long factor(int m,int fac[],int*cp) { int c1,c2,i,k; long s; fac[0]=1; for(c1=s=1,c2=N-1, i= 2 ;;) { k=m/i; if( m%i == 0 ) if( i fac[c1++]=i ; fac[c2--]=k; s+=i; } i++; if(i>k)break; } for(c2++; c2<=N-1; c2++) { fac[c1++] = fac[c2]; s +=fac[c2]; } cp=c1; return s } ; 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Linux C 面试题(5)在线全文阅读。
相关推荐: