用c++编写函数,先谢谢了!

来源:百度知道 编辑:UC知道 时间:2024/06/01 06:46:31
第一个:编写一个函数,满足以下条件的最大要求的n值;1*1+2*2+3*3+4*4……n*n〈1000,第2个;编写一个函数 ,能将用户输入的数用二进制,八进制,十六进制,输出 c++编写:先谢谢了!

第一题

#include <stdio.h>
#include <math.h>
int can(int n)
{
int sum = 0;
for (int i = 1; i <= n; i ++)
{
sum += i * i;
}
if (sum < 1000)
return 1;
return 0;
}

int main()
{
//1*1+2*2+3*3+4*4……n*n〈1000
int ans;
for (ans = (int)sqrt(1000); ans >= 0; ans --)
{
if (can(ans))
{
printf("这个数是 %d\n",ans);
break;
}
}
return 0;
}

第2题

#include <stdio.h>
char dig[17] = {"0123456789ABCDEF"};
void change(int number,int base)
{
if (number == 0)
{
printf("0\n");
return ;
}
int ans[10];
int len = 0;
while (number)
{
ans[len ++] = number % base;
number /= base;
}
for (int i = len - 1; i >= 0; i --)
{
printf("%c",dig[ans[i]]);