| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 501 人关注过本帖
标题:c程序由变量换成指针变量,编译没错,但是运行出错,请问为什么,??下面是 ...
只看楼主 加入收藏
s15690892361
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-9-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
c程序由变量换成指针变量,编译没错,但是运行出错,请问为什么,??下面是源程序
#include<stdio.h>
main()
{ int year,month,date,hour,minute,second,day[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  printf("请输入时间:");
  scanf("%d%d%d%d%d%d",&year,&month,&date,&hour,&minute,&second);
  if(year%400==0||year%100!=0&&year%4==0)
     day[1]=29;
 if(year>=0&&month>=1&&month<=12&&date>=1&&date<=day[month-1]&&hour>=0&&hour<=23&&minute>=0&&minute<=59&&second>=0&&second<=59)
 {   second+=1;   
    if(second==60)
     {second=0;
      minute+=1;}
    if(minute==60)
    {minute=0;
    hour+=1;}
    if(hour==24)
    {hour=0;
    date+=1;}
    if(date>day[month-1])
    {date=1;
    month+=1;}
    if(month==13)
    {month=1;
    year+=1;}
    printf("%d年%d月%d日%d时%d分%d秒\n",year,month,date,hour,minute,second);
 }
else
printf("输入错误");
}
这个运行成功出结果,

#include<stdio.h>
main()
{ int *year,*month,*date,*hour,*minute,*second,day[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  printf("请输入时间:");
  scanf("%d%d%d%d%d%d",year,month,date,hour,minute,second);
  if(*year%400==0||*year%100!=0&&*year%4==0)
     day[1]=29;
 if(*year>=0&&*month>=1&&*month<=12&&*date>=1&&*date<=day[*month-1]&&*hour>=0&&*hour<=23&&*minute>=0&&*minute<=59&&*second>=0&&*second<=59)
 {   *second+=1;   
    if(*second==60)
     {*second=0;
      *minute+=1;}
    if(*minute==60)
    {*minute=0;
    *hour+=1;}
    if(*hour==24)
    {*hour=0;
    *date+=1;}
    if(*date>day[*month-1])
    {*date=1;
    *month+=1;}
    if(*month==13)
    {*month=1;
    *year+=1;}
    printf("%d年%d月%d日%d时%d分%d秒",*year,*month,*date,*hour,*minute,*second);
 }
else
printf("输入错误");
}
这个运行出错,请问问题在哪?
2015-09-02 21:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你觉得可能错的哪里?作这种转换的依据是什么?

授人以渔,不授人以鱼。
2015-09-02 23:38
s15690892361
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-9-2
收藏
得分:0 
回复 2楼 TonyDeng
不知道呀,就是想用指针做出来,
2015-09-03 09:33
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
不知道或未学到,就不要用,而且你的这个程序也不需要用到指针,硬用祗能体现这是拙劣代码,人家当这程序猿是疯的。

[ 本帖最后由 TonyDeng 于 2015-9-3 10:26 编辑 ]

授人以渔,不授人以鱼。
2015-09-03 10:25
s15690892361
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-9-2
收藏
得分:0 
回复 4楼 TonyDeng
才学就是这样,要多加练习,同样一个问题要用多种方法去解决,多写,多敲,只有到一定程度才开始用最简单代码去写程序,我只是才开始
2015-09-03 15:55
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:20 
又是一个不服气的,让别人教你吧。

授人以渔,不授人以鱼。
2015-09-03 15:56
s15690892361
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-9-2
收藏
得分:0 
回复 6楼 TonyDeng
好的,,谢谢,我只是想搞明白这个为什么错了,想对指针加深理解
2015-09-03 16:05
快速回复:c程序由变量换成指针变量,编译没错,但是运行出错,请问为什么,?? ...
数据加载中...
 
   



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

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