解题思路:
先观察给出的样例,若为奇数,则中间的数为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二级辅导-计负均正 (C语言代码)浏览:507 |
C语言程序设计教程(第三版)课后习题8.8 (C++代码)浏览:551 |
printf基础练习2 (C语言代码)浏览:567 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:559 |
输出正反三角形 (C语言代码)格式错误!!!浏览:1141 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:880 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:569 |
模拟计算器 (C++代码)浏览:807 |
GC的苦恼 (C语言代码)浏览:621 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1038 |