震惊!printf 与scanf 不可告人的秘密
生活随笔
收集整理的這篇文章主要介紹了
震惊!printf 与scanf 不可告人的秘密
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 1. printf與scanf
- 2.sqrt函數
- 3.π
- 4.三位數反轉
- 5.三整數排序
1. printf與scanf
#include<stdio.h> int main() {printf("%lf\n",8.0/5.0);printf("%lf\n",8/5.0);printf("%lf\n",8/5);printf("%d\n",8.0/5.0);printf("%d\n",8/5); } //1.600000 //1.600000 //0.000000 //-1717986918 //1對于printf來說,后面是什么類型,前面就必須對應相應的類型
浮點數可以用%lf輸出,也可以用%f輸出,而且默認保留小數點后六位
對于scanf來說,double類型只能用%lf
2.sqrt函數
#include<stdio.h> #include<math.h> int main() {printf("%f\n",sqrt(3));printf("%d\n",sqrt(3));printf("%f\n",sqrt(3.0)); } //1.732051 //-396866390 //1.732051由此可見,sqrt函數返回值是實數型,而且函數的參數可以是實數或整數
sqrt函數的四舍五入:int m = floor (sqrt(n)+0.5);
3.π
const double pi = acos(-1.0);
4.三位數反轉
#include<stdio.h> #include<math.h> int main() {int n;scanf("%d",&n);printf("%d%d%d",n%10,n/10%10,n/100);return 0; } #include<stdio.h> #include<math.h> int main() {int n;scanf("%d",&n);printf("%03d",n%10*100+n/10%10*10+n/100);return 0; }兩種方法,告訴我們整體與部分的思想
5.三整數排序
#include<stdio.h> #include<math.h> int main() {int a,b,c,t;scanf("%d%d%d",&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}printf("%d %d %d",a,b,c);return 0; }把a,b,c大小固定,然后分類討論,比猜測可能方案簡便
總結
以上是生活随笔為你收集整理的震惊!printf 与scanf 不可告人的秘密的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: maxvalue mysql自动分区_创
- 下一篇: haddler处理队列 netty_Ne