成都 企业 网站建设,上海建设银行青浦分行网站,wordpress自定义用户字段,建设人才信息网是什么网站文章目录 题目答案与解析123 题目
1.strcpy实现 自己设计函数模拟实现库函数strcpy 2.strlen实现 自己设计函数模拟实现库函数strlen 3.调整奇数偶数顺序 输入一个整数数组#xff0c;实现一个函数#xff0c;来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部… 文章目录 题目答案与解析123 题目
1.strcpy实现 自己设计函数模拟实现库函数strcpy 2.strlen实现 自己设计函数模拟实现库函数strlen 3.调整奇数偶数顺序 输入一个整数数组实现一个函数来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分所有偶数位于数组的后半部分。
答案与解析
1
//将值传输到目标区域中
char* My_strcpy(char* dst,const char* src)//锁定传输的值防止它被改变
{char* ret dst;assert(dst);//避免为空assert(src);while (*dst *src)//为目标区域赋值{;}return ret;
}int main()
{char arr1[20] {0};printf(%s\n, My_strcpy(arr1,张三));return 0;
}2
size_t My_strlen(const char* s)//锁定*s,使其中的值不会发生变化
{assert(s);//避免为空size_t count 0;while ((*s) ! \0)//值不为\0时进入循环{count;}return count;
}
int main()
{char arr[] abcdef;size_t str My_strlen(arr);printf(%d\n,str);return 0;
}3
int main()
{int arr[20] {0};int i 0;//在数组中插入值while (i 20){arr[i] i 1;i;}int sz sizeof(arr) / sizeof(arr[0]);for (i 0; i sz - 1; i){printf(%d , arr[i]);}printf(\n);int left 0;int right sz - 1;while (leftright){// 从前往后找到一个偶数找到后停止若为奇数则继续找while ((left right) (arr[left] % 2 1)){left;}// 从后往前找找一个奇数找到后停止若为偶数则继续找while ((left right) (arr[right] % 2 0)){right--;}// 如果偶数和奇数都找到交换这两个数据的位置// 然后继续找直到两个指针相遇if (left right){int temp arr[left];arr[left] arr[right];arr[right] temp;left;right--;}}for (i0;isz-1;i){printf(%d ,arr[i]);}return 0;
}