| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 332 人关注过本帖
标题:输入返回问题
只看楼主 加入收藏
linkang1024
Rank: 2
等 级:论坛游民
帖 子:90
专家分:83
注 册:2011-10-10
结帖率:70.83%
收藏
已结贴  问题点数:20 回复次数:7 
输入返回问题
#include<stdio.h>
#include<stdlib.h>
struct
{
    int day;
    int month;
    int year;
}Date;
int main()
{
    int days;
    printf("请输入年、月、日:");
    scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
    if(Date.day>31)
    {
        printf("输入有误,请再次输入:");
        scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
    }
    switch(Date.month)
    {
    case 1: days=Date.day; break;
    case 2: days=Date.day+31; break;
.................................
    printf("请输入年、月、日:");
    scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
    if(Date.day>31)
    {
        printf("输入有误,请再次输入:");
        scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
我想在输错时直接返回第一次输入那   应该怎样写呢?
搜索更多相关主题的帖子: include 
2012-05-10 00:21
lc5491137
Rank: 2
等 级:论坛游民
帖 子:37
专家分:70
注 册:2012-3-5
收藏
得分:7 
可以利用goto函数
first:printf("请输入年、月、日:");
scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
if(Date.day>31)
{
     printf("输入有误,请再次输入:");
     goto:first;
}
2012-05-10 00:41
ln6265431
Rank: 5Rank: 5
等 级:职业侠客
帖 子:66
专家分:325
注 册:2012-3-29
收藏
得分:7 
leap: printf("请输入年、月、日:");
    scanf("%d %d%d",&Date.year,&Date.month,&Date.day);
   
 if(Date.day>31)
   
{
      
  printf("输入有误,请再次输入:");
     
goto leap;
2012-05-10 09:18
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:7 
为什么需要使用goto呢?

授人以渔,不授人以鱼。
2012-05-10 14:24
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
回复 4楼 TonyDeng
呵呵,因为它长得可爱,可以让初学者的思维倒处乱飞。。。

我们都在路上。。。。。
2012-05-10 14:59
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用hellovfp在2012-5-10 14:59:52的发言:

呵呵,因为它长得可爱,可以让初学者的思维倒处乱飞。。。

我发觉这里很多新手都不注重结构化的学习,一旦学到点什么知识,马上就去钻算法、数据结构,从来不关心程序该怎么编排、拆解组合函数、模块化、封装之类真正编程的东西。这也叫学编程?我甚感怀疑,难道现在学校都这样教的?

授人以渔,不授人以鱼。
2012-05-10 15:14
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
以下是引用TonyDeng在2012-5-10 15:14:02的发言:


我发觉这里很多新手都不注重结构化的学习,一旦学到点什么知识,马上就去钻算法、数据结构,从来不关心程序该怎么编排、拆解组合函数、模块化、封装之类真正编程的东西。这也叫学编程?我甚感怀疑,难道现在学校都这样教的?

你说的对,现在的教育,唉,我还真想不到用什么词形容

总有那身价贱的人给作业贴回复完整的代码
2012-05-10 19:05
小糊涂神c30
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:198
专家分:809
注 册:2012-4-25
收藏
得分:0 
用while循环:
while(1)
{
    if(Dat.day>31)
    {
        printf("输入有误,请再次输入:");
        scanf("%d %d%d",&Date.year,&Date.month,&Date.day);
    }     
    else
    break;
}
2012-05-11 09:06
快速回复:输入返回问题
数据加载中...
 
   



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

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