C语言
21 Aurora
21级码农菜鸟
展开
-
2021-11-26
6-10 递归求阶乘和 (15 分)本题要求实现一个计算非负整数阶乘的简单函数,并利用该函数求 1!+2!+3!+...+n! 的值。函数接口定义:double fact( int n );double factsum( int n );函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+...+n! 的值。题目保证输入输出在双精度范围内。裁判测试程序样例:#include <stdio.h>double fact( int n )原创 2021-11-26 22:41:39 · 529 阅读 · 0 评论 -
2021.11.25(PTA)6-9
递归求Fabonacci数列 (10 分)本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:f(n)=f(n−2)+f(n−1)(n≥2),其中f(0)=0,f(1)=1。函数接口定义:int f( int n );函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。裁判测试程序样例:#include <stdio.h>int f( int n );int main(){ in..原创 2021-11-25 21:20:47 · 238 阅读 · 0 评论 -
2021.11.24(PTA)6-8
6-8 爬楼梯 (15 分)楼梯有 n 级台阶,每一步可以跨越 1 ~ 2 级台阶。求从第0级台阶到第n级台阶一共有多少种上法。函数接口定义:在这里描述函数接口。例如:int Climb(int step);说明:参数 step 是台阶数。题目保证n≤15裁判测试程序样例:#include <stdio.h>int Climb(int step);int main(){ int n; scanf("%d", &n); pri原创 2021-11-24 22:10:35 · 460 阅读 · 0 评论 -
2021.11.23
6-7 使用函数计算两点间的距离 (10 分)本题要求实现一个函数,对给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离。函数接口定义:double dist( double x1, double y1, double x2, double y2 );其中用户传入的参数为平面上两个点的坐标(x1,y1)和(x2,y2),函数dist应返回两点间的距离。裁判测试程序样例:#include <stdio.h>#include <ma..原创 2021-11-23 21:07:13 · 428 阅读 · 0 评论 -
2021.11.22
6-6 使用函数输出水仙花数 (20 分)水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=13+53+33。 本题要求编写两个函数,一个判断给定整数是否水仙花数,另一个按从小到大的顺序打印出给定区间(m,n)内所有的水仙花数。函数接口定义:int narcissistic( int number );void PrintN( int m, int n );函数narcissistic判断number是否为水仙花数,是则返回1,否则返回0。原创 2021-11-22 21:21:34 · 319 阅读 · 0 评论 -
2021.11.21
本题要求实现一个计算xn(n≥0)的函数。函数接口定义:double mypow( double x, int n );函数mypow应返回x的n次幂的值。题目保证结果在双精度范围内。裁判测试程序样例:#include <stdio.h>double mypow( double x, int n );int main(){ double x; int n; scanf("%lf %d", &x, &n); pri原创 2021-11-21 22:05:44 · 579 阅读 · 0 评论 -
2021.11.20
6-3 空心的数字金字塔 (15 分)本题要求实现一个函数,输出n行空心的数字金字塔。函数接口定义:void hollowPyramid( int n );其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行空心的数字金字塔,请注意,最后一行的第一个数字前没有空格。裁判测试程序样例:#include <stdio.h>void hollowPyramid ( int n );int main(){ int n原创 2021-11-21 22:03:54 · 686 阅读 · 0 评论 -
2021.11.19
6-3 空心的数字金字塔 (15 分)本题要求实现一个函数,输出n行空心的数字金字塔。函数接口定义:void hollowPyramid( int n );其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行空心的数字金字塔,请注意,最后一行的第一个数字前没有空格。裁判测试程序样例:#include <stdio.h>void hollowPyramid ( int n );int main(){ int n原创 2021-11-19 21:21:47 · 364 阅读 · 0 评论 -
2021.11.18
本题要求实现函数输出n行字符金字塔。函数接口定义:void CharPyramid( int n, char ch);其中n和ch是用户传入的参数,n为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行由字符ch构成的字符金字塔。注意每个字符后有一个空格。裁判测试程序样例:#include <stdio.h>void CharPyramid( int n, char ch );int main(){ int n; char ch原创 2021-11-18 21:45:52 · 363 阅读 · 0 评论 -
C语言经典五十题-第四期
【程序16】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。1.程序分析:利用辗除法。2.程序源代码:代码如下:#include<stdio.h>int main(){ int a,b,num1,num2,temp; printf("please input two numbers:\n"); scanf("%d %d",&num1,&num2); if(num1<num2)/*交换两个数,使大数放在num1上*/ {转载 2021-11-17 22:08:46 · 234 阅读 · 0 评论 -
2021.11.17
使用函数输出一个实心的字符矩形 (15 分)本题要求实现函数输出一个实心的字符矩形,定义并调用函数matrix(length, width, ch),它的功能是在屏幕上显示行数为width、列数为length,由字符ch组成的实心矩形图案。函数接口定义: void matrix(int length, int width, char ch);其中length是矩阵的长度,width是矩阵的宽度,ch是输出的字符,要求函数按照如样例所示的格式,打印出行数为width、列数为length,由字原创 2021-11-17 21:37:58 · 935 阅读 · 0 评论 -
2021.11.16
今天学了如何定义一个函数并且使用这个函数。7-36 输出整数各位数字 (15 分)本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。输入格式:输入在一行中给出一个长整型范围内的非负整数。输出格式:从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。输入样例:123456结尾无空行输出样例:1 2 3 4 5 6 #include<stdio.h>void printDigits(int n);int m..原创 2021-11-16 20:45:08 · 283 阅读 · 0 评论 -
2021.11.15
7-1 打印九九口诀表下面是一个完整的下三角九九口诀表:1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7原创 2021-11-15 23:41:19 · 307 阅读 · 0 评论 -
C语言经典五十题
【程序11】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21…2.程序源代码:代码如下:#include <stdio.h>int main(){ long f1,f2; int i; f1=f2=1; for(i=1;i<=20;i++) { printf("%12ld转载 2021-11-14 22:25:25 · 206 阅读 · 0 评论 -
2021.11.14
7-34 统计素数并求和 (20 分)本题要求统计给定整数M和N区间内素数的个数并对它们求和。输入格式:输入在一行中给出两个正整数M和N(1≤M≤N≤500)。输出格式:在一行中顺序输出M和N区间内素数的个数以及它们的和,数字间以空格分隔。输入样例:10 31结尾无空行输出样例:7 143结尾无空行#include <stdio.h>int main(){ int M,N; int sum=0; int coun原创 2021-11-14 22:18:26 · 717 阅读 · 0 评论 -
C语言经典五十题第二期
【程序6】题目:用号输出字母C的图案。1.程序分析:可先用’'号在纸上写出字母C,再分行输出。2.程序源代码:代码如下:#include <stdio.h>int main(){ printf("Hello C-world!\n"); printf(" ****\n"); printf(" *\n"); printf(" * \n"); printf(" ****\n"); return 0;}【程序7】题目:输出特殊图案,请在c环境中运行,转载 2021-11-13 19:53:12 · 142 阅读 · 0 评论 -
PTA -穷举(韩信点兵)
7-33 韩信点兵 (10 分)在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:按从1至5报数,记下最末一个士兵报的数为1; 再按从1至6报数,记下最末一个士兵报的数为5; 再按从1至7报数,记下最末一个士兵报的数为4; 最后按从1至11报数,最末一个士兵报的数为10;请编写程序计算韩信至少有多少兵。输入格式:原创 2021-11-13 19:46:57 · 349 阅读 · 0 评论 -
2021-11-13
分油Problem Description有一天,BK学长和calm学长合伙卖油,直到傍晚他们还有n斤油没有卖出去,他们打算收工,在分完钱后开始分油,他们都很慷慨,不一定要一人一半,但是他们都想要正偶数斤油,但是他们不知道怎么分,恰好聪明的你路过了,所以你应该告诉他们能不能分?Input多组输入第一行输入一个整数n(1≤n≤1000)Output如果可以分输出"YES",否则输出"NO",...原创 2021-11-13 19:35:20 · 608 阅读 · 0 评论 -
C语言经典五十题第一期
C语言程序设计50例(经典收藏)本篇文章是对C语言程序设计的50个小案例进行了详细的分析介绍,需要的朋友参考下【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。2.程序源代码:代码如下:#include <stdio.h>int main(){ int i,j,k; printf("\n"); for(i=1...转载 2021-11-12 22:23:24 · 141 阅读 · 1 评论 -
“21天好习惯” 第一期-1
一 题目内容:从键盘任意输入一个3位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-123,则忽略负号,由123分离出其百位1、十位2、个位3,然后计算3*100+2*10+1 = 321,并输出321。提示:1. 从键盘输入数据可以使用函数scanf()。例如,scanf("%d", &x); 表示从键盘输入整数并存入整形变量x中。2. 利用取绝对值函数 fabs()忽略输入数据的负号。fabs(x)表示计算变量x的绝对值。3.使用数学函数,需要...原创 2021-10-23 21:32:14 · 217 阅读 · 2 评论