飞飞特别喜欢平方数,可是他数学并不好,你能帮他计算 n 与 m 之间所有平方数之和吗?
提示:若一个整数的开方还是整数,它就是平方数。例如:4、9、16、25是平方数。n 和 m 均可能为 0 至 100000000 内的任意整数,n、m不一定有序。输入样例:
3 1 4 10 3 17 20
输出样例:
在这里给出相应的输出。例如:
5 13 0
#include<stdio.h> #include<math.h> int main() { int t, m, n, i = 0, f, j; int a, sum = 0; scanf("%d", &t); while (i < t) { i++; scanf("%d %d", &m, &n); if (m < n) { m = m + n; n = m - n; m = m - n; } //浅排个序 sum=0;//记得让每组得出结果后初始化sum。 //若去掉这句,sum会把每组的结果相加。 for (f = n; f <= m; f++) { for (j = 1; j < m; j++) { a = pow(j, 2); if (f == a) { sum += f; } }//此for语句为了判断并取出能被较小数平方得到的数 }//这个是为了得到每组中间的数 printf("%d\n", sum);//务必注意打印位置 } return 0; }
没有任何参考,自己打的逻辑可能略显混乱,望见谅。
建议自己捋一捋逻辑关系再顺着大致思路敲一遍,真正能自己打出来才是真的懂了。
7-11 sdut-C语言实验- 平方数
于 2023-11-01 23:54:28 首次发布