對於c語言的輸出格式n 2d,2 1f,2 11f

2021-04-22 06:29:18 字數 4877 閱讀 2354

1樓:匿名使用者

%md: m為指定輸出資料的寬度 如果位數小於m,則左端補以空格,如果大於m,則按實際位數輸出專

顯然a=1234的位數是4 大於屬%2d中指定的長度2 按實踐位數輸出 所以結果為1234

%m.nf格式:指定輸出資料寬度為m位,其中小數佔n位,如果數值長度小於m,則左端補空格,%-m.nf與上差不多,只是如果數值長度小於m,則右端補空格,大於的話就按原長度輸出

%2.1f就是指長度2位,含一位小數位,由於原長度大於2,所以原樣輸出,但只能右一位小數,所以結果是123.4

%2.11f,就是含11位小數,顯然長度不夠,則右端補零 結果位12345.54321000000

2樓:☆絕℃戀

(\n%2d,%2.1f,%2.11f) 中\n是換行,%2d是輸出的格式,意思是輸出雙精度該表示式的2位.

3樓:手機使用者

%d是整數輸出。%f是字元輸出,%c是字串輸出。

%2.1f,是指輸出實數一工佔2列,其中有1位小數,如果實際長度小於2,則左補空格。

%2.11f同上。

在c語言中 語句 printf("%d%d%%d%d",1+2,5/2,-2*4,11%3)是怎樣運算的

4樓:匿名使用者

先算1+2=3,這個沒什麼要說的

再計算 5/2=2(整型數與整型數計算,結果也為整型數.5/2=2.5,取整得2)

再計算 -2*4=-8,這個也沒什麼要說的

最後 11%3=2(11/3取餘數) 關於取餘計算.我想說一下,就是隻有整型數才能進行取餘計算. 特殊情況,如果m小於n,m%n=m.

輸出框輸出的是32-82(沒有空格)

還想說一下關於printf的問題.就以本題為例.如果%d的個數少於輸出項的個數,則多餘的項不輸出.如果%d的個數多於輸出項的個數.則多項的%d會輸出不定值.

還有,就是printf是按從左向右的順序輸出的.但是輸出項部分.是以從右向左的順序運算的.

也就是說.本例中.是先運算11%3=2,最後運算1+2=3,但是輸出時,還是自左向右.

這點需要注意...(函式引數的計算順序是自右向左)

關於習題嘛.我覺得你到書店裡買一本好點的二級習題就可以了.最重要的是反覆的做,自己總結知識點.不然.做再多的習題,也沒有用.

祝你成功!

5樓:匿名使用者

在函式裡,引數是從右向左進行的

int a=5;

printf("%d %d",a,++a);

結果是6 6

注意:在某些編譯器中是從左向右

c語言 幫我解釋下程式

6樓:齊海齊海

||||#include

typedef struct

date;

typedef struct /*宣告一個結構體型別*/student_record;

#define max_num 10//10個學生的資料student_record students[max_num];

/* 以下是判斷輸入年月日是否正確*/

int validate(date d)

else

return (day>=1 && day<=31);

} /*以下是輸入輸出函式*/

void input(void) }

/*列印輸出*/

void output(void) }

/*以下是主函式*/

void main(void)

7樓:匿名使用者

#include "stdio.h"

#include "math.h"

#include "string.h"

#include "stdlib.h"

#define true 1 //定義true值位1

#define false 0 //定義false值位0

#define length 2 //定義length值位1

struct date //宣告一個結構體型別date 日期結構為 年/月/日

; struct student_record //宣告一個結構體型別student_record 學生記錄資訊結構為 名字/出生日期/分數

; void setdate(struct date*); //輸入日期

int validatedate(struct date*); //判斷日期是否合理

void showdate(struct date*); 列印日期

void inputrecord(struct student_record* ); //輸入學生記錄資訊

void sort(struct student_record *,int); //安裝學生分數排序

void print(struct student_record *,int); //列印學生記錄資訊

/*以下是主函式*/

void main(void)

void showdate(struct date *dp)

int validatedate(struct date *dp) // 以下是判斷輸入年月日是否正確

else

return (day>=1 && day<=31);

} void inputrecord(struct student_record *stup) //以下是輸入學生記錄資訊函式

printf("請輸入你的分數:");

scanf("%f",&(stup->score));

} void sort(struct student_record *a,int length) //按分數排序 }

/*總結列表*/

void print(struct student_record *sps,int length) }

**不懂就指出來吧

8樓:匿名使用者

這個程式不是很繁瑣啊,

#include "stdio.h"

#include "math.h"

#include "string.h"

#include "stdlib.h"

#define true 1

#define false 0

#define length 2

struct date

; struct student_record /*宣告一個結構體型別*/

; void setdate(struct date*); /* 宣告呼叫函式*/

int validatedate(struct date*);

void showdate(struct date*);

void inputrecord(struct student_record* );

void sort(struct student_record *,int);

void print(struct student_record *,int);

/*以下是主函式*/

void main(void)

void showdate(struct date *dp)

/* 以下是判斷輸入年月日是否正確*/

int validatedate(struct date *dp)

else

return (day>=1 && day<=31);

} /*以下是輸入輸出函式*/

void inputrecord(struct student_record *stup)

printf("請輸入你的分數:"); 如果符合則提示「輸入分數」

scanf("%f",&(stup->score));

} /*按分數排序*/

void sort(struct student_record *a,int length) }

/*總結列表*/

void print(struct student_record *sps,int length) }

自己再好好看看,這個不難,可以找個通訊錄,還有成績管理系統類似的程式看看,那個比這個難多了,對你的提高會很有幫助

9樓:匿名使用者

太長了 大概就是一個學生的姓名,生日,分數的簡單統計,有輸入這些資訊和輸出這些資訊的功能和糾錯能力,很簡單,耐下心硬著頭皮讀4遍,不懂我負責!呵呵

10樓:匿名使用者

*/主函式

*/ void main(void)

void showdate(struct date *dp)輸出年月日(其中月是已定義的字元陣列monthnames中的元素,所以用%s)

/* 判斷輸入年月日是否正確*/

int validatedate(struct date *dp)else

return (day>=1 && day<=31);}

11樓:匿名使用者

哪兒不懂,你得說明一下吧..

c語言 求1-2/3+3/5-4/7+5/9-6/11+...的前n項和,結果保留3位小數。 為什麼輸出不了結果

12樓:匿名使用者

doelse

}while(i<=n);

定義一個flag標記正負號得變數,賦值為1改為double flag=1;

while(i<=n)

13樓:匿名使用者

if(n%2==0) 不對吧,應該是if((i+1)%2==0)吧

14樓:

printf("%.3lf",sum);

lf有問題?

c語言中輸入格式 輸出格式的組成包括哪些內容

希望被樓主採納!printf 函式是格式化輸出函式,一般用於向標準輸出裝置按規定格式輸出資訊。printf 函式的呼叫格式為 printf 格式化字串 參量表 其中格式化字串包括兩部分內容 一部分是正常字元,這些字元將按原樣輸出 另一部分是格式化規定字元,以 開始,後跟一個或幾個規定字元,用來確定輸...

c語言 輸入正整數n,輸出n的所有因子

1 定義整型變數,用於程式的運算。2 輸入兩個大於2的正整數,儲存在變數n和m中。3 獲取臨時變數t的值為m,設定i的初值為2。5 用i對整數m求餘,儲存在變數r中。6 判斷i是否m的質因子,如果是則繼續判斷是否n的質因子,如果不是n的質因子,則退出迴圈。7 如果i不是質因子,則自加1,繼續判斷。8...

c語言已知a 5,b 6,c 7,d 8,m 2,n 2執行

答案不可能是復2,答案應制該是0,這是一個邏輯表達bai式不可能出現0,1之外的數du字。前邊 的優zhi先級高於賦值也就是先dao判斷a b是假,也就是0,把這個零賦值給m,此時m 0,因為邏輯符號 有短路效應,也就是說前邊只有出現假,就不會接著判斷後邊的一部分,所以整體表示式是假,也就是0 答案...