
题目集
黥心
这个作者很懒,什么都没留下…
展开
-
7-5 超市奖票兑换 (10 分)
前言:看了下阅读量最高的那位时间复杂度到了三次方…那我也把我的贴一下(胡乱分析.jpg)某家超市有一种促销手段,购买金额超过一定金额就给一张随机编号奖票。编号是一个1到100之间的数字。当收集到连续编号的三张贴花时,就可以换一个小礼物。兑换完礼物后,该奖票就作废。小明经常去某家超市购物,积攒了不少奖票,你帮他看看,能换多少小礼物。输入格式:首先是一个正整数N(1<N<100),表示小明手上的奖票的数量。 然后是N个正整数JP(1<=JP<=100),每个数字表示一张奖票的编原创 2021-12-06 21:35:06 · 1370 阅读 · 0 评论 -
6-4 多线程编程:使用多线程同步与通信,模拟实现售票系统的售票和退票过程。 (20 分)
使用synchronized实现同步控制,并使用wait()和notify()实现线程之间的通信。编程要求如下:可售出票的数量为一个固定值(total),从键盘读入。当余票的数量足够出售时(余票数量大于客户购买票数),则先售票;如果没有余票了(票数为0)或余票数量不够了(余票数量小于客户购买票数),则需要等待退票。退票后,如果余票足够出售,则又开始售票。退票规则:有票被售出,才能退票。如果退票数大于已售票总数,也只能退回已售出票的实际数量。比如:已售出3张票,第一次退回了2张票,第2次就只能退原创 2021-11-15 20:25:57 · 2990 阅读 · 4 评论 -
6-3 多线程累加 (10 point(s))
启动10个线程,第一个线程从1加到10,第二个线程从11加到20…第十个线程从91加到100,最后再把10个线程结果相加。线程类的已经完成,请完成Main类,实现输出。裁判测试程序样例:class Thread_test extends Thread{ int number; public static int sum; public Thread_test(int n) //构造函数 { number=n; } public stati原创 2021-11-08 11:26:11 · 1031 阅读 · 3 评论 -
6-6 根据要求,使用泛型和LinkedList编写StringList类,实现QQ号码查找的功能。 (30 分)
已知数组存放一批QQ号码,QQ号码最长为11位,最短为5位: String[] strs = {“12345”,“67891”,“12347809933”,“98765432102”,“67891”,“12347809933”}。 将该数组里面的所有QQ号都存放在LinkedList中,然后遍历链表,将list中第一个指定长度的QQ号查找出来;如果不存在指定长度的QQ号,则输出“not exist”。Main类:在main方法中,调用constructList方法将strs中的字符串存入一个String的原创 2021-10-28 20:38:56 · 2860 阅读 · 0 评论 -
PTA/6-5 编写Student类,使用泛型和集合框架编写StudentList类,实现计算班级平均分的功能。 (10 分)
bug记录贴题目要求如下:Main类:在main方法中,调用constructStudentList方法构建一个Worker对象链表,调用computeAverageScore方法计算一个班级的平均分并输出到屏幕。 根据要求,编写Student类和StudentList类。Student类的编程要求如下:成员变量包括:学生姓名(String name)、班级编码(String classCode)、分数(int score)根据程序需求编写构造方法。根据程序需求编写set和get方法。Stud原创 2021-10-26 13:33:58 · 1193 阅读 · 0 评论 -
6-4 指定位置输出字符串 (8 分)
本题要求实现一个函数,对给定的一个字符串和两个字符,打印出给定字符串中从与第一个字符匹配的位置开始到与第二个字符匹配的位置之间的所有字符。函数接口定义:char *match( char *s, char ch1, char ch2 );函数match应打印s中从ch1到ch2之间的所有字符,并且返回ch1的地址。裁判测试程序样例:#include <stdio.h>#define MAXS 10char *match( char *s, char ch1, char ch2原创 2021-03-29 20:19:28 · 2501 阅读 · 0 评论 -
7-10 组合数的和 (8分)
#include<stdio.h>int main(){ int n,i,j,sum=0; scanf("%d",&n); int a[n]; for (i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n;i++) { for(j=0;j<n;j++) if(j!=i) { sum+=a[i]*10; sum+=a[j]; } } printf("%.原创 2020-11-21 11:08:05 · 778 阅读 · 0 评论 -
7-9 简化的插入排序 (10分)
#include<stdio.h>int main(){ int n,i,j=0; scanf("%d",&n); int a[n]; for (i=0;i<n;i++) { scanf("%d",&a[i]); } int x; scanf("%d",&x); for (i=0;x>a[i]&&i<n;i++) { printf("%d ",a[i]); } j=i; printf("%d.原创 2020-11-21 10:52:25 · 1250 阅读 · 0 评论 -
7-8 求一批整数中出现最多的个位数字 (10分)
本题容易错在没有考虑到输入的数是0的情况#include<stdio.h>int main(){ int n,i,x,j,max,num; scanf("%d",&n); int a[n],shu[10]={0}; for (i=0;i<n;i++) { scanf("%d",&a[i]); } for (i=0;i<n;i++) { if (a[i]==0) shu[0]++; else { x=a[i];原创 2020-11-21 10:06:05 · 740 阅读 · 0 评论