作业三

Posted 门天宇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了作业三相关的知识,希望对你有一定的参考价值。

 作业三

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

#include<stdio.h>
int main()
{    char x;
    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>=\'0\'&&x<=\'9\')
            {    
                printf("%c\\n",x);
            }    
     else if(x==\' \')
                 {
                     printf("space\\n");
                }
    else 
                    {
                        printf("other\\n");
                    }
    return 0; 
 } 

 

 

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

#include<stdio.h>
int main()
{    int a,b,c,d,e,f,g,h,i,j;
    printf("输入你的生日\\n");
    scanf("%d,%d,%d",&a,&b,&c);
if ((a<=0)||(b<=0||b>12)||(c<=0||c>31))
            {printf ("输入错误\\n");}  
           if(((a%4==0&&a%100!=0)||(a%400==0))&&(b==2))
              {if(c>=30)
            {printf("输入错误\\n");} 
              }
            else if((a%4!=0)&&(b==2))
              {if(c>=29)
            {printf ("输入错误\\n");}   
              }
        printf ("输入今天的日期年月日用逗号分开\\n");
        scanf  ("%d,%d,%d",&d,&e,&f);
             if ((d<=0)||(e<=0||e>12)||(f<=0||f>31))
            {printf ("输入错误\\n");} 
            if(((d%4==0&&d%100!=0)||(d%400==0))&&(e==2))
              {if(f>=30)
            {printf("输入错误\\n");} 
              }
           else  if((d%4!=0)&&(e==2))
              {if(f>=29)
            {printf ("输入错误\\n");} }
    g=d-a;
    h=e-b;
    i=f-c;
    j=g-1;

    if(g==0)
        {
        printf("你的周岁是%d岁\\n",g);
        }

    else if(g>0)
        {
            if(h>0)
            {printf("你的周岁是%d岁\\n",g);}
            else if(h>0&&i>=0&&h>=0)
            {printf("你的周岁是%d岁\\n",g);}
            else if(h==0&&i>=0)
            {printf("你的周岁是%d岁\\n",g);}
            else if(h==0&&i<0)
            {printf("你的周岁是%d岁\\n",j);}
            else if(h<0)
            {printf("你的周岁是%d岁\\n",j);}
        }
    else 
    {
        printf("输入错误\\n");
    }        
     
    return 0;
}

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

#include<stdio.h>
int main()
{    int a,b,c;
    printf("输入三条边长\\n");
    scanf("%d,%d,%d",&a,&b,&c);
    if(a+b<=c||a+c<=b||b+c<=a)    
    {printf("这不是三角形\\n");}
    else
    {
    if(a==b||a==c||b==c)
    {if(a==b&a==c&b==c)
        {printf("这是等边三角形\\n");}
     else    {if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
                 {printf("这是等腰直角三角形\\n");}
              else
                  {printf("这是等腰三角形\\n");}           
             }
    }
    
    else{ if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
            {printf("这是直角三角形\\n");}
            else 
            {printf("这是一般三角形\\n");}
    }        
   }
    
    
     
    return 0;
}

  4. 看商品猜价格小游戏。

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

  5.你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?输入n,x和y(均为整数),输出剩下的苹果个数。

#include<stdio.h>
int main()
{    int a,n,x,y;
    printf("输入你买的苹果数,还有虫子吃的速度,和小时。\\n");
    scanf("%d,%d,%d",&n,&x,&y);
    if(n<=0||x<=0||y<=0)
    {
        printf("输入数据错误,请重新输入。\\n");
    }
    else if(n<=y/x)
        {
            printf("都被虫子吃光了,你没有苹果啦\\n");
        }
    else if((double)y/x>y/x)
    {    a=n-y/x-1;
        printf("你还有%d个整苹果\\n",a);
    }    
    else
    {
        a=n-y/x;
        printf("你还有%d个整苹果\\n",a);
    }
    return 0;
} 

二、本次课知识点总结:

1.if后边记得括号,并且以else结束,别加if。

2.符号常量要用“char”,注意%c与%d的区别,有符号常量时注意单引号的使用。

3.别忘记#include<time.h>和srand(time(NULL)),这样才能做到随机。

4.注意double的使用。

三、实验总结(实验中遇到的问题及解决方法)

1.不输出数据:printf后边忘记加常量,等号只使用了一个,错误加上&。

2.输出错误:语法逻辑问题,要注意对齐。

3.需要小数判断:记得加double。

4.输出随机数据时要加上#include<time.h>。

5.除法是“/”而不是“\\”。

以上是关于作业三的主要内容,如果未能解决你的问题,请参考以下文章

C++项目三代码参考(改进版)

动态SQL基础概念复习(Javaweb作业5)

日常Geetest滑动验证码(三代canvas版)处理小结(以B站登录验证为例)

三代基因组拼接软件--Falcon篇

Android 逆向加壳技术简介 ( 动态加载 | 第一代加壳技术 - DEX 整体加固 | 第二代加壳技术 - 函数抽取 | 第三代加壳技术 - VMP / Dex2C | 动态库加壳技术 )

pbootcms对接微信扫码登录代码核心片段和步骤(前后端)