解题思路:
先观察给出的样例,若为奇数,则中间的数为m^2,
若为偶数,则中间两个数为m^2-1,m^2+1。
然后中间数两边对称的数相加等于2*m^2,所以定理成立。
再观察,无论输入的是奇数还是偶数,输出的第一个数都是
m^2-m+1,所以再从第一个数开始,每个数+2,
加m-1次,再输出就行了。
注意事项:
最后一个数后面不能有空格,否则判错。
刚开始我是这样写的,虽然说跟结果看上去一样,但因为最后有一个空格,就判错了。
#include<stdio.h> int main() { int m,n,i; scanf("%d",&m); printf("%d*%d*%d=%d=",m,m,m,m*m*m); for(i=0;i<m*2;i+=2) { n=m*m-m+1+i; printf("%d+",n); } printf("\b "); return 0; }
参考代码:
#include<stdio.h> int main() { int m,n,i; scanf("%d",&m); printf("%d*%d*%d=%d=",m,m,m,m*m*m); for(i=0;i<m*2-2;i+=2) { n=m*m-m+1+i; printf("%d+",n); } printf("%d",m*m+m-1); return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:520 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:681 |
P1000 (C语言代码)浏览:870 |
陈教主的三角形 (C语言代码)浏览:1141 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:800 |
A+B for Input-Output Practice (I) (C语言代码)浏览:572 |
C语言训练-字符串正反连接 (C语言代码)浏览:630 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:420 |
C语言训练-斐波纳契数列 (C语言代码)浏览:593 |
检查金币 (C语言代码)浏览:1412 |