| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 400 人关注过本帖
标题:请高手给我看下我的这个程序 ,那里出错了
只看楼主 加入收藏
瀚海沉浮
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2010-5-31
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
请高手给我看下我的这个程序 ,那里出错了
代码运行到划线那个地方就不能再运行下去了  求高手给我看下 到底那里出错了

#include<stdio.h>
main()
{
int boy_house,boy_car,boy_love,girl_will,year,z;//有房,有车,男孩的爱,女孩愿不愿意,
int boy_money,Feeling;//钱,感情值
int qingren_rose,birthday_rose;  /*情人节男孩送玫瑰玫瑰,生日玫瑰*/
char birthday[15];
printf("你的生日是什么时候 比如说**月**日\n");
scanf("%s",birthday);

printf("do your boyfriend have house: yes “1” no “0”\n ");
scanf("%d",&boy_house);

printf("男孩是否有车?YES“1” NO“0” 然后按回车\n");
scanf("%d",&boy_car);

printf("男孩友是否喜欢你?很喜欢,即使自己长的不好看 输入数字“1”\n\n 很喜欢,但是是因为自己长得漂亮输入数字“2” 一般输入数字“3”不喜欢 然后按回车\n");
scanf("%d\n",&boy_love);

if(boy_house==1&&boy_car==1)
 {
 if(boy_love==1)
 printf("女孩嫁给男孩\n");
 else if (boy_love==2||boy_love==3)
 printf("女孩得三思而后行\n");
 else
 printf("女孩不能嫁给男孩\n");
 }
else ((boy_house==1||boy_car==1)||(boy_house==0&&boy_car==0));
 {
printf("女孩是否愿意等到男孩有房有车 YES “1” NO “0” \n");
scanf("%d\n",&girl_will);
if(girl_will==1)
{
printf("男孩现在有多少钱?\n");
scanf("%d",&boy_money);
printf("女孩对男孩的感情值为?最高值为10");
scanf("%d\n",&Feeling);
if(boy_money>=100000&&Feeling>=8)
printf("尽管男孩没车没房,存钱充足,女孩对男孩感情好,如果女孩不想浪费青春等的话,很有必要考虑嫁给男孩\n");
else if(boy_money<100000||Feeling<8);
{
printf("建议你暂时别急于嫁给男孩\n");
printf("-------------------\n\n\b时间如流水,女孩就这样等了男孩三年\n\n\b\b接下来要对男孩的一些行为调查,来估判女孩继续爱男孩是否值得,并且嫁给她\n");
for(year=1;year<4;year++)
{
printf("*****在第%d年里*****\n",year);
printf("\n\b情人节这天男孩是否送女孩玫瑰?\n");
scanf("%d\n",&qingren_rose);
printf("在%s这个日子,男孩是否给女孩送了玫瑰或者生日礼物 YES “1” NO “0”\n",birthday);
scanf("%d\n",&qingren_rose);
if(qingren_rose==1)
Feeling++;
else
Feeling--;
printf("在情人节这天,男孩是否送女孩玫瑰了 YES“1” NO“0”\n");
scanf("%d\n",&birthday_rose);
if(birthday_rose==1)
Feeling++;
else
Feeling--;
}
printf("当前男孩资金多少\n");
scanf("%d\n",&boy_money);
}
printf("现在男孩是否有车有房 YES“1” NO“0”\n");
scanf("%d\n",&z);
if(z==1&&boy_money>100000&&Feeling>=8)
printf("这几年来男孩对你还是可以,通过努力,也有了一定的物质基础,你可以嫁给他\n");
else if(z==1&&(boy_money>=100000||Feeling>=8))
printf("你可以考虑一下,你自己觉得好就接受他\n");
else if(z==1&&(boy_money<100000&&Feeling<8))
printf("你们感情已经变淡,并且男孩的家产少于十万,女孩另选优秀青年\n");
else if(z==0&&boy_money>100000&&Feeling>=8)
printf("虽然男孩没有使你有车有房,但是对女孩还不错,家产也存了不少,女孩可以考虑嫁给男孩\n");
else
printf("男孩对女孩的物质,精神都不能满足,太平庸,女孩放弃男孩,另选优秀青年\n");
}
else
printf("男孩啊,你怎么这么没出息,又没魅力\n\n\b强烈建议发愤图强,再找一个更好的女孩\n");
}
}
2010-05-31 20:48
瀚海沉浮
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2010-5-31
收藏
得分:0 
这里面有段代码出现错误 在发帖之前
我已经发现忘记改了

具体是:printf("*****在第%d年里*****\n",year);
printf("\n\b情人节这天男孩是否送女孩玫瑰?\n");
scanf("%d\n",&qingren_rose);
if(qingren_rose==1)
Feeling++;
else
Feeling--;
printf("在%s这个日子,男孩是否给女孩送了玫瑰或者生日礼物 YES “1” NO “0”\n",birthday);
scanf("%d\n",&birthday_rose);
if(birthday_rose==1)
Feeling++;
else
Feeling--;
}
2010-05-31 21:00
hanzhenddd
Rank: 5Rank: 5
等 级:职业侠客
帖 子:90
专家分:361
注 册:2010-3-4
收藏
得分:14 
程序代码:
#include<stdio.h>
int main(int argc, char *argv[])       1.//修改成标准C写法 c99
{
    int boy_house,boy_car,boy_love,girl_will,year,z;//有房,有车,男孩的爱,女孩愿不愿意,
    int boy_money,Feeling;//钱,感情值
    int qingren_rose,birthday_rose;  /*情人节男孩送玫瑰玫瑰,生日玫瑰*/
    char birthday[15];
    printf("你的生日是什么时候 比如说**月**日\n");
    scanf("%s",birthday);
    printf("do your boyfriend have house: yes “1” no “0”\n ");
    scanf("%d",&boy_house);
    printf("男孩是否有车?YES“1” NO“0” 然后按回车\n");
    scanf("%d",&boy_car);
    printf("男孩友是否喜欢你?很喜欢,即使自己长的不好看 输入数字“1”\n\n 很喜欢,但是是因为自己长得漂亮输入数字“2” 一般输入数字“3”不喜欢 然后按回车\n");
    scanf("%d\n",&boy_love);
    if(boy_house==1&&boy_car==1)
    {
        if(boy_love==1)
            printf("女孩嫁给男孩\n");
        else if (boy_love==2||boy_love==3)
            printf("女孩得三思而后行\n");
        else
            printf("女孩不能嫁给男孩\n");
    }
//    else ((boy_house==1||boy_car==1)||(boy_house==0&&boy_car==0))  2.逻辑错误else和if判断内容等效
    else
    {
        printf("女孩是否愿意等到男孩有房有车 YES “1” NO “0” \n");
        scanf("%d\n",&girl_will);
        if(girl_will==1)
        {
            printf("男孩现在有多少钱?\n");
            scanf("%d",&boy_money);
            printf("女孩对男孩的感情值为?最高值为10");
            scanf("%d\n",&Feeling);
            if(boy_money>=100000&&Feeling>=8)
                printf("尽管男孩没车没房,存钱充足,女孩对男孩感情好,如果女孩不想浪费青春等的话,很有必要考虑嫁给男孩\n");
            else if(boy_money<100000||Feeling<8);
            {
                printf("建议你暂时别急于嫁给男孩\n");
                printf("-------------------\n\n\b时间如流水,女孩就这样等了男孩三年\n\n\b\b接下来要对男孩的一些行为调查,来估判女孩继续爱男孩是否值得,并且嫁给她\n");
                for(year=1;year<4;year++)
                {
                    printf("*****在第%d年里*****\n",year);
                    printf("\n\b情人节这天男孩是否送女孩玫瑰?\n");
                    scanf("%d\n",&qingren_rose);
                    printf("在%s这个日子,男孩是否给女孩送了玫瑰或者生日礼物 YES “1” NO “0”\n",birthday);
                    scanf("%d\n",&qingren_rose);
                    if(qingren_rose==1)
                        Feeling++;
                    else
                        Feeling--;
                    printf("在情人节这天,男孩是否送女孩玫瑰了 YES“1” NO“0”\n");
                    scanf("%d\n",&birthday_rose);
                    if(birthday_rose==1)
                        Feeling++;
                    else
                        Feeling--;
                }
                printf("当前男孩资金多少\n");
                scanf("%d\n",&boy_money);
            }
            printf("现在男孩是否有车有房 YES“1” NO“0”\n");
            scanf("%d\n",&z);
            if(z==1&&boy_money>100000&&Feeling>=8)
                printf("这几年来男孩对你还是可以,通过努力,也有了一定的物质基础,你可以嫁给他\n");
            else if(z==1&&(boy_money>=100000||Feeling>=8))
                printf("你可以考虑一下,你自己觉得好就接受他\n");
            else if(z==1&&(boy_money<100000&&Feeling<8))
                printf("你们感情已经变淡,并且男孩的家产少于十万,女孩另选优秀青年\n");
            else if(z==0&&boy_money>100000&&Feeling>=8)
                printf("虽然男孩没有使你有车有房,但是对女孩还不错,家产也存了不少,女孩可以考虑嫁给男孩\n");
            else
                printf("男孩对女孩的物质,精神都不能满足,太平庸,女孩放弃男孩,另选优秀青年\n");
        }
        else
            printf("男孩啊,你怎么这么没出息,又没魅力\n\n\b强烈建议发愤图强,再找一个更好的女孩\n");
    }
    return 0;   //增加返回值
}
    目前已经能通过编译,不过else 判断有待修改.
问题是连续scanf会吃回车,可能造成不稳定,可以使用fflus(stdin)来清空 或者 getchar()吃回车,结构太混乱,格式乱 无缩进 空行, 应该用多个.C 和自定义头文件 来实现,主函数只实现调用功能,最差用 函数调用阿!
2010-05-31 22:40
瀚海沉浮
Rank: 1
等 级:新手上路
帖 子:8
专家分:5
注 册:2010-5-31
收藏
得分:0 
哇塞 高手就是高手  thank you very much.
2010-05-31 23:39
快速回复:请高手给我看下我的这个程序 ,那里出错了
数据加载中...
 
   



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

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