当前位置: 首页 > news >正文

PTA第三章作业题

在这里插入图片描述

文章目录

  • 前言
  • 7-1 比较大小
    • Ⅰ. 方法一 :直接判断法
    • Ⅱ. 方法二:交换法
  • 7-2 比较两个数的大小
    • Ⅰ. 方法 :直接判断法
  • 7-3 成绩等级
    • Ⅰ. 方法 :直接判断法
  • 7-4 打鱼晒网
    • Ⅰ. 方法 :直接判断法
  • 7-5 计算奖金
    • Ⅰ. 方法 :直接判断法
  • 7-6 求方程解
    • Ⅰ. 方法 :暴力计算
  • 7-7 求鸡兔数量
    • Ⅰ. 方法 :暴力计算
  • 7-8 求月供
    • Ⅰ. 方法 :暴力计算
  • 7-9 设计计算器
    • Ⅰ. 方法 :暴力计算
  • 7-10 字母加密
    • Ⅰ. 方法 :暴力计算(不理解这个题目可以问22学长)
  • 7-11 判断闰年
    • Ⅰ. 方法 :背结论
  • 总结


前言

讲解一下 AYIT 第三章作业题目,首先评价一下这些题目,其实这些题目非常经典,很适合入门学习,一些经典的方法和结论需要大家去学习。


7-1 比较大小

Ⅰ. 方法一 :直接判断法


#include<stdio.h>
int main()
{int a,b,c;scanf("%d %d %d",&a,&b,&c);if(a > b && b > c)printf("%d %d %d",c,b,a);else if(b > a && a > c)printf("%d %d %d",c,a,b);else if(c > a && a > b)printf("%d %d %d",b,a,c);else if(a > c && c > b)printf("%d %d %d",b,c,a);else if(b > c && c > a)printf("%d %d %d",a,c,b);else if(c > b && b > a)printf("%d %d %d",a,b,c);return 0;
}

Ⅱ. 方法二:交换法

只看第一种方法,后面方法可做了解

因为从小到大 所以 if里面肯定是 左边大 右边小
然后三个数 三种情况 都判断 再利用交换法 就结束了

#include<stdio.h>
int main()
{int x,y,z,min;scanf("%d %d %d",&x,&y,&z);if(x > y){min = x;x = y;y = min;}if(x > z){min = x;x = z;z = min;}if(y > z) {min = y;y = z;z = min;}printf("%d %d %d",x,y,z);return 0;
}

7-2 比较两个数的大小

Ⅰ. 方法 :直接判断法

#include<stdio.h>
int main()
{int a,b;scanf("%d %d",&a,&b);if(a>=b){printf("%d %d",b,a);}else if(a<b){printf("%d %d",a,b);}return 0;
}

7-3 成绩等级

Ⅰ. 方法 :直接判断法

#include<stdio.h>
int main()
{int n;scanf("%d",&n);if(n >= 90 && n <= 100)printf("A");if(n >= 80 && n <= 89)printf("B");if(n >= 70 && n <= 79)printf("C");if(n >= 60 && n <= 69)printf("D");if(n <60 && n >=0)printf("E");return 0;
}

7-4 打鱼晒网

Ⅰ. 方法 :直接判断法

#include<stdio.h>
int main()
{int m,n,p;int a,y;scanf("%d %d %d",&m,&n,&p);if(n=1) a=0;//前0个月if(n=2) a=31;//前1个月if(n=3) a=59;//前2个月if(n=4) a=90;//前3个月if(n=5) a=120;if(n=6) a=151;if(n=7) a=181;if(n=8) a=212;if(n=9) a=243;if(n=10) a=273;if(n=11) a=304;if(n=12) a=334;//算天数用a += p;//加上本月的天数if((m%4==0&&m%100!=0||m%400==0))//判断闰年{a+=2;}y=a%5;//下面就是依据打鱼晒网的定义进行判断if(y==0||y==4){printf("network");}if(y==1||y==2||y==3){printf("fish");}return 0;} 

7-5 计算奖金

Ⅰ. 方法 :直接判断法

#include<stdio.h>
int main()
{double a;double m;scanf("%lf",&a);if(a <= 10.0 && a >= 0.0){m = a*0.1*10000.0;printf("%.2lf元",m);}else if(a>10.0 && a<=20.0){m = a*0.12*10000;printf("%.2lf元",m);}else if(a >20.0 && a<= 40.0) {m = a*0.14*10000;printf("%.2lf元",m);}else if(a > 40.0 && a <= 60.0){m = a*0.16*10000;printf("%.2lf元",m);}else if(a > 60.0 && a<=100.0){m = a*0.18*10000;printf("%.2lf元",m);}else{m=a*0.2*10000;printf("%.2lf元",m);}return 0;
}

7-6 求方程解

Ⅰ. 方法 :暴力计算

#include<stdio.h>
#include<math.h>
int main()
{int a,b,c;double x1,x2,m=0;scanf("%d %d %d",&a,&b,&c);m = (pow(b,2)-4*a*c);x1 = ((-b + sqrt(m))/(2*a));x2 = ((-b - sqrt(m))/(2*a));if(m < 0 && a != 0){printf("无实数解!\n");}else if(m > 0 && a != 0){printf("x1=%.2lf,x2=%.2lf\n",x1,x2);}else if(m == 0 && a != 0){printf("x1=x2=%.2lf\n",x1);}return 0;
}

7-7 求鸡兔数量

Ⅰ. 方法 :暴力计算

#include<stdio.h>
int main()
{int x,y;int m,n;scanf("%d %d",&x,&y);n=0.5*y-x;m=2*x-0.5*y;if(x<0 || y<0 || x%2!=0 || y%4!=0 || m <0 || n <0)printf("error");elseprintf("chicken:%d rabbit:%d",m,n);return 0;
}

7-8 求月供

Ⅰ. 方法 :暴力计算

#include<stdio.h>
#include<math.h>
int main()
{int d,p;float r,m;scanf("%d%d%f",&d,&p,&r);if(p-d*r>0){m=(log(p)-log(p-d*r))/log(1+r);printf("%.0f\n",ceil(m));}else{printf("error\n");}return 0;
}

7-9 设计计算器

Ⅰ. 方法 :暴力计算

#include<stdio.h>
int main()
{float a,b;char ch;float m;scanf("%f%c%f",&a,&ch,&b);switch(ch){case '+': m=a+b; break;case '-': m=a-b; break;case '*': m=a*b; break;case '/': m=a/b; break;}if(m-(int)m==0.0)printf("%.0f",m);elseprintf("%.1f",m);return 0;
}

7-10 字母加密

Ⅰ. 方法 :暴力计算(不理解这个题目可以问22学长)

#include<stdio.h>
int main()
{unsigned char c;int k;scanf("%c%d",&c,&k);c=c+k;if(c>'z')c=c-26;printf("%c",c);return 0;
}

7-11 判断闰年

Ⅰ. 方法 :背结论

#include<stdio.h>
int main()
{int year;scanf("%d",&year);if(year%4==0&&year%100!=0||year%400==0){printf("yes");}else{printf("no");}return 0;
}

总结

本章节的作业,初学的时候会比较难,但是只要肯钻研,去问的话,会学到很多东西,题目的一些结论比如闰年的判断是大家必须要背的记忆的。

http://www.lryc.cn/news/175580.html

相关文章:

  • vscode vue html 快捷键
  • mysql锁相关的总结
  • 计算机竞赛 深度学习乳腺癌分类
  • docker-compose搭建的mysql,如何定时备份数据
  • webpack:关于处理html文件的插件html-webpack-plugin、add-asset-html-webpack-plugin
  • 如何两个不同的脚本文件之间传递参数
  • 一篇文章彻底搞懂熵、信息熵、KL散度、交叉熵、Softmax和交叉熵损失函数
  • [架构之路-223]:数据管理能力成熟度评估模型DCMM简介
  • 十大排序算法的实现(C/C++)
  • HTML+CSS综合案例一新闻详情
  • 【Spring Boot】实战:实现Session共享
  • 3、Elasticsearch功能使用
  • 数据链路层协议
  • java版网页代码生成器系统myeclipse定制开发mysql数据库网页模式java编程jdbc生成无框架java web网页
  • ElementUI实现登录注册啊,axios全局配置,CORS跨域
  • 面经分享 | 某康安全开发工程师
  • leetcode - 389. Find the Difference
  • asp.net企业生产管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio
  • vue中或者react中的excel导入和导出
  • 如何在Ubuntu的根目录下创建删除目录
  • lv5 嵌入式开发-6 线程的取消和互斥
  • el-table实现穿梭功能
  • Cron表达式_用于定时调度任务
  • CeresPCL ICP精配准(点到面)
  • CentOS安装kafka单机部署
  • 蓝牙核心规范(V5.4)11.2-LE Audio 笔记之LE Auido架构
  • 福建江夏学院蔡慧梅主任一行莅临拓世科技集团,共探AI+时代教育新未来
  • 使用Visual Leak Detector排查内存泄漏问题
  • 如何设计一个 JVM 语言下的 LLM 应用开发框架?以 Chocolate Factory 为例
  • 基础排序算法