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

为什么我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 jetson nano
  • ¥15 :app:debugCompileClasspath'.
  • ¥15 windows c++内嵌qt出现数据转换问题。
  • ¥20 公众号如何实现点击超链接后自动发送文字
  • ¥15 用php隐藏类名和增加类名
  • ¥15 算法设计与分析课程的提问
  • ¥15 用MATLAB汇总拟合图
  • ¥15 智能除草机器人方案设计
  • ¥15 对接wps协作接口实现消息发送
  • ¥15 SQLite 出现“Database is locked” 如何解决?