编程练习栈
Goallegoal
左手击筑,右手编程。
展开
-
C语言strstr()函数模拟实现和库实现之间的差距
C语言strstr()函数模拟实现和库实现之间的差距strstr()的函数原型为char *strstr(const char *haystack, const char *needle),用于在字符串 haystack 中查找第一次出现字符串 needle 的位置,注意不包含终止符 ‘\0’。该函数的返回值为在 haystack 中第一次出现 needle 字符串的位置,如果未找到则返回 null。下面先贴上自己模拟实现的myStrstr(),先不看代码中的细节处理,仅关注代码逻辑。在代码编写的过程中原创 2020-08-06 10:25:37 · 209 阅读 · 0 评论 -
打卡机核心功能实现(C语言)
222222222应市场需求,某工程师现设计了一款新上下班打卡机,打卡机具有以下功能:(1)上班打卡,员工具有编号(首位为 1 的六位编号),输入编号后,再输入校验码,校验码生成规则:员工编号除首位反序,再与员工编号求和,如:员工编号,110086,校验码为 178087。校验码错误即打卡失败。记录打卡时间 。(2)下班打卡,只需输入员工编号即可。记录打卡时间,显示该人员今天上班时长,如果上班时长不够,显示早退 xx 分钟。可以更新下班打卡时间。无下班打卡显示缺卡。(3)可以设置规定上班时长,如 9原创 2020-08-01 22:32:28 · 1875 阅读 · 0 评论 -
C语言数组和指针笔试题小结
11111111111一维数组 int a[] = {1,2,3,4}; printf("%d\n", sizeof(a)); // 16,sizeof(数组名),当数组名单独放在sizeof()中时,数组名表示整个数组 printf("%d\n", sizeof(a+0)); // 8,数组名没有单独存放时表示首元素地址 printf("%d\n", sizeof(*a)); // 4 printf("%d\n", sizeof(a+1)); // 8 printf("%d\n",原创 2020-07-30 08:09:29 · 362 阅读 · 0 评论 -
C语言编程练习(三)
C语言编程练习(三)1、编程一个逆序的数组,只能交换,不能定义临时数组void getReverse(){ int order[] = {1, 2, 3, 4, 5, 6, 7}; int len = sizeof(order)/sizeof(order[0]); int index = 0; int tmp = 0; for(index=0; index<len/2; index++) { if(index != len-index-1) { tmp = order[原创 2020-07-18 11:17:08 · 193 阅读 · 0 评论 -
图解约瑟夫环(C语言实现)
图解约瑟夫环(C语言实现)场景描述:1、一群人围在一起坐成环状;2、从某个编号的人开始报数;3、数到 M 的时候,此人出列,他的下一个人又从1开始报数,数到 M 的那个人又出列;4、一直循环,直到所有人出列,约瑟夫环结束。这里假设有 8 个人围成了环状,依次标号为 1 至 8。假设游戏从 3 号玩家开始,规定每次从 1 开始计数,数到 3 的人出列,出列的玩家变为红色,未出列玩家仍用绿色表示。...原创 2020-07-18 11:08:30 · 4375 阅读 · 0 评论 -
C语言编程练习(二)
C语言编程练习(二)1、在屏幕上输出如下图形 键盘输入n,比如输入3如下 * * * * * *void printStar(){ printf("Please input the line of star:"); int n = 0; scanf("%d", &n); int index = 0; int numofStar = 0; int numofNull = 0; for(index=1; index<=n; index++) { for(numo原创 2020-07-17 10:26:37 · 394 阅读 · 0 评论 -
【编程错误】数组排序时,本意为从小到大排序,但结果打印为从大到小
数组排序时,本意为从小到大排序,但结果打印为从大到小#include <stdio.h>int main(){ int arr[10] = {3, 7, 1, 9, 10, 2, 4, 6, 5, 8}; int i = 0; int j = 0; int tmp = 0; for(i=0; i<10; i++) { for(j=0;j<10;j++) { if(arr[i]>arr[j]) { tmp = arr[i];原创 2020-07-14 20:50:58 · 166 阅读 · 0 评论 -
Linux基础命令练习
Linux基础命令练习1、 在home下创建一个以自己名字首字母开始的文件夹root@ubuntu:/home# mkdir Gsangroot@ubuntu:/home# lsGsang ubuntu# 要切换到root2、进入此文件夹ubuntu@ubuntu:/home$ cd Gsang/ubuntu@ubuntu:/home/Gsang$ 3、在该文件夹下直接创建 AAA/BBB 文件夹root@ubuntu:/home/Gsang# mkdir -p AAA/BBBr原创 2020-07-13 23:16:00 · 3126 阅读 · 0 评论 -
C语言编程练习(一)
C语言编程练习(一)1、计算n的阶乘;void getFactorial(int n){ //计算n阶乘 int index = 0; int res = 1; if(n != 0) { for(index=1; index<=n; index++) { res = res * index; } } printf("%d的阶乘为:%d\n", n, res);}2、求1-100之间的奇数之和、偶数之和;void getSumif(){ //计算100以原创 2020-07-12 13:41:44 · 881 阅读 · 0 评论