DAY-12作业

//

//  main.m

//  DAY-12作业

//

//  Created by lanouhn on 15/1/28.

//  Copyright (c) 2015年 lanouhn. All rights reserved.

//

#import <Foundation/Foundation.h>

void randomFun(int *p, int n);

void randomFun(int *p, int n) {

//可以怎么初始化指针p???

for (int i = 0; i < n; i++) {

*(p + i) = arc4random() % 101;

}

}

void findNum(int *p, int n);

void findNum(int *p, int n) {

*(p + n) = 0;

}

typedef void (*Find)(int *p, int n);

void modify(int *p, int n, Find p1);

void modify(int *p, int n, Find p1) {

for (int i = 0; i < n; i++) {

if (*(p + i) % 3 == 0) {

p1(p, i);

}

}

}

void changeFun(int *p, int *p1, int n);

void changeFun(int *p, int *p1, int n) {

int temp = *(p + n);

*(p + n) = *(p1 + n);

*(p1 + n) = temp;

}

typedef void (*Change)(int *p, int *p1, int n);

void compareFun(int *p1, int *p2, int n, Change ch);

void compareFun(int *p1, int *p2, int n, Change ch) {

for (int i = 0; i < n; i++) {

if (*(p1 + i) > *(p2 + i)) {

ch(p1, p2, i);

}

}

}

void printFun(int *p, int n);

void printFun(int *p, int n) {

for (int i = 0; i < n; i++) {

printf("%3d ", *(p + i));

}

printf("\n");

}

int main(int argc, const char * argv[]) {

//    1.(***)随机生成一个 10 个元素的数组,找到 3 的倍数,并将其值修改成 0.(注意:修改数值使用回掉函数处理)

//    2. (***)有两个10个元素的数组,分别为A和B,编程实现相同位置的元素, 如果 B 的元素小于 A 的元素进行数值交换:(使用回调函数实现)

//1.

//    int array[10] = {0};

//    randomFun(array, 10);

//    printFun(array, 10);

//    modify(array, 10, findNum);

//    printFun(array, 10);

//2.

int A[10] = {0}, B[10] = {0};

randomFun(A, 10);

printFun(A, 10);

randomFun(B, 10);

printFun(B, 10);

compareFun(A, B, 10, changeFun);

printf("交换后:\n");

printFun(A, 10);

printFun(B, 10);

return 0;

}

时间: 2024-10-17 21:23:43

DAY-12作业的相关文章

9.12作业(RUP,XP,敏捷过程)

1.RUP(Rational Unified Process,统一软件过程是一个面向对象且基于网络的程序开发方法论.根据Rational(Rational Rose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持. RUP和类似的产品--例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具--把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等

12作业

#include<stdio.h> #include<stdib.h> struct student { char number[10]; char name[20]; char age; char gender; char phone[11]; char dept[20]; char score; }; int main() { return 0; } #include<stdio.h> struct student { char sno[10]; char snam

9.12作业

a.五角星 import turtleturtle.color('yellow')turtle.bgcolor('red')turtle.fillcolor('yellow')def mytogo(x,y): turtle.up() turtle.goto(x,y) turtle.down()mytogo(-300,100)turtle.begin_fill()for i in range(5): turtle.forward(120) turtle.right(144)turtle.end_f

【转】《windows核心编程》读书笔记

这篇笔记是我在读<Windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和Windows实际机制可能有出入,但应该是合理的.开头几章由于我追求简洁,往往是很多单独的字句,后面的内容更为连贯. 海量细节. 第1章    错误处理 1.         GetLastError返回的是最后的错误码,即更早的错误码可能被覆盖. 2.         GetLastError可能用于描述成功的原因(CreatEvent)

MySQL四-2:完整性约束

阅读目录 一 介绍 二 not null与default 三 unique 四 primary key 五 auto_increment 六 foreign key 七 作业 一 介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIGN KEY (FK) 标识该字段为该表的外键 NOT NULL 标识该字段不能为空 UNIQUE KEY (UK) 标识该字段的值是唯

传智播客C语言视频第二季(增加诸多C语言案例讲解,有效下载期为10.5-10.10关闭)

?? 卷 backup 的文件夹 PATH 列表卷序列号为 000000F4 D4A8:14B0J:.│  1.txt│  2.txt│  ├─1传智播客_尹成_C语言从菜鸟到高手_第一章C语言概述A│  ├─文档│  │      第1讲 C语言第一阶段.doc│  │      │  └─视频│          第1讲 C语言第一阶段.mp4│          ├─2传智播客_尹成_C语言从菜鸟到高手_第二章C语言跨平台HelloWorld-A│  ├─第10节 2.5.1-2.5.7C

Linux命令四

作业一: 1) 开启Linux系统前添加一块大小为20G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 安装的是命令行界面 3) 为新加的硬盘分区,一个主分区大小为10G,剩余空间给扩展分区,在扩展分区上划分两个逻辑分区,大小各5G 4) 格式化主分区为ext3系统 5) 格式化两个逻辑分区为ext4系统 5) 将逻辑分区设置为交换分区 [[email protected] ~]# mkswap /dev/sdb3 6) 启用上一步的交换分区 [[email protected] ~]# s

传智播客C语言视频第一季(有效下载期为10.1-10.7,10.8关闭)

?? J:\传智播客_尹成_C语言从菜鸟到高手├─传智播客_尹成_C语言从菜鸟到高手_第一章C语言概述A│      第一讲1.1C语言第一阶段.mp4│      第二讲1.2c语言入门教程.mp4│      ├─传智播客_尹成_C语言从菜鸟到高手_第七章编译选项_链表_栈_队列_C实战│  ├─7.1编译与预处理│  │      第10讲 7.1.14-24宏的高级用法2.mp4│  │      第11讲 7.1.25文件包含-7.1.28编译及预处理小节.mp4│  │      第

《Windows核心编程》读书笔记 上

[C++]<Windows核心编程>读书笔记 这篇笔记是我在读<Windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和Windows实际机制可能有出入,但应该是合理的.开头几章由于我追求简洁,往往是很多单独的字句,后面的内容更为连贯. 海量细节. 第1章    错误处理 1.         GetLastError返回的是最后的错误码,即更早的错误码可能被覆盖. 2.         GetLas

C++Windows核心编程读书笔记

转自:http://www.makaidong.com/%E5%8D%9A%E5%AE%A2%E5%9B%AD%E6%96%87/71405.shtml "C++Windows核心编程读书笔记": 关键词:c++windows 核心 编程 读书笔记 这篇笔记是我在读<windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和windows实际机制可能有出入,但应该是合理的.开头几章由于我追求简洁