- 博客(100)
- 资源 (1)
- 收藏
- 关注
原创 1099: 角谷猜想(多实例测试)ZZULIOJ
1099: 角谷猜想(多实例测试)这就是本OJ的100题了,相信大多数学校在大一阶段100题就足够完成目标了,后续题目会以合集形式更新(欢迎关注)题目描述任何一个自然数,如果是偶数,就除以2,如果是奇数,就乘以3再加1。最后,经过若干次迭代得到1。也就是说,不管怎样迭代,不断除以2以后,最后是1。现在给你一个自然数n,求出它转变为1所需要的步数。输入输入数据有多组,每组输入包含一个自然数n。测试数据保证输入数据及中间结果都在int范围内。输出对每组输入,输出经过角谷猜想变成1的步数。样例输入
2020-07-12 11:43:49 1142
原创 1098: 复合函数求值(函数专题) ZZULIOJ
1098: 复合函数求值(函数专题)题目描述求复合函数F(G(x)),其中函数F(x)=|x-3|+|x+1|,函数G(x)=x^2-3x。要求编写函数funF()和funG()分别求F(x)和G(x),其余功能在main()中实现。double funF(double x){//函数返回F(x)的值;}double funG(double x){//函数返回G(x)的值;}本题如果是C/C++代码提交,只需要提交funF和funG函数的定义部分,提交其它内容,编译出错。输入输入一
2020-07-12 11:41:52 1081
原创 1097: 计算平均成绩(函数专题) ZZULIOJ
1097: 计算平均成绩(函数专题)题目描述输入某位同学各门课的成绩,输出平均成绩。输入的成绩均为五级制成绩,五级制成绩转换为百分之成绩的规则如下:'A’转换为百分之成绩为95分,'B’对应85分,C对应75分,'D’对应65分,‘E’对应40分。 输出的平均成绩为一个实数,保留1位小数。要求程序定义一个getScore()函数和一个main()函数,getScore()函数返回一个等级对应的分数,其余功能在main()函数中实现。int getScore(char g){//把等级g转换成对应
2020-07-12 11:41:06 1137
原创 1096: 水仙花数(函数专题) ZZULIOJ
1096: 水仙花数(函数专题)题目描述春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+33。现在要求输出所有在m和n范围内的水仙花数。要求程序定义一个narcissus()函数和一个main()函数,narcissus()函数判断一个整数n是否为水鲜花数,其余功能在main()函数中实现。int narcissus(int n){//判断n是否为水仙花数, 若是函数返回1
2020-07-12 11:40:04 2391
原创 1095: 时间间隔(多实例测试) ZZULIOJ
1095: 时间间隔(多实例测试)题目描述从键盘输入两个时间点(24小时制),输出两个时间点之间的时间间隔,时间间隔用“小时:分钟:秒”表示。要求程序定义如下两个函数,并在main()中调用这两个函数实现相应的功能,其中main函数系统已经实现,你只需要完成下面这两个函数的定义。int HmsToS(int h, int m, int s) // 三个参数分别为用于表示一个时间点的时、分、秒{//把时分秒转换成秒并返回。}void PrintTime(int s); //形参s
2020-07-12 11:23:55 1138
原创 1094: 统计元音(函数专题) ZZULIOJ
1094: 统计元音(函数专题)题目描述输入一个字符串,统计其中元音字母的个数。要求使用函数vowel()用来判断是否为元音,其余功能在main()函数中实现。int vowel(char ch){//如果ch是元音,返回1,否则返回0}本题如果是C/C++代码提交,只需要提交vowel函数的定义部分,提交其它内容,编译出错。输入输入一个字符串,长度不超过1000,以回车符结束。输出输出一个整数,表示元音字母个数。输出单独占一行。样例输入 CopyHello world!样例输出
2020-07-12 11:22:38 1432
原创 1093: 验证哥德巴赫猜想(函数专题) ZZULIOJ
1093: 验证哥德巴赫猜想(函数专题)题目描述哥德巴赫猜想大家都知道一点吧。我们现在不是想证明这个结论,而是对于任给的一个不小于6的偶数,来寻找和等于该偶数的所有素数对。做好了这件实事,就能说明这个猜想是成立的。要求程序定义一个prime()函数和一个main()函数,prime()函数判断一个整数n是否是素数,其余功能在main()函数中实现。int prime(int n){//判断n是否为素数, 若n为素数,本函数返回1,否则返回0}对于C/C++代码的提交,本题要求必须通过定义pr
2020-07-12 11:21:37 634
原创 1092: 素数表(函数专题) ZZULIOJ
1092: 素数表(函数专题)题目描述输入两个正整数m和n,输出m和n之间的所有素数。要求程序定义一个prime()函数和一个main()函数,prime()函数判断一个整数n是否是素数,其余功能在main()函数中实现。int prime(int n){//判断n是否为素数, 若n为素数,本函数返回1,否则返回0}对于C/C++代码的提交,本题要求必须通过定义prime函数和main函数实现,否则,提交编译错误,要提交完整的程序。输入输入两个正整数m和n,m<=n,且都在int范
2020-07-12 11:20:11 2301
原创 1091: 童年生活二三事(多实例测试) ZZULIOJ
1091: 童年生活二三事(多实例测试)题目描述Redraiment小时候走路喜欢蹦蹦跳跳,他最喜欢在楼梯上跳来跳去。 但年幼的他一次只能走上一阶或者一下子蹦上两阶。 现在一共有N阶台阶,请你计算一下Redraiment从第0阶到第N阶共有几种走法。输入输入包括多组数据。 每组数据包括一行:N(1≤N≤40)。 输入以0结束输出对应每个输入包括一个输出。 为redraiment到达第n阶不同走法的数量。样例输入 Copy130样例输出 Copy1323456789
2020-07-12 11:18:41 1381 1
原创 1090: 整数幂(多实例测试)ZZULIOJ
1090: 整数幂(多实例测试)题目描述求A^B的最后三位数表示的整数(1<=A,B<=1000)输入第一行输入一个整数n,表示有n个测试实例,接着有n行,每行一个实例,给出两个正整数A,B输出针对每个测试实例,输出A^B的最后三位(没有前导0) ,单独占一行。样例输入 Copy22 312 6样例输出 Copy8984 ?1234567891011121314151617181920
2020-07-12 11:17:34 920
原创 1089: 阶乘的最高位 ZZULIOJ
1089: 阶乘的最高位题目描述输入一个正整数n。输出n!的最高位上的数字。输入输入一个正整数n(n不超过1000)。输出输出n!的最高位上的数字。样例输入 Copy1000样例输出 Copy4提示注意double类型溢出问题。#include<stdio.h>#include<math.h>int main(){ int n,i; double fact; scanf("%d",&n); fact=1.0; fo
2020-07-12 11:16:44 1199
原创 1088: 手机短号 (多实例) ZZULIOJ
1088: 手机短号 (多实例)题目描述大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。现在,如果给你一个11位长的手机号码,你能找出对应的短号吗?输入输入数据的第一行是一个N(N <= 200),表示有N组输入数据,接下来的N行每一行为一个11位的手机号码。输出输出应包括N行,每行包括一个对应的短号,输出应与输
2020-07-12 11:14:46 1090
原创 1087: 获取出生日期(多实例测试) ZZULIOJ
1087: 获取出生日期(多实例测试)题目描述输入某人的18位身份证号,输出其出生日期。输入多实例测试。首先输入一个整数n,表示测试实例的个数,然后是n行,每行是一个18位身份证号。输出对于输入的每个身份证号,输出一行,即其对应的出生日期,输出格式为:yyyy-mm-dd。样例输入 Copy3410106199411178657410104198202095479410122197911218097样例输出 Copy1994-11-171982-02-091979-11-21
2020-07-10 18:58:51 864
原创 1086: ASCII码排序(多实例测试) ZZULIOJ
##题目描述输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。输入输入数据有多组,每组占一行,有三个字符组成,之间无空格。输出对于每组输入数据,输出一行,字符中间用一个空格分开。样例输入 Copyqweasdzxc样例输出 Copye q wa d sc x z提示注意:scanf("%c",&ch)格式读字符时,所有字符都是有效输入,如回车符、空格符等,所以每行读取字符之后要处理最后的回车符。#include<stdio.h>int
2020-07-10 18:57:33 672
原创 1085: 求奇数的乘积(多实例测试) ZZULIOJ
1085: 求奇数的乘积(多实例测试)题目描述给你n个整数,求他们中所有奇数的乘积输入输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。输出输出每组数中的所有奇数的乘积,对于测试实例,输出一行。样例输入 Copy3 1 2 34 2 3 4 5样例输出 Copy315#include<stdio.h>#include<math.h> int main()
2020-07-10 18:56:49 1016
原创 1084: 计算两点间的距离(多实例测试) ZZULIOJ
1084: 计算两点间的距离(多实例测试)题目描述入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。输入输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。输出对于每组输入数据,输出一行,结果保留两位小数。样例输入 Copy0 0 0 10 1 1 0样例输出 Copy1.001.41#include<stdio.h>#include<math.h>int main(){ double
2020-07-10 18:56:00 1083
原创 1083: 数值统计(多实例测试) ZZULIOJ
1083: 数值统计(多实例测试)题目描述统计给定的n个数中,负数、零和正数的个数输入输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个实数;如果n=0,则表示输入结束,该行不做处理。输出对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。样例输入 Copy6 0 1 2 3 -1 05 1 2 3 4 0.50样例输出 Copy1 2 30 0 5#include<stdio.h>
2020-07-10 18:55:13 712
原创 1082: 敲7(多实例测试) ZZULIOJ
1082: 敲7(多实例测试)题目描述 输出7和7的倍数,还有包含7的数字例如(17,27,37…70,71,72,73…)输入首先输入一个整数t,表示有t组数据。然后有t行,每行一个整数N。(N不大于30000)输出对于每组数据 ,输出从小到大排列的不大于N的与7有关的数字。每组数据占一行,每个数字后面有一个空格;样例输入 Copy22030样例输出 Copy7 14 177 14 17 21 27 28 ?123456
2020-07-10 18:54:26 1822
原创 1081: n个数求和 (多实例测试) ZZULIOJ
##题目描述求n个整数的和。输入输入第一行是一个整数T,表示有T组测试实例;每组输入包括两行:第一行一个数n表示接下来会有n个整数;第二行空格隔开的n个数。输出对于每组输入,在一行输出n个数的和(保证和不会超出int类型的范围)!样例输入 Copy231 2 34-1 0 -19 22样例输出 Copy62提示初做多实例测试,注意累加和变量赋初值的位置。#include<stdio.h>int main(){ int t,a[14],b,c,
2020-07-10 18:53:41 1063 1
原创 1080: a+b(多实例测试3) ZZULIOJ
1080: a+b(多实例测试3)题目描述计算A+B输入输入数据有多组。每组一行,为两个整数A, B。输入0 0表示输入结束,该组输入不用处理。输出对每行输入,输出A+B的值,单独占一行。样例输入 Copy1 20 0样例输出 Copy3提示输入0 0结束,本题可以在循环条件中读取键盘输入并同时进行判断:while(scanf("%d%d",&a,&b), a!=0||b!=0)printf("%d\n",a+b);#include<stdio.h&
2020-07-10 18:52:42 912
原创 1079: a+b(多实例测试2) ZZULIOJ
1079: a+b(多实例测试2)题目描述计算A+B输入输入数据有多组。每组一行,为整数A, B。输出对每行输入,输出A+B的值,单独占一行。样例输入 Copy1 23 4样例输出 Copy37提示此类多实例测试解决方案:while(scanf("%d%d",&a,&b)!=EOF){//读入一组测试数据//处理//输出结果}注:EOF是宏定义常量-1,scanf函数遇到文件结束标志函数返回值是-1,键盘输入时,ctrl+z表示输入结束例如:w
2020-07-10 18:51:56 548
原创 1078: a+b(多实例测试1) ZZULIOJ
1078: a+b(多实例测试1)题目描述计算A+B输入输入第1行为一个整数n(1≤n≤10),代表测试的组数。下面有n组测试数据,每组1行,为2个整数,为A, B。输出对每行输入,输出A+B的值,单独占一行。样例输入 Copy21 23 4样例输出 Copy37提示此类多实例测试解决方案:scanf("%d",&n);for(i=1;i<=n;i++){//读入、处理一组测试实例}#include<stdio.h>int main()
2020-07-10 18:50:59 1488
原创 1077: 空心菱形 ZZULIOJ
1077: 空心菱形**题目描述输入一个整数n,(1<=n<=20),输出一个空心菱形,其中每个边由n个’‘组成。输入输入包含一个整数,n(1<=n<=20)输出输出一个空心菱形,每个边由n个’'组成样例输入 Copy5样例输出 Copy#include<stdio.h>int main(){ int n,i,j; scanf("%d",&n); for(i=1;i<=n;i++) {
2020-07-10 18:50:06 707
原创 1076: 三位数求解 ZZULIOJ
1076: 三位数求解题目描述已知xyz+yzz=n,其中n是一个正整数,x、y、z都是数字(0-9),编写一个程序求出x、y、z分别代表什么数字。如果无解,则输出“No Answer”注意:xyz和yzz表示一个三位数,而不是表示xyz和yzz。输入输入一个正整数n。输出输出一行,包含x、y、z的值,每个数值占4列。样例输入 Copy532样例输出 Copy3 2 1提示注意一个三位数的百位数字不能为0。#include<stdio.h>#include&
2020-07-10 18:48:50 1509
原创 1075: 聚餐人数统计 ZZULIOJ
1075: 聚餐人数统计题目描述马克思手稿中有这样一道趣味数学题:男人、女人和小孩总计n个人,在一家饭店里吃饭,共花了cost先令,每个男人各花3先令,每个女人各花2先令,每个小孩各花1先令,请用穷举法编程计算男人、女人和小孩各有几个。输入输入两个正整数,表示人数n和花费cost。输出若问题有解,则输出所有解,每行输出三个数据,代表男人、女人和小孩的人数,用空格分隔;若问题无解,则输出“No answer"。样例输入 Copy30 50样例输出 Copy0 20 101 18 112
2020-07-10 18:46:04 672
原创 1074: 百钱买百鸡 ZZULIOJ
题目描述百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用100文钱买100只鸡,公鸡、母鸡、小鸡各买多少只?本程序要求解的问题是:给定一个正整数n,用n文钱买n只鸡,问公鸡、母鸡、小鸡各买多少只?输入输入一个正整数n(n<=100)。输出如果有解,种组合占一行,包含公鸡、母鸡、小鸡的个数,用正整数表示,每个数据占4列。公鸡母鸡小鸡个数均大于等于0,按公鸡数目从小到大输出,公鸡数目相同按母鸡数目从小到大输出,以此类推。如果无解,输出“No Answer”。样例输入 Cop
2020-07-09 09:51:35 1221
原创 1073: 级数求和 ZZULIOJ
1073: 级数求和题目描述已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。输入键盘输入 k输出屏幕输出 n样例输入 Copy1样例输出 Copy2#include<stdio.h>int main(){ int k,n=0,i=1; double a,b,c,d,sn=0; scanf("%d",&k)
2020-07-09 09:47:44 863
原创 1072: 青蛙爬井 ZZULIOJ
1072: 青蛙爬井题目描述有一口深度为high米的水井,井底有一只青蛙,它每天白天能够沿井壁向上爬up米,夜里则顺井壁向下滑down米,若青蛙从某个早晨开始向外爬,对于任意指定的high、up和down值(均为自然数),计算青蛙多少天能够爬出井口?输入输入3个正整数:high、up和down。输出输出一个整数,表示天数。输出单独占一行。样例输入 Copy10 2 1样例输出 Copy9提示循环模拟。注意,不能简单地认为每天上升的高度等于白天向上爬的距离减去夜间下滑的距离,因为若白天
2020-07-09 09:46:36 622
原创 1071: 分解质因子 ZZULIOJ
题目描述将一个正整数分解质因数,例如,输入90,输出2 3 3 5。输入输入一个正整数n(2<=n<=2000)。输出从小到大输出n的所有质因子,每两个数之间空一格。样例输入 Copy20样例输出 Copy2 2 5提示注意,最后一个数后面没有空格!!#include<stdio.h>int main(){ int i, n; scanf("%d", &n); for(i = 2; n > 1; i++) {
2020-07-09 09:45:43 949
原创 1070: 小汽车的位置 ZZULIOJ
1070: 小汽车的位置题目描述有一辆智能小车,最初(时间为0)的位置为(0,0),我们想知道它最后的位置。小车以每小时10公里的速度向北移动(以北为y轴正向,以东为x轴正向)。小车会受到一系列依照时间戳记排序的命令,1表示“向左转”,2表示“向右转”,3表“停止”。每个命令的前面有一个时间戳记,所以我们知道该命令是何时发出的。最后一个命令一定是“停止”。我们另外假设,这辆小车非常灵活,它可以在瞬间转弯。以下列输入为例。小车在时间为5的时候收到一个“向左转”的命令1,在时间10收到一个“向右转”的命令
2020-07-09 09:44:15 634
原创 1069: 向Z同学学习 ZZULIOJ
1069: 向Z同学学习题目描述Z同学为了实现暑假去云南旅游的梦想,决定以后每天只消费1元,每花k元就可以再得到1元,一开始Z同学有M元,问最多可以坚持多少天。输入输入2个整数M, k,(2 <= k <= M <= 1000)。输出输出一个整数,表示M元可以消费的天数。样例输入 Copy4 3样例输出 Copy5#include<stdio.h>int main(){ int M,k,x=0,y=0,i,t; scanf("%d %d
2020-07-09 09:43:07 715
原创 1068: 二进制数 ZZULIOJ
1068: 二进制数*题目描述将一个二进制数,转换为对应的十进制数。输入输入一个二进制数,以回车结束。该二进制数为正数,长度不超过31。输出输出一个整数,为该二进制数对应的十进制数。样例输入 Copy100000000001样例输出 Copy2049提示(1) 整数运算尽量避免pow之类的double类型函数,以免截断取整带来错误。 (2)可使用递推思想,充分利用中间结果。类似思想可参考秦九韶算法。秦九韶算法是中国南宋时期的数学家秦九韶提出的一种多项式简化算法。计算一次多项式f(x)
2020-07-09 09:40:02 1115
原创 1067: 有问题的里程表 ZZULIOJ
1067: 有问题的里程表题目描述某辆汽车有一个里程表,该里程表可以显示一个整数,为该车走过的公里数。然而这个里程表有个毛病:它总是从3变到5,而跳过数字4,里程表所有位(个位、 十位、百位等)上的数字都是如此。例如,如果里程表显示339,汽车走过1公里之后,该里程表显示350。输入输入一个整数num,表示里程表显示的数值,1 < num < 1000,且一定不含整数4。输出输出一个整数,为该汽车实际行驶的公里数。例如,如果该里程表显示55,则实际走过的公里 数是40。样例输入 C
2020-07-09 09:38:51 559
原创 1066: 字符分类统计 ZZULIOJ
1066: 字符分类统计**题目描述输入一行字符,以回车符作为输入结束的标志。统计其中英文字母、数字字符和其他字符的个数。输入多个字符,以回车符结束,回车符不作为有效字符。有效字符个数不超过100。输出输出分3行,格式见输出样例。样例输入 CopyAbse 4+5*3=?样例输出 Copyletter:4digit:3other:5**#include<stdio.h>#include<ctype.h> int main(){ char c
2020-07-09 09:37:34 781
原创 1065: 统计数字字符的个数 ZZULIOJ
1065: 统计数字字符的个数题目描述输入一行字符,以回车符作为输入结束的标志。统计其中数字字符的个数。输入多个字符,以回车符结束,回车符不作为有效字符。输出输出一个整数,表示数字字符的个数。样例输入 Copy12abrt12@2013样例输出 Copy8#include<stdio.h>#include<ctype.h>int main(){ char ch; int count; count=0; while(ch=ge
2020-07-09 09:35:04 1213
原创 1064: 加密字符 ZZULIOJ
1064: 加密字符题目描述从键盘输入一批字符,以@结束,按要求加密并输出。输入从键盘输入一批字符,占一行,以@结束。输出输出占一行加密规则:1)所有字母均转换为小写。2)若是字母’a’到’y’,则转化为下一个字母。3)若是’z’,则转化为’a’。4)其它字符,保持不变。样例输入 CopyKyh520@样例输出 Copylzi520#include<stdio.h>int main(){ char ch; while(ch=getchar(),
2020-07-09 09:32:20 1505
原创 1063: 最大公约与最小公倍 ZZULIOJ
1063: 最大公约与最小公倍题目描述输入两个正整数,输出其最大公约数和最小公倍数。输入输入两个正整数n和m(n,m<=1000000)。输入保证最终结果在int范围内。输出输出两个整数,用空格隔开。表示m和n的最大公约数和最小公倍数。样例输入 Copy4 6样例输出 Copy2 12提示注意运算过程中的溢出问题#include<stdio.h>int main(){ int m,n,a,x,y,z,i,temp; scanf("%d %d",
2020-07-09 09:30:59 2024
原创 1062: 最大公约数 ZZULIOJ
1062: 最大公约数题目描述输入两个不大于10的9次方的正整数,输出其最大公约数。输入输入两个正整数m和n,数据之间用空格隔开。输出输出一个整数,表示m和n的最大公约数。样例输入 Copy4 6样例输出 Copy2提示请查阅欧几里得定理及辗转相处法。#include<stdio.h>int main(){ int m,n,a; scanf("%d %d",&m,&n); while(m%n!=0) {
2020-07-09 09:29:40 944
原创 1061: 顺序输出各位数字 ZZULIOJ
1061: 顺序输出各位数字题目描述输入一个不大于10的9次方的正整数,从高位开始逐位分割并输出各位数字。输入输入一个正整数n,n是int型数据输出依次输出各位上的数字,每一个数字后面有一个空格,输出占一行。例如,输入 12345 ,输出 1 2 3 4 5样例输入 Copy12345样例输出 Copy1 2 3 4 5提示注意整数运算避免使用double类型的函数如pow()。本题可先用一个循环计算出最高位的位权h,然后再用一个循环,循环内容为: 输出最高位(n/h)、扔掉最高位
2020-07-09 09:28:32 3079
原创 1060: 逆序数字 ZZULIOJ
1060: 逆序数字题目描述输入一个正整数,将其逆序输出,每个数字后有一个空格。输入输入一个正整数n,你可以假设n在int范围内输出将n按其逆序输出,每个数字后有一个空格,输出占一行。例如,输入12354,输出4 5 3 2 1样例输入 Copy12354样例输出 Copy4 5 3 2 1提示整数n对10取模可得到个位上的数字,而利用整数商是整数这一特点,整数n除以10的商正好“扔掉”了个位上的数字#include<stdio.h>int main(){
2020-07-06 10:39:54 929 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人