实验03 模块化程序设计(2022级)

一. 单选题(共1题,16.6分)

1. (单选题)有函数定义:int f(int x,int y);则下列函数调用正确的为(    )

  • A.int n; n=f();
  • B. int n,a=0,b=1;n=int f(x,y);
  • C. int n,a=0,b=1;n=f(a,b);
  • D.int n,a=0,b=1; n=f(int a,int b);

我的答案: C

二. 程序题(共5题,83.4分)

2. (程序题)

题目编号:Exp03-Basic01,GJBook3-05-02

题目名称:组合问题

题目描述:编写程序,输入m,n的值,计算并输出函数f的值。

输入:一个整数m和一个整数n(m,n≤20)。

输出:函数f的值。

样例1:

输入:-1  2
输出:-1

样例2:

输入:2  2
输出:1
#include<stdio.h>long long f(int m, int n);long long pro(int s);int main() {int m, n;scanf(" %d %d", &m, &n);printf("%d", f(m, n));}long long f(int m, int n) {long long ret;if (m < n && m>0 && n > 0) { return 0; }else if (m == n && m > 0 && n > 0) { return 1; }else if (m > n && m > 0 && n > 0) {ret = pro(m) / (pro(m - n) * pro(n));return ret;}else { return -1; }}long long pro(int s) {long long sum = 1;for (int i = s; i > 0; i--) {sum *= i;}return sum;}

3. (程序题)

题目编号:Exp03-Basic02,GJBook3-05-06

题目名称:逆序数

题目描述:编写函数,求任意位自然数的逆序数,例如5432就是2345的逆序数。

输入:任意一个整数(<10^18) 。

输出:如果输入的不是自然数,则输出NULL;否则输出对应的逆序数。

样例1:

输入:120
输出:21

样例2:

输入:999999999999999999
输出:999999999999999999

样例3:

输入:-1357
输出:NULL
#include <stdio.h>#include<math.h>long long po(int b, int c) {long long pro = 1;for (int u = 1; u <= c; u++) {pro *= b;}return pro;}int nb(long long s) {int count = 0;while (1) {s /= 10;count++;if (s == 0) { break; }}return count;}int main() {int z[18];long long h, sum = 0;scanf("%lld", &h);if (h < 0)printf("NULL");else {int uu = nb(h);for (int m = 0; m <= uu - 1; m++) {z[m] = h % 10;h /= 10;}for (int i = 0; i <= uu - 1; i++) {sum += z[i] * po(10, uu - i - 1);}printf("%lld", sum);}}

4. (程序题)

题目编号 :Exp03-Basic03

题目名称:多边形周长

题目描述:编写程序,求由键盘按顺时针方向输入n(0<n<=10)个顶点坐标的多边形周长(测试数据已保证当n>2时,各点按输入方向依次连接可构成封闭的n边形)。

输入:第一行输入一个整数,作为n值;以后每行两个浮点数(double),为多边形各顶点的坐标。

输出:多边形的周长,精确到小数点后2位。

样例1:

输入:
4
0  0
0  1
1  1
1  0
输出:4.00

样例2:

输入:
1
2 3
输出:
0.00

样例3:

输入:
2
2 3
2 4
输出:
1.00
#include<stdio.h>#include<math.h>double dis(double a, double b) {double distance = sqrt(a * a + b * b);return distance;}int main() {int n;double x1, x2, y1, y2, x3, y3, sum = 0;scanf("%d", &n);if (n == 1)printf("0.00");else if (n == 2) {scanf("%lf %lf\n", &x1, &y1);scanf("%lf %lf", &x2, &y2);sum = dis(x1 - x2, y1 - y2);printf("%.2lf", sum);}else {scanf("%lf %lf", &x1, &y1);x3 = x1; y3 = y1;for (int s = 1; s <= n - 1; s++) {scanf("%lf %lf", &x2, &y2);sum += dis(x1 - x2, y1 - y2);x1 = x2;y1 = y2;}sum += dis(x2 - x3, y2 - y3);printf("%.2lf", sum);}}

5. (程序题)

题目编号:Exp03-Extend01,GJBook3-12-04

题目名称:自守数

题目描述:若一个正整数a满足条件 a^2 的尾数等于a,则称a为自守数,例如:

25^2=625 、76^2=5776 、9376^2=87909376 都是自守数。

编写程序,求小于等于n的所有自守数。

输入:从键盘随机输入一个正整数n(不超过10000000)。

输出:输出小于等于n的所有自守数,每个数之间以一个西文空格间隔。

样例1:

输入:10
输出:1 5 6

样例2:

输入:100
输出:1 5 6 25 76
#include<stdio.h>#include<math.h>long long int muu(long long int n);int main() {long long a, pro;scanf("%lld", &a);for (long long i = 1; i <= a; i++) {pro = i * i;if (pro % muu(i) == i)printf("%lld ", i);}}long long int muu(long long int n) {long long ret = 1;int count = 0;while (1) {n = n / 10;count++;if (n == 0)break;}for (int m = 1; m <= count; m++){ret *= 10;}return ret;}

6. (程序题)

【计2014级期中试题】素数判断。

问题描述:一个大于1的自然数,只能被1和它本身整除,不能被其它除0以外的自然数整除,则该数称之为素数。编写函数,判断一个整数是否为素数

注:判断素数部分必须编写成一个独立于main()函数的其它函数

输入:一个大于1的自然数

输出:根据是否是素数输出Y/N

样例1:

输入:3

输出:Y

样例2:

输入:51

输出:N

#include <stdio.h>int judge(long long s);int main() {long long n;scanf("%lld", &n);if (judge(n))printf("Y");else { printf("N"); }}int judge(long long s) {if (s == 2)return 1;for (long long i = 2; i < s; i++) {if (s % i == 0)return 0;}return 1;}

吉林大学超星慕课平台——高级语言程序设计 实验03 模块化程序设计(2022级)相关推荐

  1. 吉林大学超星慕课平台——高级语言程序设计 实验01 顺序程序设计(2022级)

    实验01 顺序程序设计(2022级) 1. (程序题) 表达式计算. 问题描述:编写程序,计算并输出如下表达式的值: y= 其中a,x,y均为float类型,取值为3.1415926.输出结果要求保留 ...

  2. 吉林大学超星慕课平台——高级语言程序设计 实验06 结构体(2022级)

    1. (程序题) 题目编号 :Exp07-Basic01 题目名称:复数运算 题目描述:复数可以写成A+Bi的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i^2=-1. 编写程序,分别计算两个 ...

  3. 吉林大学超星慕课平台——高级语言程序设计 实验04 数组及其在程序设计中的应用(2022级)

    目录 1. (程序题) 2. (程序题) 3. (程序题) 4. (程序题) 5. (程序题) 6. (程序题) 7. (程序题) 8. (程序题) 9. (程序题) 10. (程序题) 11. (程 ...

  4. 吉林大学超星慕课平台——高级语言程序设计 实验02 分支与循环程序设计(2022级)

    一. 程序题(共15题,100分) 1. (程序题) 题目编号:Exp02-Basic01,GJBook3-03-03 题目名称:递增排序 题目描述:任意三个实数a.b.c,按照从小到大的顺序输出. ...

  5. 吉林大学超星慕课平台——高级语言程序设计 实验05 指针及其在程序设计中的应用(2022级)

    一. 程序题(共5题,100分) 1. (程序题) 题目编号:Exp05-Basic01,GJBook3-07-06 题目名称:字符串长度 题目描述:编写程序实现:使用自编函数int strlen(c ...

  6. 吉林大学 超星慕课 高级语言程序设计 实验03 模块化程序设计(2022级)

    本人能力有限,发出只为帮助有需要的人. 建议同学们自己写完后再进行讨论. 1. (单选题)有函数定义:int f(int x,int y):则下列函数调用正确的为(    ) A.int n; n=f ...

  7. 吉林大学超星慕课高级语言程序设计课后作业(2022版)实验00

    1.第一个C程序. 问题描述: 通常学习一门编程语言,开始的第一个程序就是将"Hello World"显示在屏幕上.请大家参照如下代码的样子,写出自己的第一个C语言程序.亲,一定要 ...

  8. 吉林大学 超星慕课 高级语言程序设计 实验06 结构体(2022级)

    本人能力有限,发出只为帮助有需要的人. 建议同学们自己写完后再进行讨论. 1.题目名称:复数运算 题目描述:复数可以写成A+Bi的常规形式,其中A是实部,B是虚部,i是虚数单位,满足i^2=-1. 编 ...

  9. 吉林大学 超星慕课 高级语言程序设计 实验04 数组及其在程序设计中的应用 (2022级) 程序第04一13题

    本人能力有限,发出只为帮助有需要的人. 建议同学们自己写完后再进行讨论. 第三题后难度明显下降,所以后面的就一起发了 4. (程序题) 题目编号:Exp04-Basic04,GJBook3-06-19 ...

最新文章

  1. Greenplum,HAWQ interval parser带来的问题 - TPCH 测试注意啦
  2. python dtype什么意思_DataFrame中的字符串,但dtype是对象
  3. 一块网卡设置多个IP地址
  4. spring 中 Hibernate 事务和JDBC事务嵌套问题
  5. 如何使用SAP UI5 web Component的React框架的柱状图和折线图
  6. C# :试玩EventLog
  7. Swift - 操作SQLite数据库(引用SQLite3库)
  8. 调试 ASP.NET Core 2.0 源代码
  9. 这篇带你深入理解SpringBoot中的自动装配(好文精读)
  10. 基于JAVA+Servlet+JSP+MYSQL的毕业生去向管理系统
  11. 深入理解jsonp跨域请求原理
  12. SilverLight自定义集合控件中的集合项数据绑定问题
  13. scrapy_redis爬取统计局的城乡代码,以目录文件夹形式生成,同时最后保存在excel和redis数据库中
  14. 如何发现并分析APP个人信息收集是否违规?
  15. Snipaste截图时下拉菜单消失解决方法
  16. 【朝花夕拾】朝花夕拾-Robot Framework实战演练之开篇
  17. hadoop是什么?特点?
  18. Navicat Premium绿色版安装
  19. Python实战——全球疫情数据采集, 并做可视化
  20. 方舟编译器学习笔记分类与导读

热门文章

  1. 掌上医院室内导航导诊系统
  2. 谈谈JavaScript中常见的数据类型
  3. STM32FXX IAP 功能应用介绍
  4. 【分享】ppt-数据安全治理实践指南 (2.0)
  5. 将一个任意整数插入到已排列的整型数组中,插入后,数组中的数仍保持有序...
  6. 资源-能力-价值模型(RCV模型)
  7. 安卓 获取指定类型的文件_太良心了!传文件这件小事,这款免费APP比微信QQ好用十倍!...
  8. unity-tolua集成pb3支持
  9. ns3安装Windows系统
  10. Spring创建Bean的全过程Debug,没人能说的这么通透了