- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 输入一个字符串,内有数字和非数字字符
输入一个字符串,内有数字和非数字字符,例如:A123x456 17960?302tab5876将其中连续的数字作为一个整数,依次存放到一数组a中。例如,123存放在a[0],456存放在a[1]。。。。统计共有多少个整数,并输出这些数。#include <stdio.h>#include <string.h>#include <ctype.h>void tongji(char*arr,int len){ int brr[20005]; int sum=0
2021-05-29 10:50:33 6913
原创 有n个人围成一圈,顺序排号。从第一个人开始报数 凡报到3的人退出圈子,问最后留下的是原来第几号的那位。(*)
#include <stdio.h>#include <stdlib.h>int main(){ int n; scanf("%d",&n); int ren=n; int *p=(int*)malloc(n*sizeof(int)); for(int i=0;i<n;i++) { *(p+i)=i+1; } int count=0; int i=0; while(ren!=1) { if(*(p+i)!=0) { coun
2021-05-29 10:48:28 263
原创 有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数,在主函数中输入n个数和输出调整后的n个数。
#include <stdio.h>#include <stdlib.h>void houyi(int *arr,int len,int m){ int* brr=(int*)malloc(m*sizeof(int)); for(int i=0;i<m;i++) { brr[i]=arr[len-m+i]; } int j=0; for(int i=len-m-1;i>=0;i--) { arr[len-1-j]=arr[i]; j++;
2021-05-29 10:45:53 295
原创 进制转换器(可将10进制转换为任意进制)
#include <stdio.h>void zhuanhuan(char *str,int n,int radix){ int tmp=0; int a=n; while(n!=0) { n/=radix; tmp++; } int i=0; int b=0; for(i;i<tmp;i++) { b=a%radix; if(b>=10) { b=b-10+'A'; str[tmp-1-i]=b; } else {
2021-04-24 15:34:07 239
原创 itoa;将数字变为字符串
#include <stdio.h>#include <math.h>int main(){ int a; scanf("%d",&a); char arr[20005]; int b=a; int tmp=0; int c=0; while(a!=0) { a/=10; tmp++; } int power = pow(10.0,tmp-1); int i=0; for(i;i<tmp;i++) { c=b/power;
2021-04-24 14:07:19 67
原创 简单的字符串拷贝函数
简单的字符串拷贝函数void mystrcpy(char*brr,char*arr){ int i=0; while(arr[i]!='\0') { brr[i]=arr[i]; i++; } brr[i]='\0';}
2021-04-17 13:58:27 308
原创 . 将数字变成 0 的操作次数 给你一个非负整数 num ,请你返回将它变成 0 所需要的步数。 如果当前数字是偶数,你需要把它除以 2 ;否则,减去 1 。
将数字变成 0 的操作次数给你一个非负整数 num ,请你返回将它变成 0 所需要的步数。 如果当前数字是偶数,你需要把它除以 2 ;否则,减去 1 。示例 1:输入:num = 14输出:6解释:步骤 1) 14 是偶数,除以 2 得到 7 。步骤 2) 7 是奇数,减 1 得到 6 。步骤 3) 6 是偶数,除以 2 得到 3 。步骤 4) 3 是奇数,减 1 得到 2 。步骤 5) 2 是偶数,除以 2 得到 1 。步骤 6) 1 是奇数,减 1 得到 0 。示例 2:输.
2021-04-17 13:52:58 1619
原创 7.拿硬币[数组] 桌上有 n 堆硬币,每堆的数量保存在数组 arr 中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有硬币的最少次数。
7.拿硬币[数组]桌上有 n 堆硬币,每堆的数量保存在数组 arr 中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有硬币的最少次数。示例 1:输入:[4,2,1]输出:4解释:第一堆硬币币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。示例 2:输入:[2,3,10]输出:8#include <stdio.h>int main(){ char arr[20005]; int i=0;
2021-04-17 13:51:35 1331
原创 5.猜数字[数组] 小A 和 小B 在玩猜数字。小B 每次从 1, 2, 3 中随机选择一个,小A 每次也从 1, 2, 3 中选择一个猜。他们一共进行三次这个游戏,请返回 小A 猜对了几次? 输
5.猜数字[数组]小A 和 小B 在玩猜数字。小B 每次从 1, 2, 3 中随机选择一个,小A 每次也从 1, 2, 3 中选择一个猜。他们一共进行三次这个游戏,请返回 小A 猜对了几次?输入的guess数组为 小A 每次的猜测,answer数组为 小B 每次的选择。guess和answer的长度都等于3。示例 1:输入:guess = [1,2,3], answer = [1,2,3]输出:3解释:小A 每次都猜对了。示例 2:输入:guess = [2,2,3], answer = [
2021-04-17 13:49:54 491
原创 重新排列数组[数组] 给你一个数组 nums ,数组中有 2n 个元素,按 [x1,x2,...,xn,y1,y2,...,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,...,x
.重新排列数组[数组]给你一个数组nums,数组中有2n个元素,按[x1,x2,...,xn,y1,y2,...,yn]的格式排列。请你将数组按[x1,y1,x2,y2,...,xn,yn]格式重新排列,返回重排后的数组。示例1:输入:nums = [2,5,1,3,4,7], n = 3输出:[2,3,5,4,1,7]解释:由于x1=2, x2=5, x3=1, y1=3, y2=4, y3=7,所以答案为[2,3,5,4,1,7]...
2021-04-17 13:36:52 734
原创 2.好数对的数量 给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组好数对。返回好数对的数目。
2.好数对的数量 给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组好数对。返回好数对的数目。示例 1:输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始示例 2:输入:nums = [1,1,1,1]输出:6解释:数组中的每组数字都是好数对示例 3:输入:nums = [1,2,3]输出
2021-04-17 13:29:31 715
原创 1.一维数组前缀和,给你一个数组 nums 。数组「前缀和」的计算公式为:rtSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的前缀和
(1.一维数组前缀和,给你一个数组 nums 。数组「前缀和」的计算公式为:rtSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的前缀和)1.一维数组前缀和给你一个数组 nums 。数组「前缀和」的计算公式为:rtSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的前缀和示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:前缀和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:
2021-04-17 13:25:51 513
原创 给一个不多于5位的整数,输出其是几位数,并分别输出每一位数,最后求出其逆序数
求a为几位数## 标题#include <stdio.h>int GetFigures(long long a)//计算a为几位数{ int b=0; if(a==0) { return 1; } while(a!=0) { a/=10; b++; } return b;}输出a的每一位数## 标题#include <stdio.h>void X(long
2020-10-15 22:09:52 1304 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人