自考“高级语言程序设计”习题答案详解(36)_工学-查字典自考网
 
请输入您要查询的关键词
  查字典自考网 >> 工学 >> 自考“高级语言程序设计”习题答案详解(36)

自考“高级语言程序设计”习题答案详解(36)

发布时间: 2016-06-29 来源:查字典自考网

7.函数my_cmp()的功能是比较字符串s和t的大小,当S等于t时返回0,否则返回s和t的第一个不同字符的ASCII码差值,即st时返回正值,当s<T时返回负值。请填空。

my_cmp( char *s, char * t)

{while(*s==* t)

{ if(*s==‘’) return 0 ;

++s;++t;

}

return____________;

}

「解」两字符串大小比较必须从它们的首字符开始,在对应字将相等情况下循环,直至不相等结束。相等时,老字符率已到了字符串的结束标记符,则两字符率相同,函数退回0值;如还有后继字符,则准备比较下一对字符。对应字符不相同,循环结束。循环结束时,就以两个当前字符的差返回。所以在空框处应填入*s-*t,保证在st时返回正值,当s<T时返回负值。

6.3 程序分析题

1.阅读函数,写出函数的主要功能:

ch(int *p1,int *p2)

{ int p;

if(*pl*p2) { p=* pl;*pl=*p2;* p2=p; }

}

「解」函数办有两个指针形参p1和p2,函数体通过*pl和*p2间接引用它们所指变量。当pl所指变量的位大于p2所指变量的值时,交换两形参所指变量的值。所以函数的功能当形参1所指变量比形参2所指变量的值大时,交换这两个变量的值。调用该函数能保证形参1所指变量的值不大于形参2所指变量的值。

2.阅读函数,写出函数的主要功能:

float av(a,n)

float a[];

int n;

{ int i; float s;

for(i=0,s= 0;i<N;I++) S=S+A[I];

return s/n;

}

「解」函数有一个数组形参a和一个整型形参n.函数首先用循环求数组a的前n个元素和,然后将和除以n.即求数组元素的平均值。

3.阅读下面程序,写出运算结果。

unsigned fun6( unsigned num)

{ unsigned k=l;

do { k*= num;num/=10;}

while(n) ;

return k;

}

main()

{ unsigned n=26;

printf(“%dn”, fun6(n));

}

「解」函数有一个形参num,循环前变量 k置 1,循环中,表达式num是取num的个位,将num的个位值累乘于k中,然后num除以10.循环直至num为0结束,这是逐一求出num十进制表示的各位数字,并累乘于变量k的循环。函数最后返回k.函数fun6的功能是求整数的各位十进数字积。所以程序输出12.

点击显示
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读

当前热点关注

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • [相关地区]