Linux C 面试题(5)

2025-07-07

#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 }

;


Linux C 面试题(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:DY3E系列三相混合式步进电机驱动器使用手册(EV1.3)

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219