| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 8862 人关注过本帖, 1 人收藏
标题:终于把这个循环弄出来了,发出来,让大家分享我的快乐。
只看楼主 加入收藏
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
[bo]以下是引用 [un]菜鸭[/un] 在 2008-2-3 22:34 的发言:[/bo]

此为讨论技术,不是讨论你的为人,所以我回复你:

    我在用TC,直接输入会导致混乱,因为内存存储数据是连续的,如果直接scanf("%c",&xb);,会导致混乱。

   谢谢你的建议,受教了。 ...

这和内存存储数据是不是连续无关,关键在于,是否跳过空白字符,空白字符就是空格,回车和制表符,只要在%c前面加上任意一个空白字符就可以让scanf跳过空白字符。所以scanf(" %c",&xb); scanf("\n%c",&xb); scanf("\t%c",&xb);都能起到相同的效果
2008-02-05 00:12
awsw911
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-2-27
收藏
得分:0 
就一个不是很难的问题勒!!
怎么引起了这么多斑竹的意见拉!
这说明lz你的水平太差了。
斑竹们的技术真的还可以,虚心点!!
别吵吵的!!
低调点。
2008-02-27 19:05
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
我的似乎比飞燕还长啊………………
顺便测试一下语法高亮……

[font=Courier New]
#include <stdio.h>

#define Measure(msg)      (InputChar(msg"(y/n):",'y','n') == 'y')
#define EmptyBuffer()     while(getchar() != '\n')
#define PrintErr()        puts("您输入的字符有误,请重新输入:")

char InputChar(char* msg,char a1,char a2)
{
    char ch;
    printf(msg);
    EmptyBuffer();
    while (ch=getchar(),ch!=a1 && ch!=a2)
        PrintErr();
    return ch;
}

float InputFloat(char* msg)
{
    float fl;
    puts(msg);
    while (scanf("%f",&fl) != 1)
    {
        EmptyBuffer();
        PrintErr();
    }
    return fl;
}

void Test()
{
    float father,mother,me;
    father=InputFloat("请输入您的父亲身高:");
    mother=InputFloat("请输入您的母亲身高:") ;

    if (InputChar("请输入您的性别,男生m,女生按w:",'m','w') == 'm')
        me=(father+mother)*0.54;
    else
        me=(father*0.923+mother)/2;

    if (Measure("OK,请问您平时喜欢锻炼吗?"))
        me+=me*0.02;
    if (Measure("再请问您平时饮食规律吗?"))
        me+=me*0.15;

    printf("您的未来身高是%f厘米!\n",me);
}

int main()
{
    printf("现在将为您测试一下未来身高,请相信它的科学性!\n ");
    do
    {
        Test();
        puts("**************************************************************\n");
    }
    while (!Measure("退出吗?"));
}


哈哈,成功~~~!

[[it] 本帖最后由 StarWing83 于 2008-3-26 12:27 编辑 [/it]]

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-03-25 19:20
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
顶了~~
呵呵
2008-03-25 22:15
dongfly111
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2008-3-25
收藏
得分:0 
回答一下getchar()的问题
楼主:

    你的问题很可能是没有清空内存保存的字符。你这样试一试,在每个getchar()前面都加上语句fflush(stdin);要是还不行,你可以加我的qq45466484我也在学C,我们可以一起研究,呵呵。
2008-03-26 19:22
行走
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-7-26
收藏
得分:0 
雨燕在三楼说了什么啊,让菜鸭这样无法忍受?
还是多讨论技术好,把所有帖子看下来,我又学到不少东西啊
2008-03-26 23:43
hoodlum1980
Rank: 2
来 自:浙江大学
等 级:论坛游民
威 望:2
帖 子:289
专家分:23
注 册:2008-2-24
收藏
得分:0 
//
(1)不知道飞燕为什么要抵制TC,这是我不清楚的。我用过TC2.0和TC3.0.但是由于我大一时候用的是TC2.0,所以我至今仍然依然再用TC2.0.当然我也用VC6,,2005,2008。我也不知道为啥飞燕这么鄙视TC呢。
(2)楼主的代码也写的确实看的让人挺头疼的。

[[it] 本帖最后由 hoodlum1980 于 2008-3-27 13:28 编辑 [/it]]
2008-03-27 12:33
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
鸭子兄弟到哪都有风浪....这种好与不好的问题...争论不止一次..没什么意思....楼上的兄弟可以到图型区去看看....那里面有和你一样的高手..可以去切磋

学习需要安静。。海盗要重新来过。。
2008-03-27 12:41
zpy1982
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-29
收藏
得分:0 
倒……有这时间多编写几个好的程序出来
我本不想参与你们的辩论  但是我实在是无法控制了:)
2008-03-29 13:31
xiaojiam
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-7-31
收藏
得分:0 
真的服了各位了!有时间在这吵不如去写多几个程序好了!这真的没意思!
2008-07-18 22:45
快速回复:终于把这个循环弄出来了,发出来,让大家分享我的快乐。
数据加载中...
 
   



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

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