以下程序的输出结果是unsigned fun6(unsigned num){ unsigned k=1; do{k *=num%10;num/=10;} w

计算机 程序 已帮助 人

以下程序的输出结果是unsigned fun6(unsigned num){ unsigned k=1; do{k *=num%10;num/=10;} while (num); return k;}main(){ unsigned n=26; printf("%d\n", fun6(n));}

热搜:下面程序的功能是输出数组s中最大元素

答案解析

难度★★☆ 搜索
  • 参考答案:12在本题中,程序首先定义了一个返回类型为无符号型的函数fun6,函数带有一个无符号型的变量num。在主函数中,首先定义一个无符号型的变量n,并初始化为26,然后执行输出语句,从输出语句的输出格式我们可以知道输出的是一个整数,从输出语句的输出列表我们可以知道,输出的是fun6函数的返回值,即调用fun6函数,其传递的参数是26。在fun6函数中,首先定义一个变量k,并初始化为1,然后执行do…while循环,循环结束的条件为形参变量num的值为0。第一次循环时,k *=num%10等于k=k*(num%10)=1*6=6,然后num的值被改变为26/10=2,由于此时num的值仍大于0,进行第二次循环。第二次循环时,变量k的值为6*(2%10)=12,然后num的值被改变为2/10=0,此时由于num的值为0,循环结束。然后返回变量k的值并输出。因此,程序最后的输出结果是12。