怎麼用c語言求陣列中所有數的整數部分和及小數部分和

時間 2021-08-11 17:18:32

1樓:會飛的小兔子

#include

voidmain()

doubles;

inta;

doubleb;

printf("pleaseinputadoublenumber:");

scanf("%lf",&s);

a=(int)s;

b=s-a;

printf("ln%d%lf",a,b);

擴充套件資料c語言求100內素數:

#include

usingnamespace std;

int main()

if(prime==true)

cout

2樓:風若遠去何人留

對於任意的浮點數f, c語言規定,將其強制轉換為整型時,(int)f就是其整數部分的值。

根據這個,可以知道小數部分就是f - (int)f。

不過,要求整數部分和小數部分和,可以有更簡單的思路,不需要求每個數的小數部分,而是求得所有數的整數部分和後,用所有數的和減去整數部分和,也就是小數部分和了。這樣可以精簡**,提高效率。

演算法流程如下:

1 定義兩個統計變數,儲存整數和以及所有數的和,初始化為0;

2 遍歷陣列,求每個數的整數部分,並累加到整數和。

3 同步計算每個數的和;

4 遍歷結束後,結果相減就是小數和;

5 輸出結果。

float a[10];

int s_int = 0;

float s_float = 0;

int i;

for(i = 0 ;i <輸入10個數for(i = 0; i < 10; i ++)s_float -= s_int; //得到小數部分和。

printf("整數部分和為 %d, 小數部分和為%f\n", s_int, s_float);//輸出。

3樓:匿名使用者

int a[100],i;定義陣列

int sum1=0;儲存整數和

float sum2=0.0;儲存小數和

for(i=0;i<100;i++)}

4樓:匿名使用者

演算法思想:每一個數除以一的商是整數部分,餘數是小數部分。

大概程式如下(未進行除錯)

void main()}

5樓:匿名使用者

/* hello.c -- hello, world */#include "stdio.h"

#include "conio.h"

#define max 5

main()

;int i,j,sum=0;

for(i=0;i

printf("%d %f",sum,a);

getch();}

編寫c語言程式拆分輸入實數的整數部分與小數部分,用指標陣列做,大神幫忙啊

6樓:匿名使用者

#include

#include

#include

int splitrealnumber(double realnumber, int *realpart, int *decimalpart)

;char *rr[100];

int realnumlength = 0;

int i = 0;

char *tmp1;

char *tmp2;

char tt[2] = ;

for (i = 0; i < 100; i++)

sprintf(realnum, "%lf", realnumber);

realnumlength = strlen(realnum);

for (i = 0; i < realnumlength; i++)

//printf("realnum[%d] = %c \n", i, realnum[i]);

}tmp1 = rr[0];

*realpart = atoi(tmp1);

if (i < (realnumlength - 1))

else if(i == (realnumlength - 1))

else

return 0;

}void main()

在我的vc上,%lf存的資料要小數點後6位,導致小數部分的值後面可能有一串0,好煩。。。你隨便看下吧,哎。

C語言求陣列中第二小的數的下標,C語言 求一個陣列中第二小的數的下標

滿意答案是錯誤的,時間和空間複雜度過高,正確答案如下 對n個數兩兩比較,看成是比賽,最後得出冠軍和亞軍即可,即a 0 vs a 1 a 2 vs a 3 最後還有多的就輪空,每次比較的較小值 獲勝 進入下一輪 對 獲勝 者繼續上述兩兩比較,知道最後決出 冠軍 這就是n個數的最小值。我想很容易得知,這...

c語言怎麼用指標代替二維陣列,C語言怎麼用指標代替二維陣列

1.設p是指向二維陣列a m n 的指標變數,則有 int p a 0 此時p是指向一維陣列的指標。p 後,p指向 a 0 1 2.如果定義int p1 n p1 a p1 後,p1指向a 1 0 則p j將指向a 0 陣列中的元素a 0 j 由於a 0 a 1 a m 1 等各個行陣列依次連續儲存...

C語言,結構體中的陣列怎麼賦值,C語言中結構體中的陣列,不能直接賦值嗎

1 用字元常量逐個初始化陣列。例如 char a 8 把8個字元依次分別賦給c 0 c 7 這8個元素。如果在定義字元陣列時不進行初始化,則陣列中各元素的值是不可預料的。如果花括號中提供的初值個數 即字元個數 大於陣列長度,則出現語法錯誤。如果初值個數小於陣列長度,則只將這些字元賦給陣列中前面那些元...