| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 572 人关注过本帖
标题:本人小菜 , 遇到一个问题不知道怎么解决
只看楼主 加入收藏
疯子、
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-10-27
结帖率:0
收藏
已结贴  问题点数:20 回复次数:7 
本人小菜 , 遇到一个问题不知道怎么解决
它不报错和报警告,但是编译运行的时候就会停止程序  然后就不正常没有程序的功能了 下面是代码和提示#include <stdio.h>
void main()
{

int year,leap;
scanf("%d",year);
   if (year%4==0)
   {
       if (year%100==0)
       {
           if (year%400==0)
           {
                 leap=1;      
           }
           else
           {
                 leap=0;
           }
        }
        else
        {
             leap=1;
        }
    }
    else{
           leap=0;
        }
   if (leap)
   {
       printf("%d is",year);
   }
   else
   {
      printf("%d is not",year);
   }
   printf("a lerp \n");
  
}
提示  --------------------Configuration: wanwan - Win32 Debug--------------------
Compiling...
if.c
F:\C语言截图\wanwan\if.c(6) : warning C4700: local variable 'year' used without having been initialized

if.obj - 0 error(s), 0 warning(s)

搜索更多相关主题的帖子: include 小菜 
2013-10-27 19:26
那个人
Rank: 2
等 级:论坛游民
帖 子:20
专家分:32
注 册:2013-1-25
收藏
得分:3 
你的scanf函数,应该是scanf("%d",&year)
2013-10-27 19:34
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:3 
回复 2楼 那个人
没错
2013-10-27 20:18
左手拉一只猫
Rank: 4
来 自:杭州
等 级:业余侠客
帖 子:70
专家分:250
注 册:2013-10-27
收藏
得分:3 
scanf("%d",&year);  year前面少了一个&,这里确实很容易用错,C++有了输入输出流,这种错误基本上消失了。。。。。
没有&year的话你并没有把输入赋给变量year,而是赋给一个未知地址的变量,所以会有local variable 'year' used without having been initialized(本地变量year在使用之前为初始化的警告!) 求给分!

我能帮你的只能到这里了。。。
2013-10-27 20:54
a2403044721
Rank: 1
等 级:新手上路
帖 子:4
专家分:7
注 册:2013-10-27
收藏
得分:3 
最后一个if不需要判定一下leap吗?
2013-10-27 21:22
HeyGuys
Rank: 2
等 级:论坛游民
帖 子:8
专家分:13
注 册:2013-10-28
收藏
得分:3 
你把报错仔细看看。是说你变量没有初始化。
2013-10-28 21:11
chenwei435
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:322
专家分:1611
注 册:2010-11-28
收藏
得分:3 
可以很简单的写
程序代码:
#include <stdio.h>
void main()
{
int year;
scanf("%d",&year);
if((year%4==0)&&(year%100)||(year%400==0))
    printf("%d is a leap year.\n",year);
else
    printf("%d is not a leap year.\n",year);
}
2013-10-28 21:40
南国神画
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:51
专家分:124
注 册:2013-10-24
收藏
得分:3 
就是scanf("%d",&year)的问题,这个应该是判断是不是闰年的程序。当然初始化一下变量也是必须的,不过主要还是scanf的问题。
2013-10-28 22:27
快速回复:本人小菜 , 遇到一个问题不知道怎么解决
数据加载中...
 
   



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

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