- 博客(71)
- 问答 (1)
- 收藏
- 关注
原创 5-1 5_2
5-1选择法排序:本题要求将给定的n个整数从小到大排序后输出。输出时相邻数字中间用一个空格分开,行末不得有多余空格。#include <stdio.h># define MAXN 10int main(){ int i, index, k, n, temp; int a[MAXN]; scanf("%d", &n); for(i = 0; i < n; i++){ scanf("%d", &a[i]);
2020-12-17 08:11:24
3013
原创 7-1 个位数统计
给定一个 k 位整数 N=dk−1 10k−1 +⋯+d1 101 +d0 (0≤di ≤9, i=0,⋯,k−1, dk−1 >0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。输入格式:每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。输出格式:对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及
2020-12-16 23:21:19
1097
原创 6-4 数组指针与二维数组的关系
利用数组指针p将main函数中输入的二维数组a的所有元素输出, 要求先按行的顺序输出,然后再以列的顺序输出, 其中输出整型格式用 “%3d”, (测试用数据大小不要超过2位数)。函数接口定义:void reOut(int (*p)[3]);裁判测试程序样例:#include <stdio.h>int main(){ void reOut(int (*p)[3]); int i, j, a[2][3], (*p)[3]; for (i = 0; i <
2020-12-16 23:17:41
1488
原创 6-3 移动字母
本题要求编写函数,将输入字符串的前3个字符移到最后。函数接口定义:void Shift( char s[] );其中char s[]是用户传入的字符串,题目保证其长度不小于3;函数Shift须将按照要求变换后的字符串仍然存在s[]里。裁判测试程序样例:#include <stdio.h>#include <string.h>#define MAXS 10void Shift( char s[] );void GetString( char s[] ); /*
2020-12-16 23:16:16
833
原创 6-2 输入年份和天数,输出对应的年、月、日
要求定义和调用函数month_day ( year, yeardy, *****pmonth, *pday),通过参数pmonth和pday返回计算得出的月和日。例如,输入2000和61,分别返回3和1,即2000年的第61天是3月1日。函数接口定义:void month_day ( year, yeardy, *pmonth, *pday)其中year是年,yearday是天数,****pmonth和pday是计算得出的月和日。裁判测试程序样例:# include <stdio.h>
2020-12-16 23:14:52
805
原创 6-1 拆分实数的整数与小数部分
本题要求实现一个拆分实数的整数与小数部分的简单函数。函数接口定义:void splitfloat( float x, int *intpart, float *fracpart );其中x是被拆分的实数(0≤x<10000),intpart和fracpart分别是将实数x拆分出来的整数部分与小数部分。裁判测试程序样例:#include <stdio.h>void splitfloat( float x, int *intpart, float *fracpart );i
2020-12-16 23:13:06
1176
2
原创 5——3
程序功能是找到二维数组每一行的最大值。(占坑)#include <stdio.h>void findmax(int (*pArr)[4], int *pmax, int m, int n);int main(void){ int arr[3][4], *pa, max[3], i; pa = arr[0]; for (i=0; i<12; i++) { scanf("%d", pa++); } findmax(arr,max,3,4
2020-12-16 19:34:09
1031
原创 5——2
程序功能是将二维数组的元素值输出到屏幕上(占坑)#include<stdio.h>int main(void){ int a[2][3]={1, 2, 3, 4, 5, 6}, i, j; int (*p)[3]; p = a; for (i=0; i<2; i++) { for (j=0; j<3; j++) { printf("%d ", *(*(p+i)+j));
2020-12-16 19:32:59
1857
原创 5_1
本程序在数组中同时查找最大元素和最小元素的下标,分别存放在函数main()的max和min变量中。(占坑)#include <stdio.h>void find(int *, int, int *, int *);int main(void){ int max, min, a[]={5,3,7,9,2,0,4,1,6,8}; find(a,10,&max,&min); printf("%d,%d\n", max, min); return 0;}vo
2020-12-16 19:32:13
141
原创 7-6 12-24小时制
编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。输入格式:输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。提示:在scanf的格式字符串中加入:,让scanf来处理这个冒号。输出格式:在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的
2020-11-29 22:05:18
2135
原创 7-5 厘米换算英尺英寸
如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。输入格式:输入在一行中给出1个正整数,单位是厘米。输出格式:在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。输入样例:170输出样例:5 6#include <stdio.h>#include <stdlib.h>int main()
2020-11-29 22:04:23
543
原创 7-4 计算火车运行时间
本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。输入格式:输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数(00-23)和2位分钟数(00-59),假设出发和到达在同一天内。输出格式:在一行输出该旅途所用的时间,格式为“hh:mm”,其中hh为2位小时数、mm为2位分钟数。输入样例:1201 1530输出样例:03:29#include<stdio.h>int main(){ in
2020-11-29 22:03:24
5816
原创 7-3 三天打鱼两天晒网
中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式:输入在一行中给出一个不超过1000的正整数N。输出格式:在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并且输出“in day N”。输入样例1:103输出样例1:Fishing in day 103输入样例2:34输出样例2:Drying in day 34#include<stdio.h&
2020-11-29 22:02:30
896
原创 7-2 逆序的三位数
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。输入格式:每个测试是一个3位的正整数。输出格式:输出按位逆序的数。输入样例:123输出样例:321#include<stdio.h>int main(){ int a,b,c,e; scanf("%d",&a); b=a/100; c=a/10%10; e=a%10; /*print
2020-11-29 22:01:20
1458
原创 7-1 卖布
顾客买布,营业员用米尺量布,把布剪好交到顾客手里。请问营业员要量几次?请编写程序,输入顾客所买布匹的长度 d,输出营业员用木尺量布的次数 n。输入格式d (单位:米)输出格式n (单位:次)样例输入18.75样例输出19样例输入210样例输出210#include<stdio.h>int main(){ double a; int b; scanf("%lf",&a); if(a-(int)a!=0) b=(
2020-11-29 22:00:24
3168
原创 7-5 A除以B
真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。输入格式:输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。输出格式:在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为Error。输出的商应保留小数点后2位。输入样例1:-1 2输出样例1:-1/2=-0.50输入样例2:1 -3输出样例2:1/(-3)=-0.33输
2020-11-29 21:57:45
1122
原创 7-4 然后是几点
有时候人们用四位数字表示一个时间,比如 1106 表示 11 点零 6 分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5 点 30 分表示为 530;0 点 30 分表示为 030。注意,第二个数字表示的分钟数可能超过 60,也可能是负数。输入格式:输入在一行中给出 2 个整数,分别是四位数字表示的起始时间、以及流逝的
2020-11-29 21:55:51
666
原创 7-3 三角形判定并计算面积
请根据给定的三条边长a、b、c判断能否构成三角形,若能构成三角形则计算出它的面积。(提示:三角形面积=sqrt(s(s-a)(s-b)(s-c)),其中s=(a+b+c)/2。)输入格式:在一行内输入三个正整数表示三条边长,中间用空格分隔。输出格式:若能构成三角形则输出其面积,保留2位小数,否则输出"Not A Valid Triangle!"。输入样例1:在这里给出一组输入。例如:3 4 5输出样例1:在这里给出相应的输出。例如:area=6.00输入样例2:在这里给出一组输入
2020-11-29 21:54:37
7046
6
原创 7-2 判断水仙花数
数学上有一种水仙花数,它的各位数字的立方和等于其本身,比如:371=33+73+1^3。编写一段程序,用于判断某一个三位正整数是否水仙花数。输入格式:输入一个三位的正整数。输出格式:判断是否水仙花数,输出Yes或No。(注意:首字符大写)输入样例:123输出样例:No#include <stdio.h>#include <stdlib.h>#include<math.h>int main(){ int n; double a,
2020-11-29 21:52:15
617
原创 乘电梯
题目内容:1教有一部电梯,每往上一层需要6秒钟,每往下一层需要4秒,每开一次门需要5秒,假设现在有N个人需要从第0层乘坐电梯上楼,请计算完成本趟运行所需要的时间。说明:1、假设最开始电梯在0层,N个人从第0层进电梯,中间不再增添新乘客;2、N个人都到达各自的楼层后,电梯需要回到0层;3、到同一楼层的人不管有几人,电梯开门的时间总共只需要5秒.输入格式:输入数据首先包含一个整数N(0 < N <= 10),表示电梯内的人数;然后是N个人要到的楼层Si( 1 <= Si <
2020-11-27 15:53:58
622
原创 7-1 星期几
今天是星期一,两天后是星期三,5天后是星期六;今天是星期六,3天后是星期二。输入格式:输入在一行中给出2个整数d和n,d表示今天是星期几(1<=d<=7),n表示几天后。输出格式:在一行中输出星期几的值(1-7)。输入样例:1 3输出样例:在这里给出相应的输出。例如:4#include<stdio.h>int main(){ int d,n; scanf("%d %d",&d,&n); if(d+n<=7)
2020-11-25 20:41:55
1023
原创 7-5 求整数的位数及各位数字之和
对于给定的正整数N,求它的位数及其各位数字之和。输入格式:输入在一行中给出一个不超过109 的正整数N。输出格式:在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。输入样例:321输出样例:3 6#include<stdio.h>int main(){ int n,i,x,sum=0; scanf("%d",&n); for(i=0;n!=0;i++) { x=n%10; sum+
2020-11-25 20:38:49
1492
原创 7-4 角谷猜想
对于一个任意自然数,使用以下规则计算得到一个新数,对新数再用此规则一直计算下去,最终肯定会得到1: (1)若是奇数,就乘3再加1; (2)若是偶数,就除以2。 编写程序,对给出的自然数n进行计算,统计最终得到1总共需要多少步。输入格式:输入一个正整数n。输出格式:统计并输出最终得到1所需的步数。输入样例:29输出样例:18#include<stdio.h>int main(){ int n,i; scanf("%d",&n); if(n=
2020-11-25 20:37:14
287
原创 7-3 求奇数和
本题要求计算给定的一系列正整数中奇数的和。输入格式:输入在一行中给出一系列正整数,其间以空格分隔。当读到零或负整数时,表示输入结束,该数字不要处理。输出格式:在一行中输出正整数序列中奇数的和。输入样例:8 7 4 3 70 5 6 101 -1输出样例:116#include<stdio.h>int main(){ int x,sum=0,i; for(i=1;x>0;i++) { scanf("%d",&x);
2020-11-25 20:35:44
1876
原创 7-2 出租车计价
本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:起步里程为3公里,起步费10元;超起步里程后10公里内,每公里2元;超过10公里以上的部分加收50%的回空补贴费,即每公里3元;营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。输入格式:输入在一行中给出输入行驶里程(单位为公里,精确到小数点后1位)与等待时间(整数,单位为分钟),其间以空格分隔。输出格式:在一行中输出乘客应支付的车费(单位为元),结果四舍五入,保留到元。输入样例1:2
2020-11-25 20:34:32
533
原创 7-1 计算油费
现在90号汽油6.95元/升、93号汽油7.44元/升、97号汽油7.93元/升。为吸引顾客,某自动加油站推出了“自助服务”和“协助服务”两个服务等级,分别可得到5%和3%的折扣。本题要求编写程序,根据输入顾客的加油量a,汽油品种b(90、93或97)和服务类型c(m - 自助,e - 协助),计算并输出应付款。输入格式:输入在一行中给出两个整数和一个字符,分别表示顾客的加油量a,汽油品种b(90、93或97)和服务类型c(m - 自助,e - 协助)。输出格式:在一行中输出应付款额,保留小数点后
2020-11-25 20:32:13
467
原创 7-5 统计素数并求和
本题要求统计给定整数M和N区间内素数的个数并对它们求和。输入格式:输入在一行中给出两个正整数M和N(1≤M≤N≤500)。输出格式:在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。输入样例:10 31输出样例:7 143/*#include <stdio.h>#include <stdlib.h>#include<math.h>int isprime(int n){ int j,a=1; if(n<2)
2020-11-25 18:42:45
1850
3
原创 7-4 求分数序列前N项和
本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+… 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,精确到小数点后两位。题目保证计算结果不超过双精度范围。输入样例:20输出样例:32.66#include <stdio.h>#include <stdlib.h>#include<math.h>int main()
2020-11-25 18:41:03
11574
7
原创 7-3 找出三位水仙花数
本题要求编写程序,输出给定正整数M和N区间内的所有三位水仙花数。三位水仙花数,即其个位、十位、百位数字的立方和等于该数本身。输入格式:输入在一行中给出两个正整数M和N(100≤M≤N≤999)。输出格式:顺序输出M和N区间内所有三位水仙花数,每一行输出一个数。若该区间内没有三位水仙花数,则无输出。如果M或者N不符合题目的要求,则输出Invalid Value.。输入样例1:100 400输出样例1:153370371输入样例2:500 600输出样例2:在这里插入代码片
2020-11-25 18:39:41
16020
4
原创 7-2 统计MOOC证书
本题要求编写程序,输入N个学生的MOOC成绩,统计优秀、合格证书的数量,以及没有获得证书的数量。学生修读程序设计MOOC,85分及以上获得优秀证书,不到85分但是60分及以上获得合格证书,不到60分则没有证书。输入格式:输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。输出格式:在一行中依次输出优秀证书、合格证书、没有获得证书的数量,中间以空格分隔。请注意,最后一个数字后没有空格。输入样例1:785 59 86 60 84 61 45输出
2020-11-25 18:36:47
21771
6
原创 7-1 到底是不是太胖了
据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材(即 | 真实体重 − 标准体重 | < 标准体重×10%)。已知市斤是公斤的两倍。现给定一群人的身高和实际体重,请你告诉他们是否太胖或太瘦了。输入格式:输入第一行给出一个正整数N(≤ 20)。随后N行,每行给出两个整数,分别是一个人的身高H(120 < H < 200;单位:厘米)和真实体重W(50 < W ≤ 300;单位:市斤),其间以空格分隔
2020-11-23 14:42:22
1936
原创 7-5 整数的分类处理
给定 N 个正整数,要求你从中得到下列三种计算结果:A1 = 能被 3 整除的最大整数A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)输入格式:输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。输出格式:在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE。输入样例 1:8
2020-11-23 14:40:24
4829
原创 6-8 九连环数列(递归版)
在国外的一本数学书中收录了各种各样的数列,其中就有这样一个数列:1, 2, 5, 10, 21, 42, 85, 170, 341, …起先大家都感到莫名其妙,不知道它有什么用。它既非等差数列,又非等比数列,也不是一些非常有名的数列。后经人指点,大家才恍然大悟,原来它是九连环数列。第 1 项为 1,表明解开 1 个环需 1 步;第 2 项为 2,表明解开 2 个环需要 2 步;…,以此类推,第 9 项为 341,表明解开 9 个环需要 341 步,…,以此类推。请编写递归函数,求九连环数列中任一项的值
2020-11-23 14:37:49
2869
原创 7-4 输出整数各位数字
本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。输入格式:输入在一行中给出一个长整型范围内的非负整数。输出格式:从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。输入样例:123456输出样例:1 2 3 4 5 6 #include<stdio.h>#include<math.h>int main() { int n,a,i=1,b; scanf("%d",&n); a=n; i
2020-11-22 10:30:29
3236
1
原创 7-3 约分最简分式
分数可以表示为分子/分母的形式。编写一个程序,要求用户输入一个分数,然后将其约分为最简分式。最简分式是指分子和分母不具有可以约分的成分了。如6/12可以被约分为1/2。当分子大于分母时,不需要表达为整数又分数的形式,即11/8还是11/8;而当分子分母相等时,仍然表达为1/1的分数形式。输入格式:输入在一行中给出一个分数,分子和分母中间以斜杠/分隔,如:12/34表示34分之12。分子和分母都是正整数(不包含0,如果不清楚正整数的定义的话)。提示:在scanf的格式字符串中加入/,让scanf来处理这
2020-11-22 10:28:44
1099
原创 7-2 数字金字塔
打印n层的数字金字塔。输入格式:输入一个正整数n,表示层数。输出格式:输出共n行,排列成金字塔形状。每个数字后带一空格。最末一行的数字顶格显示。输入样例:5输出样例: 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 #include<stdio.h>#include<math.h>int main() { int n,i,j,k,g; scanf
2020-11-22 10:27:56
1870
原创 7-1 求特殊方程的正整数解
本题要求对任意给定的正整数N,求方程X2+Y2 =N的全部正整数解。输入格式:输入在一行中给出正整数N(≤10000)。输出格式:输出方程X2+Y2 =N的全部正整数解,其中X≤Y。每组解占1行,两数字间以1空格分隔,按X的递增顺序输出。如果没有解,则输出No Solution。输入样例1:884输出样例1:10 2820 22输入样例2:11输出样例2:No Solution#include <stdio.h>#include <stdlib.h
2020-11-22 10:23:18
478
原创 7-1 求算式的和[2]
定义函数main(),输入正整数n,计算并输出下列算式的值。要求调用函数f(n)计算n+(n+1)+…+(2n-1),函数返回值类型是double。 sum=输入格式:输入在一行中给出1个正整数n。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位,请注意等号的左右各有一个空格。题目保证计算结果不超过双精度范围。输入样例:在这里给出一组输入。例如:3输出样例:在这里给出相应的输出。例如:sum = 1.283333#include<stdio.
2020-11-22 10:19:22
1518
原创 6-5 使用函数求素数和
本题要求实现一个判断素数的简单函数、以及利用该函数计算给定区间内素数和的函数。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。函数接口定义:int prime( int p );int PrimeSum( int m, int n );其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数PrimeSum返回区间[m, n]内所有素数的和。题目保证用户传入的参数m≤n。裁判测试程序样例:#include <stdio.h>#include <m
2020-11-22 10:14:14
2838
原创 6-4 使用函数输出一个整数的逆序数
本题要求实现一个求整数的逆序数的简单函数。函数接口定义:int reverse( int number );其中函数reverse须返回用户传入的整型number的逆序数。裁判测试程序样例:#include <stdio.h>int reverse( int number );int main(){ int n; scanf("%d", &n); printf("%d\n", reverse(n)); return 0;}/
2020-11-22 10:12:43
7262
10
空空如也
linux添加系统调用报错,这种情况怎么解决
2021-06-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人