每日练习
whiltes
Life's a Struggle!
展开
-
每日练习之递归
习题1:斐波那契数递归和非递归分别实现求第n个斐波那契数。#include <stdio.h>//斐波那契数,非递归/*int fibo(int num){ int arr[4] = { 0, 1, 1}; int i = 0; if(num<=2) { return 1; } for(i=3; i<=num; i++) {原创 2018-03-23 23:42:35 · 302 阅读 · 0 评论 -
每日练习之字符串函数模拟实现
习题1:实现strcpy#include <stdio.h>#include <assert.h>void my_strcpy(char* dest,const char* src){ assert(dest); assert(src); while(*src) { *dest++ = *src++; }}int main(){原创 2018-03-23 23:46:09 · 217 阅读 · 0 评论 -
三种排序法的练习题(桶排序,冒泡排序,快速排序)
小哼买书的三种解法题目:要登记买书的同学,人数小于100,每个人报一个ISBN码,范围在1~1000;去掉重复的, 并将ISBN码从小大排列1、桶排序,时间复杂的都为O(n+m),占空间大#include <stdio.h>int main(){ int arr[1001] = {0}; int n = 0; int i = 0; ...原创 2018-03-08 00:33:11 · 3049 阅读 · 0 评论 -
解密QQ(队列)
解密QQ号首先将第 1 个数删除,紧接着将第 2 个数放到这串数的末尾,再将第 3 个数删除并将第 4 个数放到这串数的末尾,再将第 5 个数删除…… 直到剩下最后一个数,将最后一个数也删除。 原数列:6317592431、暴力求解此方法为首先想到的,将对头存到新的数组内,比较占空间,#include <stdio.h>int main(){ i...原创 2018-03-08 00:29:11 · 652 阅读 · 0 评论 -
判断回文数的两种解法
一、首先什么是回文数呢?“回文”是指正读反读都能读通的句子,它是古今中外都有的一种修辞方式和文字游戏,如“我为人人,人人为我”等。在数学中也有这样一类数字有这样的特征,成为回文数(palindrome number)。设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。原创 2018-01-20 18:41:44 · 6166 阅读 · 0 评论 -
每日练习之可变参数
习题1:求平均值使用可变参数,实现函数,求函数参数的平均值。#include <stdio.h>#include <stdarg.h>float average(int n_values, ...){ va_list var_arg; int count = 0; float sum = 0; //准备访问可变参数 ...原创 2018-03-24 12:53:41 · 237 阅读 · 0 评论 -
每日练习之位操作
习题1:编写函数: unsigned int reverse_bit(unsigned int value); 这个函数的返回 值value的二进制位模式从左到右翻转后的值。如: 在32位机器上25这个值包含下列各位: 00000000000000000000000000011001 翻转后:(2550136832) 100110000000000000000000000000...原创 2018-03-24 16:05:38 · 400 阅读 · 2 评论 -
简单通讯录
测试环境:vs2013通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人 思路:利用结构体数组,定义一个全局变量count用来统计联系人个数,删除时,...原创 2018-03-30 20:35:28 · 336 阅读 · 0 评论