| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2695 人关注过本帖
标题:报错 error C2065: 'shuixianhua' : undeclared identifier
只看楼主 加入收藏
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
结帖率:70%
收藏
已结贴  问题点数:30 回复次数:17 
报错 error C2065: 'shuixianhua' : undeclared identifier
题目:编写一个判断整数是否为水仙花数的函数,在主函数输入一个整数,输出该数是否是水仙花数的信息
 


报错  error C2065: 'shuixianhua' : undeclared identifier  是为什么啊?是水仙花数有什么专有英文缩写吗?
  



#include <stdio.h>
int fnshuixianhua (int i)
{
    int bai,shi,ge;      //bai、shi、ge分别对应百位、十位、个位
        bai=i/100;
        shi=(i%100)/10;
        ge=i%10;
        if(i==bai*bai*bai+shi*shi*shi+ge*ge*ge)
            return 1;
        else
            return 0;

}
void main()
{
    int x,flag;
    printf("输入整数:x");
    scanf("%d",&x);
    for(x=100;x<=999;x++)
    {   
        flag=shuixianhua(x);
        if(flag==1)
           printf("%d是一个水仙花数!\n",x);
        else
           printf("%d不是一个水仙花数!\n",x);}
}
搜索更多相关主题的帖子: 报错 C2065 undeclared 水仙花数 int 
2018-05-29 22:33
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:5 
        flag=shuixianhua(x);

什么是 shuixianhua

https://zh.
2018-05-29 22:34
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
收藏
得分:0 
回复 2楼 lin5161678
水仙花数
2018-05-29 22:40
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
收藏
得分:20 
回复 楼主 浅墨初白
#include <stdio.h>
int shuixianhua (int i)//你写的fnshuixianhua
{
    int bai,shi,ge;      //bai、shi、ge分别对应百位、十位、个位
        bai=i/100;
        shi=(i%100)/10;
        ge=i%10;
        if(i==bai*bai*bai+shi*shi*shi+ge*ge*ge)
            return 1;
        else
            return 0;

}
void main()
{
    int x,flag;
    printf("输入整数:x");
    scanf("%d",&x);
    for(x=100;x<=999;x++)
    {   
        flag=shuixianhua(x);
        if(flag==1)
           printf("%d是一个水仙花数!\n",x);
        else
           printf("%d不是一个水仙花数!\n",x);}
}

名字写错了。
2018-05-29 22:41
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
收藏
得分:0 
回复 4楼 花脸
不用加fn吗,emmmmn,我们老师讲的要加啊?可以问下为什么吗?
 去了fn,就不报错了。
2018-05-30 10:12
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
收藏
得分:0 
回复 4楼 花脸
还有 我想问下,我输入一个整数,怎么100到999的数是不是水仙花数全出来了
    /笑哭/    我做的不是判断一个整数是不是水仙花数吗?怎么成了列举是不是水仙花数?
2018-05-30 10:20
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
收藏
得分:5 
给你个参考:
程序代码:
#include "stdio.h"
#include "conio.h"
main()
{
  int i,j,k,n;
  printf("水仙花数有:");
  for(n=100;n<1000;n++)
     {
       i=n/100;/*分解出百位*/
       j=n/10%10;/*分解出十位*/
       k=n%10;/*分解出个位*/
       if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
       printf("%-5d",n);
     }
  getch();
}

这是最简单的了。
2018-05-30 10:29
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
收藏
得分:0 
回复 4楼 花脸
printf("%d是一个水仙花数!\n",x);你把这x删了就输不出水仙花数了。
2018-05-30 12:45
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
收藏
得分:0 
回复 8楼 花脸
#include <stdio.h>
int shuixianhua (int i)
{
    int bai,shi,ge;      //bai、shi、ge分别对应百位、十位、个位
        bai=i/100;
        shi=(i%100)/10;
        ge=i%10;
        if(i==bai*bai*bai+shi*shi*shi+ge*ge*ge)
            return 1;
        else
            return 0;

}
void main()
{
    int x,flag;
    printf("输入整数:x");
    scanf("%d",&x);
    for(x=100;x<=999;x++)
    {   
        flag=shuixianhua(x);
        if(flag==1)
           printf("x是一个水仙花数!\n");
        else
           printf("x不是一个水仙花数!\n");
    }
}
改成这样了

但是。有两个问题,一个是出现了很多次x不是水仙花数,第二个是执行不对。。/笑哭/,我把153、370输进去说不是水仙花数
2018-05-30 22:37
浅墨初白
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-3-29
收藏
得分:0 
回复 7楼 自学的数学
/笑哭/   我好多都不认识
2018-05-30 22:38
快速回复:报错 error C2065: 'shuixianhua' : undeclared identifier
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022722 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved