• 下列给定程序中,函数proc的功能是计算正整数m 各位上数字的平方和。

    例如,输入498,则输出应该是161。
    请修改程序中的错误,使它能得到正确结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
    试题程序:
    include
    include
    include
    long proc(10ng m)
    {
    //****found****
    long sum=1;
    do
    {
    sum+=(m%10)*(m%10);
    m/=l0;
    //****found****
    }
    while(m)
    return(sum);
    }
    void main
    {
    long n;
    system("CLS");
    printf("Please enter a number:");
    scanf("%1d",&n);
    printf("\n%ld\n",proc(n));
    }

    正确答案:(1)错误:long sum=1;正确:long sum=0;(2)错误:while(m)正确:while(m);【解析】由函数proc可知,变量sum中存放正整数m 的各位上数字的平方和,其初始化为0。因此,“long sum= 1;”应改为“long sum=0;”。按照C语言的语法规则,语句都以分号结束,应在do-while语句最后加上分号。因此,“while(m)”应改为“while(m);”。
  • 2021年07月15日 22时38分来自  问答库 >> 计算机类
  • 评论 0
  • 手机玩微博

    手机版 手机端
    Powered by 日新微博 © 2018 - 2020 日新网