1.找素数(素数:除了1和本身之外不能被任何整数整除的的数)(被某数整除=除以某数是整数)

问题:输出2到200(包括2和200)的使有素数,从小到大排序。

思路:检查所有比i小的数,取余。

涉及的知识点:函数的传值调用,循环语句等

#include <stdio.h>
int num(int r) {
int j = 0;
for (j = 2; j < r; j++) {
if (r%j == 0)
return 0;
}
return 1;
}
int main() {
int i = 0;
for (i = 2; i <= 200; i++) {
if (num(i) == 1) {
printf("%d%s\n", i, "是素数");
}
}
return 0;

2.写一个函数判断一年是不是闰年

思路:闰年:普通年能被四整除,不能被100整除的为闰年,或者世纪年能被四百整除的是闰年

#include <stdio.h> 

int is_leap_year(int j) {
if (j % 4 == 0 && j % 100 != 0 || (j % 400 == 0))
return 0;
else
return 1; }
int main() {
int i = 0;
for (i = 1000; i <= 2000; i++) {
if (is_leap_year(i) == 0)
printf("%d%s\n", i, "是闰年");
}
return 0;
}

3.写一个函数,实现一个整形有序数组的二分查找

思路:创建一个函数,如果找到值返回索引,找不到返回-1

#include <stdio.h>
int binaey_search(int key1, int arr1[]) {
int i = 0;
for (i = 0; i <= sizeof(arr1); i++) {
if (key1 == arr1[i]) {
return 0,i;
}
}
return -1;
}
int main() {
int arr[] = { 1,2,3,4,5,6,7,8,9 };
int key = 4;
int ret = binaey_search(key,arr);//数组arr传参,实际不是传递数组本身,而是仅仅传了第一个数组元素的地址
if (ret == -1) {
printf("没有找到所查找的值");
}
else {
printf("%s%d\n%s%d", "找到的值为:", arr[binaey_search(key,arr)],
"索引是:",ret);
}
return 0;
}

4.写一个函数,每调用一次这个函数,将num的值增加1

思路:通过传址调用来实现

#include <stdio.h> 

void Add(int *p){
(*p)++; }
int main() {
int num = 0;
Add(&num);
printf("%d\n", num);
Add(&num);
printf("%d\n", num);
Add(&num);
printf("%d\n", num);
return 0;
}

C语言的几个入门关于函数调用练习的更多相关文章

  1. C语言与数据库操作入门

    https://blog.csdn.net/flyingqd/article/details/78763652 C语言与数据库操作入门(Win版) 2017年12月10日 17:30:17 阅读数:1 ...

  2. C语言与数据库操作入门(Win版)

    C语言与数据库操作入门(Win版) 2017年12月10日 17:30:17 阅读数:1387 数据库,DataBase,学C语言的是不是想说,很想爱她却并不容易呢?不用着急,C语言也可以操作数据库的 ...

  3. Kotlin新语言简介和快速入门知识点

    Kotlin新语言简介和快速入门知识点 简介:Kotlin是最近由JetBrains发布的一种基于JVM的编程语言,已经被Google宣布为开发Android App的一级语言Kotlin有着与Jav ...

  4. [易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具]

    [易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具] 项目实战 实战5:实现BTC价格转换工具 今天我们来开发一个简单的BTC实时价格转换工具. 我们首先 ...

  5. [易学易懂系列|rustlang语言|零基础|快速入门|(27)|实战4:从零实现BTC区块链]

    [易学易懂系列|rustlang语言|零基础|快速入门|(27)|实战4:从零实现BTC区块链] 项目实战 实战4:从零实现BTC区块链 我们今天来开发我们的BTC区块链系统. 简单来说,从数据结构的 ...

  6. [易学易懂系列|rustlang语言|零基础|快速入门|(26)|实战3:Http服务器(多线程版本)]

    [易学易懂系列|rustlang语言|零基础|快速入门|(26)|实战3:Http服务器(多线程版本)] 项目实战 实战3:Http服务器 我们今天来进一步开发我们的Http服务器,用多线程实现. 我 ...

  7. [易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)]

    [易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)] 项目实战 实战2:命令行工具minigrep 我们继续开发我们的minigrep. 我们现 ...

  8. [易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)]

    [易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)] 项目实战 实战2:命令行工具minigrep 有了昨天的基础,我们今天来开始另一个稍微有点 ...

  9. [易学易懂系列|rustlang语言|零基础|快速入门|(23)|实战1:猜数字游戏]

    [易学易懂系列|rustlang语言|零基础|快速入门|(23)|实战1:猜数字游戏] 项目实战 实战1:猜数字游戏 我们今天来来开始简单的项目实战. 第一个简单项目是猜数字游戏. 简单来说,系统给了 ...

随机推荐

  1. WPF 视频硬解码渲染播放(无空域)(支持4K、8K、高帧率视频)

    MediaWPF 基于 .NET 6 实现视频硬解码渲染Demo(无空域问题) 代码实现仅供学习参考 本项目视频渲染通过显卡进行视频解码,CPU几乎不参与工作,并且不存在令人烦躁的空域问题. 在播放摄 ...

  2. IDEA Unicode码转中文

    1.打开设置 2.打开文件编码设置,按如图设置

  3. 【数据库Mysql 查询当前时间,年月日】

    1.本年份 SELECT YEAR(now()) SELECT DATE_FORMAT(NOW(), '%Y') 2.本月份(例如:1.01.January) SELECT MONTH(now()) ...

  4. C#中List实体类转换为object 并把参数返回到前端

    用ConvertAll方法转换: List<Object> m= list.ConvertAll(s=> (object)s); 返回的结果:

  5. 密码学系列之:使用openssl检测网站是否支持ocsp

    目录 简介 支持OCSP stapling的网站 获取服务器的证书 获取OCSP responder地址 发送OCSP请求 一个更加简单的方法 总结 简介 OCSP在线证书状态协议是为了替换CRL而提 ...

  6. java线程池开启多线程

    // //maximumPoolSize设置为2 ,拒绝策略为AbortPolic策略,直接抛出异常 ThreadPoolExecutor pool = new ThreadPoolExecutor( ...

  7. RESTAPI 版本控制策略【eolink 翻译】

    微服务,是现阶段开发建设云原生应用程序的流行趋向.API 版本控制有益于在辨别出所需要的调节时加速迭代更新的速度. 根据微服务架构的关键构件其一,是 API 的设计和规范.针对 API,版本控制是不可 ...

  8. 构建 API 的7个建议【翻译】

    迄今为止,越来越多的企业依靠API来为客户提供服务,以确保竞争的优势和业务可见性.出现这个情况的原因是微服务和无服务器架构正变得越来越普遍,API作为其中的关键节点,继承和承载了更多业务. 在这个前提 ...

  9. day04 缓冲字符流__异常处理

    缓冲字符流 缓冲字符输入流:java.io.BufferedReader 是一个高级的字符流,特点是块读文本数据,并且可以按行读取字符串. package io; import java.io.*; ...

  10. HMS Core音频编辑服务音源分离与空间音频渲染,助力快速进入3D音频的世界

    从单声道.立体声.环绕声发展到三维声,音频回放技术的迭代演进是为了还原真实世界的声音.其中,三维声技术使用信号处理的方法对到达两耳的声音信号进行模拟,将声场还原为三维空间,更接近真实世界.凭借这个技术 ...