解题思路: 利用调用函数使主函数更加简洁。
注意事项: ◆调用函数写在主函数前面,或者在主函数中对需要调用的函数进行声明;◆函数可能有些臃肿,建议自己再进行修正。▓
参考代码:
#includeint hw(int k,int n,int f) //k是循环中的每一个数,依次增加;n是各个位数之和;f是标记变量 { int a=0,b=k; int s,m=0; while(1){ //用while循环来判断回文数和各个位数之和 s=k%10; m+=s; //m用来计算各个位数之和,以便后续判断 a=a*10+s; k/=10; if(k==0) //当k为0时跳出去循环,防止死循环 break; } if(a==b&&m==n) //判断是否为回文数且各个位数之和是否和输入值相等 { f=0; //当有输出时,变量的值发生变化 printf("%d\n",a); //输出条件符合的数值 } return f; //返回变量的最终值(这里我也不是特别清楚,没有返回的话标记变量的值不会变化, 主函数中任意输入值的输出结果 都会带有-1) } int main(){ int n,s=0,i,f=1,g; //f是用来标记的变量,以此来确定是否有输出 scanf("%d",&n); for(i=10000;i<1000000;i++){ //题目要求,直接用循环条件 f=hw(i,n,f); 调用hw函数,(个人觉得会使主函数简洁一些,当然代码行数可能会增加¥¥¥) } if(f) //如果f为1,则没有输出,此时输出-1; printf("-1\n"); return 0; }
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:1517 |
震宇大神的杀毒软件 (C语言代码)浏览:1348 |
printf基础练习2 (C语言代码)浏览:605 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:643 |
C语言训练-立方和不等式 (C语言代码)浏览:779 |
C语言训练-求素数问题 (C语言代码)浏览:773 |
求圆的面积 (C语言代码)浏览:1756 |
C语言训练-数字母 (C语言代码)浏览:648 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:582 |
川哥的吩咐 (C语言代码)浏览:663 |