zoukankan      html  css  js  c++  java
  • 第三次作业

    1. 字符判断

         输入一个字符,判断它如果是小写字母输出其对应大写字母;如果是大写字母输出其对应小写字母;如果是数字输出数字本身;如果是空格,输出“space”;如果不是上述情况,输出“other”。

    # include <stdio.h>
    int main()
    {
      char x;
      printf("请输入一个大写或小写字母或空格或0-9的整数:\n");
      scanf("%c",&x);
      if(x>='A'&&x<='Z')
      {
          x=x+32;
          printf("%c\n",x);
      }
      else if(x>='a'&&x<='z')
      {
          x=x-32;
          printf("%c\n",x);
      }
      else if(x==32)
      {
          printf("space\n");
      }
      else if(x>=48&&x<=57)
      {
          x=x-48;
        printf("%d",x);
      } 
      else 
      {
          printf("other\n");
      }  
     return 0;  
    }

    本次课知识点总结:

    1.熟练运用字符型与整型之间的转换。

    2.记住一些主要字符型数据所对应的数字。

    实验总结:

    1.字符型数据的表示方法,用单引号引起来。

    2.输出时看清要求,是输出字符型还是整型。

    2. 年龄问题

         输入一个学生的生日(年:月:日),并输入当前日期(年:月:日),计算该生的实际年龄(周岁)。

    # include <stdio.h>
    # include <stdlib.h>
    int main()
    {
        int year1,month1,day1,year2,month2,day2,a,b,c;
        printf("请输入你的生日,格式年:月:日:\n");
        scanf("%d:%d:%d",&year1,&month1,&day1);
        if(month1>12||month1<1||month2>12||month2<1)
        {
            printf("输入数据错误!!!\n");
            exit(0);
        }
        else if(month1==1||month1==3||month1==5||month1==7||month1==8||month1==10||month1==12)
        {
            if(day1>31||day1<1)
            {
                printf("输入数据错误!!!\n");
                exit(0);
            }        
        }
        else if(month1==4||month1==6||month1==9||month1==11)
        {
            if(day1>30||day1<1)
            {
                printf("输入数据错误!!!\n");
                exit(0);
            }
        }
        else if(month1==2)
        {
            if((year1/4==0&&year1/100!=0)||year1/400==0)
            {
                if(day1>29||day1<1)
                {
                    printf("输入数据错误!!!\n");
                    exit(0);
                }
            }
            else
            {
                if(day1>28||day1<1)
                {
                    printf("输入数据错误");
                    exit(0);
                } 
            }
        }
        printf("请输入今天的日期,格式年:月:日\n");
        scanf("%d:%d:%d",&year2,&month2,&day2);
        if(month2==1||month2==3||month2==5||month2==7||month2==8||month2==10||month2==12)
        {
            if(day2>31||day2<1)
            {
                printf("输入数据错误!!!\n");
                exit(0);
            }        
        }
        else if(month2==4||month2==6||month2==9||month2==11)
        {
            if(day2>30||day2<1)
            {
                printf("输入数据错误!!!\n");
                exit(0);
            }
        }
        else if(month2==2)
        {
            if((year2/4==0&&year2/100!=0)||year2/400==0)
            {
                   if(day2>29||day2<1)
                {
                    printf("输入数据错误!!!\n");
                    exit(0);
                }
            }
            else
            {
                if(day2>28||day2<1)
                {
                    printf("输入数据错误!!!\n");
                    exit(0);
                }
            }
        }
        a=year2-year1;
        b=month2-month1;
        c=day2-day1;
        if((a<0)||(a==0&&b<0)||(a==0&&b==0&&c<0))
        {
            printf("输入数据错误!!!\n");
            exit(0);
        }
        else 
        {
         if(b<0)
         {
            a=a-1;
            printf("你现在%d周岁了\n",a);
         }
         else if(b==0)
         {
            if(c<0)
            {
                a=a-1;
                printf("你现在%d周岁了\n",a);
            }
            else
            {
                printf("你现在%d周岁了\n",a);
            }
         }
         else
         {
            printf("今天你%d周岁了\n",a);
         }
        }
     return 0;    
    }

    本次课知识点总结:

    1.引入了强制输出,# include <stdlib.h>    exit(0);   。

    2.使用if  else 连环嵌套。

    实验总结:

    1.输入一次数据就立刻判断一次,最好不要两次都输入完了在判断输入数据是否错误。

    2.熟记闰年的判断方式。

      3. 判断三角形类型

      输入三个整数,判断由其构成的三角形的类型(等边三角形、等腰三角形、等腰直角三角形、直角三角形、一般三角形以及非三角形)

    # include <stdio.h>
    int main()
    {
        int x,y,z;
        printf("请输入三角形的三条边长,数字类型为整数:\n");
        scanf("%d,%d,%d",&x,&y,&z);
        if((x+y<=z||x+z<=y)||y+z<=x) 
        {
            printf("非三角形\n");
        }
        else
        {
            if((x==y||x==z)||y==z)
            {
                if((x==y&&x==z)&&y==z)
                {
                    printf("该三角形为等边三角形\n");
                }
                else
                {
                    if((x*x+y*y==z*z||x*x+z*z==y*y)||y*y+z*z==x*x)
                    {
                        printf("该三角形为等腰直角三角形\n");
                    }
                    else
                    {
                        printf("该三角形为等腰三角形\n");
                    }
                }
            }
            else
            {
                if((x*x+y*y==z*z||x*x+z*z==y*y)||y*y+z*z==x*x)
                {
                    printf("该三角形为直角三角形\n");
                }
                else
                {
                    printf("该三角形为普通三角形\n");
                }
            } 
        }
     return 0;    
    }

    本次课知识点总结:

    1.if else 连环嵌套。

    2.有关三角形的基础知识要知道。

    实验总结:

    1.在等腰的基础上判断等边,只等腰不等边时在分是否是直角。

    2.逻辑关系要理清楚。

      4. 看商品猜价格小游戏

    # include <stdio.h>
    # include <stdlib.h>
    # include <time.h>
    int main()
    {
        int a,b;
        printf("你猜这个商品的价格是多少(1-100之间):\n");
        scanf("%d",&a);
        srand(time(NULL));
        b=rand()%100+1;
        if(a==b)
        {
            printf("恭喜!商品归你了\n");
        }
        else if(a<b)
        {
            printf("太小了,价格是%d\n",b);
        }
        else
        {
            printf("太大了,价格是%d\n",b);
        }
     return 0;    
    }

    本次课知识点总结:

    1.系统输出1-100随机数# include <stdlib.h>      b=rand()%100+1;

    2.让随机数不停的变化# include <time.h>      srand(time(NULL));

    实验总结:

    1.让随机数不停变化需要加入# include <time.h>      srand(time(NULL));

    2.让随机在1-100需在 b=rand()%100后面在加个1.

    附加题:虫子吃苹果问题(完成此题加1分)

        你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?

       输入n,x和y(均为整数),输出剩下的苹果个数。

       测试数据:  10  4  9

                        5  3  16

    # include <stdio.h>
    int main()
    {   
        int n,x,y,z,f; 
        printf("你买了一箱n个苹果,箱子里有一只虫子,虫子x小时吃掉一个苹果,y小时后还剩多少苹果,请输入n,x,y(n,x,y均为正整数):\n");
        scanf("%d,%d,%d",&n,&x,&y);
        f=n-(y/x);
        if(n<=0||x<=0)
        {
            printf("输入错误!!!\n");
        }
        else if(f<=0)
        {
            printf("剩余0个苹果\n");
        }
        else
        {
            if((double)y/x>y/x)
            {
            z=n-(y/x)-1;
            printf("剩余%d个苹果\n",z);
            }
            else 
            {
                z=n-(y/x);
                printf("剩余%d个苹果\n",z);
            }
        }
     return 0;
    }

    本次课知识点总结:

    1.使用浮点型数据。

    实验总结:

    1.当y/x为小数时让y/x+1。

  • 相关阅读:
    Atitit.播放系统规划新版本 v4 q18 and 最近版本回顾
    Atitit.播放系统规划新版本 v4 q18 and 最近版本回顾
    atitit.极光消息推送服务器端开发实现推送  jpush v3. 总结o7p
    atitit.极光消息推送服务器端开发实现推送  jpush v3. 总结o7p
    Atitit.文件搜索工具 attilax 总结
    Atitit.文件搜索工具 attilax 总结
    Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package
    Atitit.软件命名空间  包的命名统计 及命名表(2000个名称) 方案java package
    Atitit..状态机与词法分析  通用分词器 分词引擎的设计与实现 attilax总结
    Atitit..状态机与词法分析  通用分词器 分词引擎的设计与实现 attilax总结
  • 原文地址:https://www.cnblogs.com/w123/p/5970962.html
Copyright © 2011-2022 走看看