- 博客(17)
- 收藏
- 关注
原创 C语言:指出程序中的问题总结(一)
1.下面程序把“hello”这个字符输出,请指出其中的错误: void Test() { char pcArray[10]; strncpy(pcArray, "hello", 5); printf("%s\n", pcArray); return; } 问题: 不会直接输出"hello"的,hello的后面还可能有随机值...
2018-08-28 21:15:12 2070
原创 Linux入门:常见命令符总结
我们知道操作Linus系统基本上用的都是命令行,那么下面就来给大家总结一下初学linux所需掌握的命令行操作符吧:关机 (系统的关机、重启以及登出 ) shutdown -h now 关闭系统(1) init 0 关闭系统(2) telinit 0 关闭系统(3) shutdown -h hours:minutes & 按...
2018-08-20 19:14:24 294
原创 C语言:注释转换项目
分析:在把c注释转换为c++注释的过程中,有以下常见的7种情况:// 1.一般情况int num = 0;/* int i = 0; */// 2.换行问题/* int i = 0; */int j = 0;/* int i = 0; */int j = 0;// 3.匹配问题/*int i = 0;/*xxxxx*/// 4.多行注释问题/*int i=...
2018-08-19 23:06:16 239
转载 醉了,什么是鸡尾酒排序?
我们之前了解了冒泡排序的思路那么,鸡尾酒排序又是何方神圣呢?我们这一期将会详细讲述。鸡尾酒排序又叫快乐小时排序(不知道为什么起这个名字),它基于冒泡排序做了一点小小优化。让我们首先来回顾一下冒泡排序的思想:泡排序的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。算法的每一轮从都是从左到右比较元素,进行单向的位置交换。那么鸡尾酒排序做了怎样的优化呢?鸡尾酒排序...
2018-08-16 15:43:25 290
转载 C语言:malloc、calloc、realloc的区别
很多小伙伴都不知道malloc、calloc、realloc的区别,所以这次小编搜集点干货给大家分享。C语言跟内存分配方式<1>从静态存储区域分配.内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.<2>在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放....
2018-08-16 14:33:01 377
原创 C语言:数组的相关知识(二)
二维数组:#include <stdio.h>#include <stdlib.h>int main(){ int a[3][4] = { 0 }; printf("%d\n", sizeof(a)); printf("%d\n", sizeof(a[0][0])); printf("%d\n", sizeof(a[0])); ...
2018-08-15 17:18:05 206
原创 C语言:数组的相关知识(一)
整形数组:#include <stdio.h>#include <stdlib.h>int main(){ int a[] = { 1, 2, 3, 4 }; printf("%d\n", sizeof(a)); printf("%d\n", sizeof(a + 0)); printf("%d\n", sizeof(*a));...
2018-08-13 14:11:29 241
转载 C语言:汉诺塔问题
题目:有三根棒为A、B、C。A棒上叠放着n个大小不等的盘,依次叠加为大盘在下,小盘在上。要求把这n个盘移到C棒上,在移动过程中可以借助B棒,每次只能移一个盘,并且在移动过程中必须保持3根棒上的大盘在下,小盘在上。编写程序,并打印出移盘步骤。程序设计分析:用f(n, a, b, c)表示要求解的问题,其含义是有a、b、c三根棒和n只盘,且这n个盘叠放在a棒上,依次叠放为大盘在下,小盘在上。借助b...
2018-08-13 12:24:23 431
原创 C语言:实现一个通讯录(文件版本)
题目:实现一个文件版本的通讯录,通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址提供方法:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人Contact.h(头文件)#ifndef...
2018-08-13 11:48:46 1182
原创 C语言:实现一个通讯录(动态版本)
题目:实现一个动态通讯录,通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址提供方法:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人Contact.h(头文件)#ifndef __...
2018-08-13 11:39:22 465
原创 C语言:青蛙跳台阶问题
题目:(1)一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。分析:当n = 1, 只有1中跳法;当n = 2时,有两种跳法;当n = 3 时,有3种跳法;当n = 4时,有5种跳法;当n = 5时,有8种跳法 这个规律类似于Fibonacci数列,使用递归的思想,代码如下:#include <stdio.h>#inclu...
2018-08-08 20:02:49 3668
原创 C语言:请编程写程序实现字符串到整数的转换,例如输出字符串“12345”,输出整数12345.
题目:请编程写程序实现字符串到整数的转换,例如输出字符串“12345”,输出整数12345.这道题看似很简单,我们通过分析,可以很容易的写出如下代码:#include <stdio.h>#include <stdlib.h>#include <assert.h> int my_atoi(const char* str){ int ret ...
2018-08-07 21:28:12 2851
原创 C语言:请编码实现以下功能的函数 功能:实现对一个8bit数据(unsigned char 类型)的指定位(例如第n位)的置0或者置1操作,并保持其他位不变。
题目:请编码实现以下功能的函数功能:实现对一个8bit数据(unsigned char 类型)的指定位(例如第n位)的置0或者置1操作,并保持其他位不变。函数原型:void bit_set(unsigned char *p_data,unsigned char position,int flag)分析:1111---15把第三位置0后为:1011 而1011是由原数据与1011按位与...
2018-08-04 20:41:42 838
原创 C语言:实现一个通讯录(静态版本)
题目:实现一个通讯录,通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址提供方法:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人Contact.h(头文件)#ifndef __CO...
2018-08-03 16:44:45 410
原创 C语言:写冒泡排序可以排序多个字符串
题目:写冒泡排序可以排序多个字符串#include <stdio.h>#include <stdlib.h>#include <string.h>bubble_sort(char** arr, int sz)//传参时传二级指针或者字符指针数组本身{ int i = 0; int j = 0; for (i = 0; i ...
2018-08-02 10:36:03 665
原创 C语言:1.使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“ - a”选项执行加法,“ - s”选项执行减法,“ - m”选项执行乘法,“ - d”选项执行除法,后面两个
题目:使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“ - a”选项执行加法,“ - s”选项执行减法,“ - m”选项执行乘法,“ - d”选项执行除法,后面两个参数为操作数。例如:命令行参数输入:test.exe - a 1 2执行1 + 2输出3具体代码如下:#define _CRT_SECURE_NO_WARNINGS 1#include &...
2018-08-02 10:33:50 342
原创 C语言:深度理解 指针数组, 数组指针 ,函数指针, 函数指针数组 ,指向函数指针数组的指针
指针数组int *p[10](指针数组是数组,是存放指针的数组)具体来说:因为[ ]的优先级高,所以[ ]先与p结合成为一个数组,然后这个数组的类型为int*,也就是整形指针,该数组含有10个指针类型的数组元素。这里执行p+1时,则p指向下一个数组元素。数组指针int (*p)[10](是指向一个数组的指针)具体来说:因为()的优先级高,p和*结合,说明p是一个指针,该指针指向了...
2018-08-01 11:09:56 230
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人