当前位置: 首页 > news >正文

【C/PTA —— 10.函数1(课外实践)】

C/PTA —— 10.函数1(课外实践)

  • 一.函数题
    • 6-1 符号函数
    • 6-2 求排列数
    • 6-3 求一个大于10的n位整数w的后n-1位的数,并作为函数值返回。
    • 6-4 其右上三角(含主对角线)元素之和。
    • 6-5 字符串比较
    • 6-6 使用函数求素数和
    • 6-7 使用函数输出水仙花数
  • 二.编程题
    • 7-1 寻找自守数

一.函数题

6-1 符号函数

在这里插入图片描述

int sign(int x)
{if (x > 0)return 1;else if (x == 0)return 0;elsereturn -1;
}

6-2 求排列数

在这里插入图片描述

double fact(int n)
{long long ret = 1;for (long long i = 1; i <= n; i++){ret =ret * i;}return ret;
}

6-3 求一个大于10的n位整数w的后n-1位的数,并作为函数值返回。

在这里插入图片描述

#include<math.h>
int fun(int w)
{int sum = 0;int count = 0;int num = w;while (num){num /= 10;count++;}sum = w % (int) (pow(10, count - 1));return sum;
}

6-4 其右上三角(含主对角线)元素之和。

在这里插入图片描述

int fun(int a[3][3])
{int sum1 = 0, sum2 = 0;for (int i = 0; i < 3; i++){for (int j = i; j < 3; j++){sum1 += a[i][j];}}return sum1;
} 

6-5 字符串比较

在这里插入图片描述

int fun(char a[], char b[])
{if (strcmp(a, b) < 0)return -1;else if (strcmp(a, b) > 0)return 1;elsereturn strcmp(a, b);
}

6-6 使用函数求素数和

在这里插入图片描述

int prime(int p)
{int count = 0;if(p==1)return 0;for (int i = 2; i <= p; i++){if (p % i == 0)count++;}if (count == 1)return 1;elsereturn 0;
}
int PrimeSum(int m, int n)
{int sum = 0;for (int i = (m<=n?m:n); i <= (n>=m?n:m); i++){if (prime(i) == 1)sum += i;}return sum;
}

6-7 使用函数输出水仙花数

在这里插入图片描述

#include<math.h>
int narcissistic(int number)
{int count = 0;int sum1 = 0;int num = number;while (number){number /= 10;count++;}int sum = 0;number = num;while (number){sum1 = number % 10;sum += (int)(pow(sum1, count));number /= 10;sum1 = 0;}if (num == sum)return 1;elsereturn 0;
}
void PrintN(int m, int n)
{for (int i = (m <= n ? m : n)+1; i < (n >= m ? n : m); i++){if (narcissistic(i) == 1){printf("%d\n", i);}}
} 

二.编程题

7-1 寻找自守数

在这里插入图片描述

#include<stdio.h>
int ZISHOUnum(int p)
{int num = 0, count = 0;num = p * p;while (p != 0){if (p % 10 != num % 10)return 0;p /= 10;num /= 10;}return 1;
}int main()
{int n = 0, m = 0;int count = 0;scanf("%d %d", &n, &m);for (int i = n; i <= m; i++){if (ZISHOUnum(i)){count++;printf("%d\n", i);}}if (count == 0){printf("None\n");}return 0;
}

相关文章:

  • 深入理解C语言指针:基础概念、语法和实际应用
  • Twincat使用:EtherCAT通信扫描硬件设备链接PLC变量
  • 阿里云发送短信
  • AIGC 3D即将爆发,混合显示成为产业数字化的生产力平台
  • Docker 的基本概念和优势,以及在应用程序开发中的实际应用
  • C++ Qt QFile用法介绍与代码演示
  • 静态web服务器开发之HTTP协议
  • java通过年月获取当前月所有周(跨月),获取每周开始日期和结束日期
  • css 固定按钮到页面顶部或者底部的实现方式
  • 百度云加速免费版下线,推荐几款目前仍旧免费的CDN
  • 国家开放大学平时作业 练习题
  • C#,《小白学程序》第七课:列表(List)其一,编制《高铁车次信息表》
  • Git工作流和Commit规范
  • 【电子通识】为什么说做产品不是简单的将不同的技术进行搭积木?
  • 排序算法-----快速排序(非递归实现)
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • Intervention/image 图片处理扩展包的安装和使用
  • Redis字符串类型内部编码剖析
  • Unix命令
  • zookeeper系列(七)实战分布式命名服务
  • 记录:CentOS7.2配置LNMP环境记录
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 思否第一天
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 一个SAP顾问在美国的这些年
  • 正则学习笔记
  • 字符串匹配基础上
  • elasticsearch-head插件安装
  • Prometheus VS InfluxDB
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • 大数据全解:定义、价值及挑战
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ‌内网穿透技术‌总结
  • $refs 、$nextTic、动态组件、name的使用
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (day 12)JavaScript学习笔记(数组3)
  • (libusb) usb口自动刷新
  • (二十四)Flask之flask-session组件
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (回溯) LeetCode 46. 全排列
  • (实战篇)如何缓存数据
  • (五)关系数据库标准语言SQL
  • (一)UDP基本编程步骤
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .net core开源商城系统源码,支持可视化布局小程序
  • .net 托管代码与非托管代码
  • .net2005怎么读string形的xml,不是xml文件。
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • //解决validator验证插件多个name相同只验证第一的问题