标题:[原创]蝴蝶的专用习题集!供菜菜一起交流学习用
只看楼主
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
 问题点数:0 回复次数:7 
[原创]蝴蝶的专用习题集!供菜菜一起交流学习用
我有时间就把自己写的代码发上来,供大家品评

如果你有更好的更精妙的算法请不吝赐教,谢谢!
搜索更多相关主题的帖子: 蝴蝶 习题集 供菜 学习 
2005-03-31 19:14
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
得分:0 
4位以内数由小到大排序
main()
{
int a,b,c,d,x;
printf("input four numbers:");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
if(a>b)
{x=a;a=b;b=x;}
if(a>c)
{x=a;a=c;c=x;}
if(a>d)
{x=a;a=d;d=x;}
if(b>c)
{x=b;b=c;c=x;}
if(b>d)
{x=b;b=d;d=x;}
if(c>d)
{x=c;c=d;d=x;}
printf("%d,%d,%d,%d",a,b,c,d);
}

立志:吃遍成都路边摊!
2005-03-31 19:16
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
得分:0 
if给出成绩输出等级
main()
{
 int num;
 char a,b,c,d,e;
 a='A';
 b='B';
 c='C';
 d='D';
 e='E';
 printf("please input a score(0~100):");
 scanf("%d",&num);
if(num>=0&&num<=100)         /*检验数据合法否*/
 if(num>89)
  printf("grade is %c",a);
else
 if(num<60)
  printf("grade is %c",e);
else
 if(num<90&&num>79)
  printf("grade is %c",b);
else
 if(num<80&&num>69)
  printf("grade is %c",c);
else
  printf("grade is %c",d);
else printf("The score error");
}

立志:吃遍成都路边摊!
2005-03-31 19:16
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
得分:0 
switch给成绩输出等级


main()
{
 int  score, grade;
 printf("Input a score(0~100): ");
 scanf("%d", &score);
 grade = score/10;     /*将成绩整除10,转化成switch语句中的case标号*/
 switch (grade)
{
    case  10:
    case   9: printf("grade=A\n"); break;  /*标号10和9,都执行本行的2条语句*/
    case   8: printf("grade=B\n"); break;
    case   7: printf("grade=C\n"); break;
    case   6: printf("grade=D\n"); break;
    case   5:
    case   4:
    case   3:
    case   2:
    case   1:
    case   0: printf("grade=E\n"); break;  /*标号5、4、3、2、1和0,都执行本行的2条语句*/
    default: printf("The score is out of range!\n"); /*成绩超出范围时,提示出错*/
}
}

立志:吃遍成都路边摊!
2005-03-31 19:17
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
得分:0 
叛断某一年是否润年


#include<stdio.h>
main()
{
 int year,leap=0;                              /*预制为非润年*/
 printf("please input the year:");
 scanf("%d",&year);
if(year%4==0)
  if(year%100!=0) leap=1;
else
  if(year%400==0) leap=1;
if(leap)
  printf("%d is a leap year\n",year);
else
  printf("%d is a not leap year\n",year);
}

立志:吃遍成都路边摊!
2005-03-31 19:19
leishendyg
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-4-17
得分:0 
关于第一个4个数输出的问题可不可以说的详细点
我笨看的不怎么明白呀if(a>b)
{x=a;a=b;b=x;}
if后面可以这么用吗 ?
是什么意思?

我的邮箱leishendyg@有事您说话....
2005-04-17 13:18
leishendyg
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-4-17
得分:0 
前辈
我会关注你的答案呀

我的邮箱leishendyg@有事您说话....
2005-04-17 13:20
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
得分:0 
N天前的贴子,既然翻出来了那就点评一下

(1) 4位以内数由小到大排序
我觉得用排序来作可以不之做到4位~所以这个程序从构思来说就不合理.

建议:用排序来重新写一变


(2)if给出成绩输出等级
既然用了if,那我还是说一下

main()
{
int num;
    printf("please input a score(0~100):");
    scanf("%d",&num);

    if(num>=0&&num<=100)         /*检验数据合法否*/
        if(num>=90)
              printf("grade is A");
        else if(num>=80)
              printf("grade is B");
        else if(num>=70)
              printf("grade is C");
        else if(num>=60)
              printf("grade is D");
        else
            printf("grade is E");
    else
        printf("The score error");
}

主意下if的判断条件



(3)switch给成绩输出等级
恩有点模样了,用不着怎么该了

(4)叛断某一年是否润年
你能用一个宏来判断是否是闰年吗?
我想你应该可以做到的.

淘宝杜琨
2005-04-17 18:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-14510-1-1.html




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

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