C语言百日刷题第七天
创始人
2024-01-20 13:38:48
0

C语言百日刷题第七天

      • 61. 写一个函数isPowerOfTwo判断是不是2的幂次方
      • 62. 写一个函数isPowerOfThree判断是不是3的幂次方
      • 63.n 的第 k 个因子
      • 64.有效的完全平方数
      • 65.搜索旋转排序数组
      • 66.桌上拿硬币
      • 67.计算生成元
      • 68.计算分子量
      • 69.最佳情侣身高差
      • 70.拯救外星人

61. 写一个函数isPowerOfTwo判断是不是2的幂次方

在这里插入图片描述

bool isPowerOfTwo(int n)
{unsigned int k = 1;if(n<=0)return false;if(n==1)return true;for(int i = 1;i<32;i++){k*=2;if(k==n)return true;}return false;
}

62. 写一个函数isPowerOfThree判断是不是3的幂次方

在这里插入图片描述

bool isPowerOfThree(int n){unsigned int k = 1;if(n<=0)return false;if(n==1)return true;for(int i = 0;i<=20;i++)//3的20次幂已经是32位整型的上限了。{k*=3;if(k==n)return true;}return false;}

63.n 的第 k 个因子

在这里插入图片描述

int kthFactor(int n, int k)
{int count = 0;for(int i = 1;i<=n;i++){if(n%i==0)count++;if(count==k)return i;}return -1;
}

64.有效的完全平方数

在这里插入图片描述

防止溢出,要用long long型
死循环枚举所有情况

bool isPerfectSquare(int num)
{int i = 0;long long sum = 0;while(1){i++;sum=(long long)i*i;if(sum==num)return true;if(sum>=num)return false;}
}

65.搜索旋转排序数组

int search(int* nums, int numsSize, int target)
{int i;for(i =0; i < numsSize; i++ ){if(nums[i]== target){return i;}}return -1;
}

66.桌上拿硬币

在这里插入图片描述

67.计算生成元

在这里插入图片描述
生成元:X+X的每一位数字之和等于Y,则X是Y的生成元。
例如:
输入216则他的最小生成元是198
因为198 + 1 +9 +8 = 216

#include
int main()
{int x, y, z, gen = 0;scanf("%d", &y);for (int i = 1; i < y; i++){x = i; z = i;while (i > 0){x = x + i % 10;i = i / 10;}i = z;if (x == y){gen = 1;printf("%d", i);break;}}if (gen != 1){printf("0");}return 0;
}

68.计算分子量

在这里插入图片描述

#include
int main() 
{char c;char s[1000];double arr[200];arr['C'] = 12.01;arr['O'] = 16.00;arr['H'] = 1.008;arr['N'] = 14.01;//输入字符串scanf("%s", s);int i = 0;double w = 0;//循环遍历s字符串while (s[i] != '\0') {int sum = 0;c = s[i];i++;//判断下一位是否为数字while (s[i] >= '0' && s[i] <= '9') {//如果数字 求出数字大小sum = sum * 10 + s[i] - '0';//进行自加 便以判断下一位i++;}//如果有数字进行以下操作if (sum)w = w+ sum * arr[c];else w = w + arr[c];}printf("%.3f g/mol\n", w);return 0;
}

69.最佳情侣身高差

在这里插入图片描述

‘\n’表示忽略所有的空白字符,输入非空白字符结束输入 ,不加’\n’会使c接收换行符


#include
int main()
{int n,i;char c;double h,s;scanf("%d\n", &n); for(i=0;iscanf("\n%c%lf",&c,&h);s=0;if(c=='M'){s=h/1.09;}else{s=h*1.09;}printf("%.2lf\n",s);}return 0;
}

70.拯救外星人

在这里插入图片描述

#include
int main()
{int a,b,i,sum=1;scanf("%d%d",&a,&b);for(i=1;i<=a+b;i++)sum*=i;printf("%d\n",sum);		
}

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...