求大佬看一下c语言的一道题目
题目:求100到n以内(n<1000),各位数字的立方和等于1099的三位数。n由键盘输入,并将这些素数存储到数组a中并输出(每个数后面带一个空格)
要求:(1)编写如下接口的功能函数:int fun(int n),该函数的功能是判断n的各个位数的立方和是不是1099。若是,返回1,若不是返回0。
(2)main函数去调用该功能函数。
int fun(int n) { if (n < 100 || n > 1000) return 0; int a, b, c; a = n / 100; b = (n - a * 100) / 10; c = (n - a * 100 - b * 10); return (a*a*a + b*b*b + c*c*c == 1099); } int main() { int n,a[20]; scanf("%d", &n); int count = 0; for (int i = 100; i <= n; ++i) { if (fun(i)) { a[count] = i; ++count; } } for (int i = 0; i < count; ++i) { printf("%d ", a[i]); } system("pause"); return 0; }
[此贴子已经被作者于2021-3-19 22:22编辑过]