
基础编程题目集
是晴天呐
努力学代码
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
7-24 约分最简分式 (15 分)
#include<stdio.h>int main(){ int a,b; scanf("%d/%d",&a,&b); int min; if(a>b){ min=b; } else{ min=a; } //找最大公约数 int t,m; for(t=1;t<=min;t++){ if(a%t==0&&b%t==0){ m=t; } } a=a/m; b=b/m; printf("%d/%d".原创 2021-02-05 21:06:54 · 273 阅读 · 0 评论 -
7-22 龟兔赛跑 (20分)
之前算的结果一直和答案不一样,最后检查发现,是最后不满10分钟或者30分钟的情况,却算成了10分钟或30分钟。所以要添加个判定条件。最后代码如下:#include<stdio.h>int main(){ int a,t=0,l=0,s=0;//l:兔子,s:乌龟 scanf("%d",&a); while(t<a){ if(a-t>=10){ l=l+10*9; s=s+10*3; t=t+10; .原创 2021-01-27 19:51:58 · 135 阅读 · 0 评论 -
7-21 求特殊方程的正整数解 (15分)
#include<stdio.h>int main(){ int x,y,n,count=0; scanf("%d",&n); for(x=1;x<100;x++){ for(y=1;y<100;y++){ if(x*x+y*y==n&&x<=y){ if(count>0){ printf("\n"); }//除了第一行解,其他每行解都先换行 count++; printf("%d %.原创 2021-01-19 16:41:41 · 364 阅读 · 0 评论 -
7-20 打印九九口诀表 (15分)
#include<stdio.h>int main(){ int n,a=1,b=1; scanf("%d",&n); for(a=1;a<=n;a++){ for(b=1;b<=n;b++){ if(b<=a){ printf("%d*%d=%-4d",b,a,b*a);//右对齐,占四字符 } } printf("\n"); } return 0;}//左对齐(补空格):%-4d//右对齐(补空格):%4d.原创 2021-01-19 16:24:38 · 177 阅读 · 0 评论 -
*7-19 支票面额 (15分)
#include<stdio.h>int main(){ int y=0,f=0,n,count=0; scanf("%d",&n); for(y=0;y<49;y++){ for(f=0;f<100;f++){ if(n==98*f-199*y){ count=1; printf("%d.%d",y,f); } } } if(count==0){ printf("No Solution"); } return 0;}.原创 2021-01-19 15:53:06 · 160 阅读 · 0 评论 -
*7-18 二分法求多项式单根 (20分)
给定阈值的理解:a和b小数位要有三位一样的,即十分位、百分位、千分位,这时可以四舍五入,保留两位小数,得到较为准确的近似值。所以b-a<0.001,循环结束。#include<stdio.h>double a3,a2,a1,a0;double f(double x){ return a3*x*x*x+a2*x*x+a1*x+a0;}int main(){ double a,b; scanf("%lf %lf %lf %lf\n",&a3,&a2,&am.原创 2021-01-19 13:14:14 · 191 阅读 · 0 评论 -
7-17 爬动的蠕虫 (15分)
一道好好玩的题目,我觉得我上一次看到这道爬动的蠕虫,是在小学哈哈哈,不过那时候是道数学题啦。简直有种穿越时光的感觉。感慨jpg.时间好快……记得那时候老师就强调这题有坑啊,最后一次小虫不用休息不用下滑,因为人家已经到井口了。印象深刻。按照小虫爬行的过程来写代码,就觉得好直观,不用花脑筋去算数。。#include<stdio.h>int main(){ int n=0,u=0,d=0,l=0,t=0; scanf("%d %d %d",&n,&u,&d).原创 2021-01-13 19:53:24 · 297 阅读 · 1 评论 -
*7-16 求符合给定条件的整数集 (15分)
给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。输入格式:输入在一行中给出A。输出格式:输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。输入样例:2输出样例:234 235 243 245 253 254324 325 342 345 352 354423 425 432 435 452 453523 524 532 534 542 543一道值得思考的题目。#include<std原创 2021-01-13 17:52:35 · 180 阅读 · 0 评论 -
7-15 计算圆周率 (15分)
之前测试算出的结果一直和示例不一样,最后又重新读题,发现“直到最后一项的值小于给定阈值”,意思是最后一项要小于阈值最后一项是要加进结果里面的我原来想当然的以为小于阈值的项不算进里面。所以审题好重要。法一:while循环:#include<stdio.h>int main(){ int n=0; double a=0.00; scanf("%lf",&a); double x=1.00,y=0.00; while(x>=a){ y=y+x; n+.原创 2021-01-11 14:12:55 · 197 阅读 · 0 评论 -
7-14 求整数段和 (15分)
给定两个整数A和B,输出从A到B的所有整数以及这些数的和。输入格式:输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。输出格式:首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。输入样例:-3 8输出样例: -3 -2 -1 0 1 2 3 4 5 6 7 8Sum = 30我人傻了,忘记了%5d这个原创 2021-01-10 21:40:04 · 183 阅读 · 0 评论 -
7-13 日K蜡烛图 (15分)
股票价格涨跌趋势,常用蜡烛图技术中的K线图来表示,分为按日的日K线、按周的周K线、按月的月K线等。以日K线为例,每天股票价格从开盘到收盘走完一天,对应一根蜡烛小图,要表示四个价格:开盘价格Open(早上刚刚开始开盘买卖成交的第1笔价格)、收盘价格Close(下午收盘时最后一笔成交的价格)、中间的最高价High和最低价Low。如果Close<Open,表示为“BW-Solid”(即“实心蓝白蜡烛”);如果Close>Open,表示为“R-Hollow”(即“空心红蜡烛”);如果Open等于Clo原创 2021-01-10 18:22:33 · 163 阅读 · 0 评论 -
7-12 两个数的简单计算器 (10分)
本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。输入格式:输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。输出格式:当运算符为+、-、*、/、%时,在一行输出相应的运算结果。若输入是非法符号(即除了加、减、乘、除和求余五种运算符以外的其他符号)则输出ERROR。输入样例1:-7 / 2输出样例1:-3输入样例2:3 & 6输出样原创 2021-01-10 16:55:45 · 342 阅读 · 0 评论 -
7-11 分段计算居民水费 (10分)
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。输入格式:输入在一行中给出非负实数x。输出格式:在一行输出应交的水费,精确到小数点后2位。输入样例1:12输出样例1:16.00输入样例2:16输出样例2:22.50#include<stdio.h>int main(){ double x=0.00; //注意x是非负原创 2021-01-10 16:22:21 · 585 阅读 · 0 评论 -
7-10 计算工资 (15分)
某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。输入格式:输入在一行中给出2个正整数,分别为某员工入职年数和周工作时间,其间以空格分隔。输出格式:在一行输出该员工的周薪,精确到小数点后2位。输入样例1:5 40输出样例1:原创 2021-01-10 16:08:36 · 302 阅读 · 0 评论 -
7-9 用天平找小球 (10分)
三个球A、B、C,大小形状相同且其中有一个球与其他球重量不同。要求找出这个不一样的球。输入格式:输入在一行中给出3个正整数,顺序对应球A、B、C的重量。输出格式:在一行中输出唯一的那个不一样的球。输入样例:1 1 2输出样例:C#include<stdio.h>int main(){ int A,B,C=0; scanf("%d %d %d",&A,&B,&C); if(A==B){ printf("C"); } else if(A==原创 2021-01-10 15:55:39 · 118 阅读 · 0 评论 -
7-8 超速判断 (10分)
模拟交通警察的雷达测速仪。输入汽车速度,如果速度超出60 mph,则显示“Speeding”,否则显示“OK”。输入格式:输入在一行中给出1个不超过500的非负整数,即雷达测到的车速。输出格式:在一行中输出测速仪显示结果,格式为:Speed: V - S,其中V是车速,S或者是Speeding、或者是OK。输入样例1:40输出样例1:Speed: 40 - OK输入样例2:75输出样例2:Speed: 75 - Speeding#include<stdio.h>int原创 2021-01-10 15:48:52 · 154 阅读 · 0 评论 -
7-7 12-24小时制 (15分)
编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。输入格式:输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。提示:在scanf的格式字符串中加入:,让scanf来处理这个冒号。输出格式:在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的原创 2021-01-10 14:54:05 · 167 阅读 · 0 评论 -
7-6 混合类型数据格式化输入 (5分)
本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。输入格式:输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。输出格式:在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。输入样例:2.12 88 c 4.7输出样例:c 88 2.12 4.70#include<stdio.h>int main(){ double a=0.00,d=0.00; int b; c原创 2021-01-10 11:13:40 · 220 阅读 · 0 评论 -
7-5 表格输出 (5分)
一道我想多了的题目。。我注意到最后两行是红色字体输出输出的,所以查了一些信息,如何改变输出的颜色。。相关帖子:部分语句换颜色:https://www.cnblogs.com/fensnote/p/13436438.htmlhttps://blog.youkuaiyun.com/qq_42418668/article/details/89343771https://blog.youkuaiyun.com/mr_wangning/article/details/77685371所有输出换颜色:https://blog..原创 2020-12-19 11:11:34 · 2571 阅读 · 2 评论 -
7-4 BCD解密 (10分)
BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。输入格式:输入在一行中给出一个[0, 153]范围内的正整数,保证能转换回有效的BCD数,也就是说这个整数转换成十六进制时不会出现A-F的数字原创 2020-12-19 09:59:21 · 397 阅读 · 4 评论 -
7-3 逆序的三位数 (10分)
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。输入格式:每个测试是一个3位的正整数。输出格式:输出按位逆序的数。输入样例:123输出样例:321#include<stdio.h>int main(){ int x=0; scanf("%d",&x); int a=x/100; int b=(x-a*100)/10; int c=x%10; int d=c*100+b原创 2020-12-19 09:42:09 · 175 阅读 · 1 评论 -
7-2 然后是几点 (15分)
7-2 然后是几点 (15分)基本思路:(1)将起始时刻换算成分钟数:时刻/100得到小时,时刻%100得到分钟,小时×60+分钟得到分钟数(2)加上流逝分钟(是正是负都无所谓,直接加就好),得到终止分钟数(3)换算成时刻(终止分钟数/60×100+终止分钟数%60)重要!!易错点:提交后发现最后一个检查点没有通过——分钟数小于0,输出不满4位且小时是0。问题出在哪里呢?就是运算出的小时数是0的时候,输出结果没有0!比如初始时刻0:30及030,流逝时间20,输出结果本应该是050,结果只输原创 2020-12-13 19:30:47 · 1987 阅读 · 2 评论 -
7-1 厘米换算英尺英寸 (15分)
7-1 厘米换算英尺英寸 (15分)#include<stdio.h>int main(){ int x=0; scanf("%d",&x); int foot=x/0.3048/100; int inch=(x/0.3048/100-foot)*12; printf("%d %d",foot,inch); return 0;}原创 2020-12-13 18:59:06 · 165 阅读 · 1 评论