| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1671 人关注过本帖
标题:菜鸟问问题~~~数组输入,中途退出
只看楼主 加入收藏
lxlx825
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-10-8
收藏
 问题点数:0 回复次数:24 
菜鸟问问题~~~数组输入,中途退出
#include<iostream>
using namespace std;

char name[10][80];
char phone[10][20];
float hours[10];
float wage[10];

int menu();
void enter(),report();

int main()
{
    int choice;
    do{
        choice=menu();
        switch(choice) {
        case 0:break;
        case 1:enter();
            break;
        case 2:report();
            break;
        default:cout<<"try again.\n";
        }
    }while(choice!=0);
    return 0;
}
int menu()
{
    int choice;
    cout<<"0.quit\n";
    cout<<"1.enter information\n";
    cout<<"2.report information\n";
    cout<<"\nchoose one:";
    cin>>choice;
    return choice;
}
void enter()
{
    int i;
[bo]    char temp[80];[/bo]
    for(i=0;i<10;i++)
    {
        cout<<"enter last name:";
        cin>>name[i];
        [bo]if(!name[i]) break;[/bo]
        cout<<"enter phone number:";
        cin>>phone[i];
        cout<<"enter number of hours worked:";
        cin>>hours[i];
        cout<<"enter wage:";
        cin>>wage[i];
        
    }
}
void report()
{
    int i;
    for(i=0;i<10;i++)
    {
        cout<<name[i]<<' '<<phone[i]<<'\n';
        cout<<"pay for the week:"<<wage[i]*hours[i]<<'\n';
    }
}
两个问题:
1,定义temp【80】是干什么的
2,不加if(!name[i]) break;语句时的原程序要连续输入10组数据,我想在直接输入回车后就退出输入了,要加什么语句?
谢谢各位高手
搜索更多相关主题的帖子: 输入 
2008-10-14 17:30
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
回答:
1,不知道temp[80]是干什么的,你为什么写上去? 你从别人那copy的吧,这个至少目前用不着..
2,本来就是要输入10组数据的,你干嘛非得break;
要是只是为了方便调试一下结果的话,你就在工资输入完后,也就是cin>>wage[i];后面直接写break;就行...

2008-10-14 17:56
kakaqq
Rank: 1
等 级:新手上路
威 望:1
帖 子:48
专家分:0
注 册:2008-10-7
收藏
得分:0 
居然被看穿了···楼猪很···郁闷吧
2008-10-14 19:23
lxlx825
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-10-8
收藏
得分:0 
[bo][un]blueboy82006[/un] 在 2008-10-14 17:56 的发言:[/bo]

回答:
1,不知道temp[80]是干什么的,你为什么写上去? 你从别人那copy的吧,这个至少目前用不着..
2,本来就是要输入10组数据的,你干嘛非得break;
要是只是为了方便调试一下结果的话,你就在工资输入完后,也就是 ...


第一,我从来没说过是我自己写的
第二,我问的问题是我不懂,您也没告诉我一个答案
第三,如果程序是在不清楚多少组输入的情况下写的,那么当时暂时定为10组,现在我只有七个输入,难道要回去改程序么?怎么就不能加这个功能?
版主如果都这么回答问题,那我也不用问了。。。。。。。谢谢

为比盖茨挣得多而奋斗
2008-10-15 09:31
冰烨
Rank: 1
来 自:不咔界
等 级:新手上路
威 望:1
帖 子:135
专家分:0
注 册:2007-10-30
收藏
得分:0 
[bo][un]lxlx825[/un] 在 2008-10-15 09:31 的发言:[/bo]



第一,我从来没说过是我自己写的
第二,我问的问题是我不懂,您也没告诉我一个答案
第三,如果程序是在不清楚多少组输入的情况下写的,那么当时暂时定为10组,现在我只有七个输入,难道要回去改程序么?怎么 ...

楼主先不要激动。。。
我帮你看看。

temp[80]问题我也不明白为什么要定义这个
如果程序是在不清楚多少组输入的情况下写的,那么当时暂时定为10组,现在我只有七个输入,难道要回去改程序
这个问题嘛。。 if(!name[i]) break;的意思是当输入的名字为空时便结束如果想在输入回车结束就这样试试吧
if(name[i] == '\n')break;

要么死去,要么奋斗!
2008-10-15 09:45
lxlx825
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-10-8
收藏
得分:0 
[bo][un]冰烨[/un] 在 2008-10-15 09:45 的发言:[/bo]


楼主先不要激动。。。
我帮你看看。

temp[80]问题我也不明白为什么要定义这个
如果程序是在不清楚多少组输入的情况下写的,那么当时暂时定为10组,现在我只有七个输入,难道要回去改程序
这个问题嘛。。 if( ...

首先强烈感谢冰烨同志的革命友情
刚才加进去试了下,报两个错
C:\Program Files\Microsoft Visual Studio\MyProjects\11\113.cpp(47) : error C2446: '==' : no conversion from 'int' to 'char *'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
C:\Program Files\Microsoft Visual Studio\MyProjects\11\113.cpp(47) : error C2040: '==' : 'char [80]' differs in levels of indirection from 'int'
Error executing cl.exe.
我把语句改成if((char)name[i]=='\n') break;不报错了,不过还是不能退出。。。。。

为比盖茨挣得多而奋斗
2008-10-15 09:54
冰烨
Rank: 1
来 自:不咔界
等 级:新手上路
威 望:1
帖 子:135
专家分:0
注 册:2007-10-30
收藏
得分:0 
if(name[i][0] == '\n')break;再试试。。不好意思
name[i]可以理解成一个指针。。不能用==

要么死去,要么奋斗!
2008-10-15 09:58
lxlx825
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-10-8
收藏
得分:0 
还是不行。。。。。

为比盖茨挣得多而奋斗
2008-10-15 10:03
冰烨
Rank: 1
来 自:不咔界
等 级:新手上路
威 望:1
帖 子:135
专家分:0
注 册:2007-10-30
收藏
得分:0 
[bo][un]lxlx825[/un] 在 2008-10-15 10:03 的发言:[/bo]

还是不行。。。。。

你所说的退出是怎么回事呢?

要么死去,要么奋斗!
2008-10-15 10:04
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
对于你1楼的提问,我想我已经给出你答案了...
至于你4楼的想法,那是你自己的心理问题...我很无奈...
还有
如果程序是在不清楚多少组输入的情况下写的,那么当时暂时定为10组,现在我只有七个输入,难道要回去改程序么?怎么就不能加这个功能?

既然这样,你为什么一开始不把问题描述清楚呢...是你自己表达能力的问题
我想在直接输入回车后就退出输入了,要加什么语句?

你前后两次说的意思也差太大了吧...

2008-10-15 10:08
快速回复:菜鸟问问题~~~数组输入,中途退出
数据加载中...
 
   



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

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