解题思路:
先观察给出的样例,若为奇数,则中间的数为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语言程序设计教程(第三版)课后习题8.1 (Java代码)浏览:783 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:974 |
C语言训练-数字母 (C语言代码)浏览:585 |
C语言训练-求函数值 (C语言代码)浏览:941 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:513 |
蓝桥杯历届试题-九宫重排 (C++代码)浏览:2784 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:5235 |
WU-C语言程序设计教程(第三版)课后习题12.1 (C++代码)浏览:942 |
1011题解浏览:768 |
愚蠢的摄影师 (C++代码)浏览:939 |