wafakf 2021-01-16 17:22 采纳率: 100%
浏览 2244
已采纳

为什么我C语言的自定义函数被直接跳过不执行了?

#include<stdio.h>
void sx(int i,int B,int S,int G,int a[])
{    
for(i=0;i<999;i++){
        B=a[i]/100;
        S=a[i]/10%10;
        G=a[i]%10;
        if(a[i]==(B*B*B+S*S*S+G*G*G)&&B!=0){
            printf("三位数的水仙花数是: %d \n",a[i] );
            
        }
    }
}
int main()
{
    int i=0,n=1,B,S,G;
    int a[999]={0};
    for(i=0;i<999;i++){
        a[i]=n;
        n++;
    }
    void sx(int i,int B,int S,int G,int a[]);
    
    return 0;
    
}

  • 写回答

3条回答 默认 最新

  • 云中小筑 2021-01-16 17:39
    关注

    两个问题:

    1、2处的写法根本不是调用函数,纯粹就是个函数声明。

    2、执行完1处的for循环后,i的值已经是999了。

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 vb6.0+webbrowser无法加载某个网页求解
  • ¥15 RPA财务机器人采购付款流程
  • ¥15 计算机图形多边形及三次样条曲线绘制
  • ¥15 根据protues画的图用keil写程序
  • ¥200 如何使用postGis实现最短领规划?
  • ¥15 pyinstaller打包错误
  • ¥20 cesm的气溶胶排放文件
  • ¥15 逐月累计,月份不连续,补齐月份
  • ¥15 应用简单的Python代码完成一个学生成绩管理系统
  • ¥15 用matlab求微分方程初值问题