1樓:
因為**中用錯了輸出控制符,應該將printf("%f\n",num);中的%f改成%d才是。
2樓:百i度網友
此程式中,已定義num為整型變數,而在後面的printf()輸出時,型別被描述為浮點數(%f)。這樣寫法是有問題的。c語言中,整型變數和浮點型變數在記憶體中的存放格式是不一樣的。
整型變數表示的是乙個16位長的二進位制數,在記憶體中占用2個位元組單元,而浮點數是由乙個位元組的階碼和3個位元組的尾數構成的,共占用4個位元組記憶體單元。將2位元組的整型數按4位元組浮點數型式輸出,會得到無法預料的結果。
3樓:匿名使用者
因為整型資料與浮點型資料的儲存方式是不一樣的,例如浮點型是32位4個位元組,它的後4位是用來表示小數點的數,而整型資料就除了最高位判斷是否為無符號,後面的31位全為表示整型資料,有些編譯器不將他進行強轉,是會報錯的,即時不報錯效果肯定也是天差地別。比如寫成printf("%f\n",(float)num);這樣將num在輸出之前就強轉成浮點型資料了,就沒有錯了
4樓:杯具——悲劇
#include
#include
int main()
printf("%d\n",num);//如果資料型別已經被初始化為整數,記憶體空間就永遠是整形,不能輸出浮點數
system("pause");
return 0;}
5樓:愛豬豬的灰灰
因為你輸出是,應該使用%d,而不是%f。
%d 整形。int
%f 單精度實數 float
%lf 雙精度實型 double
%c 字元型 char
%s z字串 char
6樓:一萬光年
其中一行這樣改寫一下
num=abs(num);
這是求絕對值函式,總能返回輸入引數的絕對值,不管正數還是負數。所以肯定可以的。試試看結果則麼樣吧。
7樓:處搖胼手胝足
int 轉換float 是經過縮位處理的,其結果不是你想象的值。錯誤在於使用%f表達int 值
8樓:
因為是整型啊,你輸出寫成了%f,改成%d
9樓:聽不清啊
輸出語句要改為:
printf("%d\n",num);
10樓:匿名使用者
#include
int main(void)
//int num;
float num;//注意此處所定義的變數num的型別//scanf("%d",&num);
scanf("%f",&num);
if (num < 0)
num = -num;
//printf("%d\n",num);
printf("%f\n",num);
return 0;
11樓:
使用%d輸出,%f是輸出浮點數的。
12樓:哪天下雨
輸出語句寫錯了,應該是%d,不應該是%f。希望可以幫到你。
13樓:匿名使用者
printf("%d\n", num);//把%f改成 %d
14樓:燼
浮點型列印。換成%d
15樓:天下無敵
你可以直接用型別轉換
16樓:吶傷誰聆聽
num=-num改為num=-1*num
也可以用num=abs(num)
但是要匯入math.h
17樓:
應該是printf("%d\n",num);
18樓:滅了那個王八蛋
0就是正數啊小於0的數求正就是0啊沒啥問題啊
19樓:匿名使用者
#include
int main()
printf("%d\n", num); // 改成 %d 哦return 0;}
c語言程式設計……新手求助 50
20樓:好名字都被取了
利用乙個三重迴圈解決,第一第二重迴圈遍歷所有的數對,第三重迴圈判斷是否為好數對。
#include
#include
int greatdouble(int a , int n);
main()
{int i;
int n; //集合元素的個數
int a[1000]; //乙個陣列儲存所有集合中的元素scanf("%d",&n);
for(i=0;i
21樓:匿名使用者
/*求好對數*/
#include
int main ( void )
{int n,i,j,k,count=0,sum=0;
int a[1000];
scanf("%d",&n);
for(i=0;i
22樓:章江林秀潔
1)第乙個scanf中多了個雙引號
scanf("x=%d",&x");
改為scanf("x=%d",&x);
2)scanf("x=%d",&x);這種格式你輸入的時候需要先輸入x=然後才輸入x的整數值
改為printf("x=");
scanf("%d",&x);
c語言新手求助!!!
23樓:
lz您好
pi是不是左值,下面不能初始化賦值,還有函式返回值不對#include
#define pi 3.14159
float fun (int n)
void main()
#include
#define pi 3.14159
float fun(int n)
void main()
這是我給你改過之後的,你的基本都是小問題,比方說pi你在第二行已經說明了,下面在給他賦值肯定會出問題的,因為這個時候pi就是3.14159, 還有就是fun函式的型別,這裡選擇float型別比較好,因為pi為float 這樣不易出現精度丟失的情況,而且此時輸出函式你用的f 說明fun函式應該是float型別 ,但是前面宣告的時候你用的是int 這肯定也會報錯。
1.既然已經有了#define pi 3.14159這一句,那float pi=3.14159;
這一句就不用了
2.int fun (int n)
應該為 float fun (int n)希望採納!
24樓:匿名使用者
#include
#define pi 3.14159
int fun (int n)//int 換成double 吧void main()
我執行了 沒什麼了
25樓:釁蘊
#include
#define pi 3.14159 //這個地方已經定義了pi了int fun (int n)
void main()
26樓:匿名使用者
float pi=3.14159;
這句不要
第二行不是就define過了麼,這裡重複定義的錯誤
27樓:林連超
既然已經有了#define pi 3.14159這一句,那float pi=3.14159;
這一句就不用了
int fun (int n)
應該為 float fun (int n)
28樓:love楚度
#include
#define pi 3.14159
float fun(int n)
void main()
這是我給你改過之後的,你的基本都是小問題,比方說pi你在第二行已經說明了,下面在給他賦值肯定會出問題的,因為這個時候pi就是3.14159, 還有就是fun函式的型別,這裡選擇float型別比較好,因為pi為float 這樣不易出現精度丟失的情況,而且此時輸出函式你用的f 說明fun函式應該是float型別 ,但是前面宣告的時候你用的是int 這肯定也會報錯。有什麼不懂可以繼續追問,謝謝採納。
29樓:匿名使用者
pi是不是左值,下面不能初始化賦值,還有函式返回值不對#include
#define pi 3.14159
float fun (int n)
void main()
30樓:匿名使用者
pi這個變數已經定義了,不能重複定義,而且你的方法的返回值不正確,應該是float型別的
C語言程式設計題,求大神,C語言程式設計題,求助大神
這個求大神,我不太清楚,我在抖音,我那個網不好打不開那個真不好意思啊,你可以看看別人怎麼回答,但是我覺得這個問題肯定是。這種語言程式設計題是很難做的,對我而言,c語言程式設計題,求助大神 int fun int x int fun int x if x x count x return 0 樓上的都...
c語言程式設計班費問題新人求助,C語言程式設計班費問題,新人求助
include include int main h 0,p int a 1000 b 1000 c 1000 scanf d x p x 4 for i 1 i for j 1 j if x 6 i 5 j 4 0 x 6 i 5 j 0 if m 0 printf no answer n els...
c語言程式設計,C語言程式設計
else 非字母 switch read buf break default break printf n printf tab count d n tab count printf blank count d n blank count printf char count d n char cou...