• 第三次作业


    一、实验内容

     1.实验要求:字符判断

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

     代码:

    #include <stdio.h>
    int main()
    {
     char a;
     scanf("%c",&a);
     if(a>='a'&&a<='z')
      {
       a=a-32;
       printf("%c",a);
      }
     else if(a>='A'&&a<='Z')
      {
       a=a+32;
       printf("%c",a);
      }
     else if(a>='0'&&a<='9')
      {
       printf("%c",a);
      }
     else if(a==' ')
      {
       printf("space");
      }
     else
      {
       printf("other");
      }
     return 0;
    }

     程序运行结果:

    2.实验要求:年龄问题

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

     代码:

    #include<stdio.h>
    int main()
    {
     int a,b,c,year,month,day,age;
     printf("请输入今天的日期: ");
     scanf("%d:%d:%d",&a,&b,&c);
     printf("请输入学生的生日: ");
     scanf("%d:%d:%d",&year,&month,&day);
     age=a-year;
     if(b>month)
      {
       printf("学生的年龄是%d周岁",age);
      }
     else if(b==month)
      {
       if(c>day||c==day)
        {
         printf("学生的年龄是%d周岁",age);
        }
       else if(c<day)
        {
         age=age-1;
         printf("学生的年龄是%d周岁",age);
        }
      }
     else if(b<month)
      {
       age=age-1;
       printf("学生的年龄是%d周岁",age);
      }

     return 0;
    }

     程序运行结果:

    3.实验要求:判断三角形类型

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

     代码:

    #include <stdio.h>
    #include <math.h>
    int main()
    {
     int a,b,c;
     printf("请输入三角形三边长: ");
     scanf("%d %d %d",&a,&b,&c);
     if(fabs(a+b)>c&&fabs(a-b)<c)
      {
       if(a*a+b*b==c*c&&a==b||a*a+c*c==b*b&&a==c||b*b+c*c==a*a&&b==c)
        {
         printf("是等腰直角三角形");
        }
       else if(a==b&&b==c&&c==a)
         {
          printf("是等边三角形");
         }
        else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
         {
          printf("是直角三角形");
         } 

        else if(a==b&&a!=c||b==c&&b!=a||a==c&&b!=c)
         {
          printf("是等腰三角形");
         }
        else
         {
          printf("是一般三角形");
         }
      }
     else
      {
       printf("数据错误");
      }
     return 0;
    }

     程序运行结果:

    4.实验要求:看商品猜价格小游戏

     代码:

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
     int a,b;
     printf("请输入商品的价格: ");
     scanf("%d",&a);
     srand(time(NULL));
     b=rand()%100+1;
     if(a==b)
      {
       printf("商品归你了");
      }
     else if(a>b)
      {
       printf("太大了");
      }
     else if (a<b)
      {
       printf("太小了");
      }
     printf("商品的价格是%d",b);
     return 0;
    }

     程序运行结果:

    5.实验要求:虫子吃苹果问题(完成此题加1分)

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

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

       测试数据:  10  4  9

                        5  3  16

     代码:

    #include<stdio.h>
    int main()
    {
     int n,x,y,a,b,s;
     printf("  你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果? ");
     printf("请输入一箱苹果的个数和虫子吃苹果的时间和吃苹果的速度: ");
     scanf("%d%d%d",&n,&y,&x);
     a=y/x;
     b=n-a;
     s=b-1;
     if(b>0&&y%x==0)
      {
       printf("还剩下%d个苹果 ",b);
      }
     else if (y%x!=0&&s>0)
      {
       printf("还剩下%d个苹果 ",s);
      }
     else
      {
       printf("还剩下0个苹果 ");
      }
     return  0;
    }

     程序运行结果:

    二、本次课知识点总结

    1. 1.  掌握字符型数据(字符型常量和变量、字符串常量、字符型数据的输入输出格式和输入输出函数

    (1)      字符型数据类型标识符char。在内存中占用一个字节,以所存字符的ASCII码存储 。字符ASCII码值为0-255。

    (2)      字符常量:用单引号括起来的单个普通字符或转义字符。’a’ –97   ‘A’—65  ‘0’—48  ‘ ’--10

    (3)      转义字符:反斜线后面跟一个字符或一个代码值表示转义字符及其含义。

    (4)      字符变量:字符型变量用来存放字符常量,只能放一个字符。一个字符变量在内存中占一个字节。

    (5)      既可以以字符形式输出又可以以整数形式输出。以字符型数据输出时,先将存储单元中的ASCII码值转换成相应字符,然后再输出。以整数形式输出时,直接将ASCII码作为整数输出。字符型数据还可以进行算数运算,相当于他们的ASCII码值参与运算

    (6)      字符串常量:用双引号(“”)括起来的字符序列字符常量与字符串常量不同。比如‘a’  长度为1个字符,“a”长度为2个字符 。

    (7)      字符型数据的输入输出c格式符:在输入输出函数中,字符型数据的格式控制使用%c表示,用来输入输出一个字符。

    (8)      putchar函数(字符输出函数)格式: putchar( c ) putchar函数(字符输出函数)格式: putchar( c )

    2.  如何产生随机数

    #include <stdio.h>

    #include <stdlib.h>

    #include <time.h>

    int main()

    {   int a,b;

        srand(time(NULL));

        a=rand()%100;

        b=rand()%100;

        printf("a=%d,b=%d ",a,b);

        return 0;

    }

     

     

    三、实验总结

    1.字符型数据类型的转换,大写字母和小写字母之间差32,并且小写字母代表的数据大。

    2.输入函数中不能忘记加取地址符。

    3.if的嵌套是不能忘记大括号的匹配问题。

  • 相关阅读:
    TRIGGERS_监测系统_多表视图触发器—向原始数据报表中插入数据
    PROCEDURE_监测系统_原始数据报表数据生成存储过程—求每天平均值插入多表视图
    PROCEDURE_监测系统_数据备份存储过程—备份原始数据,每十分钟一条,取平均值
    TRIGGERS_监测系统_原始数据表触发器—调用告警信息存储过程
    PROCEDURE_监测系统_告警信息存储过程—产生告警信息插入告警表
    秒(s) 毫秒(ms) 微秒(μs) 纳秒(ns) 皮秒(ps)及Java获得 .
    new String(byte[])和byte[]toString() 的区别
    Java 线程池 .
    加载配置文件的方式
    Spring的PropertyPlaceholderConfigurer应用
  • 原文地址:https://www.cnblogs.com/xxs812/p/5971202.html
Copyright © 2020-2023  润新知