华师一附中OI组

标题: 函数训练题1 1!+2!+****+10! [打印本页]

作者: diggersun    时间: 2014-12-2 18:18
标题: 函数训练题1 1!+2!+****+10!
  1. #include <iostream>
  2. using namespace std;
  3. long long fac(int n)
  4. {
  5.     long long x=1;
  6.     for (int i=1;i<=n;i++) x=x*i;
  7.     return x;
  8. }
  9. int main()
  10. {
  11.     long long x=0;
  12.     for (int i=1;i<=10;i++) x=x+fac(i);
  13.     cout<<x;
  14.     return 0;

  15. }
复制代码

作者: clivia    时间: 2014-12-2 18:20
英语不好怎么办?!
作者: clivia    时间: 2014-12-2 18:21
clivia 发表于 2014-12-2 18:20
英语不好怎么办?!

算了我还是好好学英语吧。不玩了。
作者: diggersun    时间: 2014-12-2 18:21
函数设计的建议:
1、函数名字最好是动宾词组,Find , Try, Search Place 若他是预定义的函数,可以考虑加上 My
  不要加 nzh  keyima  panduan  不文雅。
2、变量的定义最好在函数内部,不要牵扯太多的外部变量
3、善于用中转变量
作者: diggersun    时间: 2014-12-2 18:27
简单排序
  1. #include <iostream>
  2. using namespace std;
  3. int a[10];
  4. void mysort()
  5. {
  6.     int i,j,k;
  7.     int m;
  8.     for (i=0;i<=8;i++)
  9.     {
  10.         m=a[i];k=i;
  11.         for (j=i+1;j<=9;j++)
  12.         if (a[j]>m) {m=a[j];k=j;}
  13.         swap(a[i],a[k]);
  14.     }
  15. }
  16. int main()
  17. {
  18.     int i;
  19.     for (i=0;i<=9;i++) cin>>a[i];
  20.     mysort();
  21.     for (i=0;i<=9;i++) cout<<a[i]<<' ';
  22.     return 0;

  23. }
复制代码

作者: diggersun    时间: 2014-12-2 18:29
听懂了,那么问题来了,我只想求10个数字里面的第4大的那个数字,怎么办?
作者: diggersun    时间: 2014-12-2 18:47
另外一种冒泡排序的方法
  1. #include <iostream>
  2. using namespace std;
  3. int a[10];
  4. void mysort()
  5. {
  6.     int i,j;
  7.     bool b=false;
  8.     i=8;
  9.     while ((i>=0) && !b)
  10.     {
  11.         b=true;
  12.         for (j=0; j<=i; j++)
  13.             if (a[j]<a[j+1])
  14.             {
  15.                 swap(a[j],a[j+1]);
  16.                 b=false;
  17.             }
  18.         i--;
  19.     }

  20. }
  21. int main()
  22. {
  23.     int i;
  24.     for (i=0; i<=9; i++) cin>>a[i];
  25.     mysort();
  26.     for (i=0; i<=9; i++) cout<<a[i]<<' ';
  27.     return 0;

  28. }
复制代码

作者: hr567    时间: 2014-12-2 20:55
膜拜…一下…




欢迎光临 华师一附中OI组 (http://hsyit.cn/) Powered by Discuz! X3.2