c兩個時間大小比較,c c 兩個時間大小比較

2022-02-15 19:00:22 字數 3299 閱讀 6727

1樓:馮老師(必果學院

兩個時間大小的比較方法描述如下:

首先解析字串,獲取年月日時分秒各項數值。然後按照先比較年月日,再比較時分秒的辦法進行比較。如果大於則返回1,如果小於返回0,如果等於返回2。

這裡面需要利用到兩個知識點:

比較年月日,可以先將年月日集成為乙個整數,然後比較整數即可比較出年月日的大小

sscanf可以將字串中的數值提取出來

**實現如下:

int compare(const char* time1,const char* time2)

2樓:匿名使用者

有這麼複雜麼 char str1[30] = "2015-08-06 09:32:60";

char str2[30] = "2015-04-06 09:32:59";這個時間 是控制項獲取的還是手動輸入的?

如果是控制項獲取的 一般是ctime型別的,直接可以比較大小;如果手動輸入的 可以轉成ctime類 然後再直接比較大小,再輸入的時候 控制一下就可以了;

ctime timestr(lpstr str)

然後呼叫這個 ctime t1=timestr("2015-08-06 09:32:60");

ctime t2=timestr("2015-04-06 09:32:59");

int i=0;

if(t1>t2)

else if(t2>t1)

else

c++兩個數判斷大小

3樓:寶平

下面兩位都沒說完,我測了一下,你那個程式再輸入資料時,那兒也不對,你要把那個("%d,%d中間的逗號也刪了,不然仍然會輸出乙個位址,你可以試一下,練一下除錯能力

第二個問題就是下面兩位說的a==b

等著你那20懸賞呀

4樓:未來需努力點綴

lz你好

修改**如下:

#include

#include

int main()

else if(a==b)//c語言中=是賦值的意思 ==才是等於的意思 注意了喲

else

//printf("sorry,有個bug\n"); 這條語句沒什麼用吧 建議去掉

system("pause");

return 0;

}再有一點就是:

我們最好是使用

if()

……else if()

……else

這樣的語句更顯條理性、邏輯性

希望能幫助你哈

5樓:匿名使用者

#include

#include

int main()

if(a==b)

if(a

printf("sorry,有個bug\n");

system("pause");

return 0;}

6樓:

在c/c++中, = 是賦值的意思,作用是將=右邊的值賦給左邊的變數。而且該表示式會返回這個變數被賦值後的值。

舉個例子:

int a,b;

b=(a=5);//先進行a=5的操作,將5這個值賦給a這個變數,而且a=5這個表示式又返回了a的值,此時a的值為5,所以a=5這個表示式的值為5。因為b=(a=5),表示式a=5的值(即5)賦給了b。所以b的值也為5。

所以樓主的這句**

if(a=b)

的意思是:將b的值賦給a,並且a=b這句表示式的值為a的值(也為b的值)。在c/c++中,任何非0的值轉化為bool型都表示true,只有0會轉為false。

所以如果b的值不為0,則表示式a=b的值也不為0,則判斷成立,執行花括號中的語句;否則不成立,跳過花括號中的語句。

這顯然不合該程式的想法。

在c/c++中,判斷兩者是否相等的運算子是==(即兩個等號)。a==b:若a、b值相等,則該表示式值為1(即true),否則為0(fause)。

樓主需要注意,程式語言和數學語言是不太一樣的,將兩者搞混對初學者來說是經常犯的錯誤,這需要平時多練習,養成檢查**的好習慣,慢慢就會理解程式的語言,並熟練掌握之。

另外還有一點,倒數第三行中的system("pause")呼叫了system()函式,而這個函式是在標頭檔案windows.h中的。因此要呼叫該函式,需要包含該標頭檔案,在**最前面打上#include 即可。

(樓主應該明白程式語言中的函式和數學上的函式是兩個概念吧。若不理解,之後老師講課或是自習中會慢慢理解掌握的。學習程式設計需要耐心,只要一步一步來就可以了。)

c++兩個數字比大小

7樓:冷方旭

沒錯吧,,我輸入「3,84」結果就是這樣:

實在不行的話你試試這個**:

#include

int main()

int max(int x,int y)

8樓:匿名使用者

輸入格式問題像這樣的scanf("%d,%d",&a,&b);應該輸入3,5才對,如果輸入3 5則到接收到中間那個空格的時候就會結束,也就是b沒有值一般是乙個隨機的負值。

函式宣告最好不要再另乙個函式裡面,這是乙個不好的習慣。

9樓:我喜歡看火影

scanf("%d,%d",&a,&b);

這句多了逗號

scanf("%d%d",&a,&b);

所以問題不是max()

若一定要這樣,輸入時就要加逗號如下:

用c++程式設計比較a b c 三個數大小,越簡單越好。。

10樓:地表最帥

#include

int main()

可以用逗號表示式來判斷:a>b?a:

b 就是很簡單的判斷,判斷條件在前 a>b ,如果條件成立。去冒號前面的值a,如果不成立,去冒號後面的值b。所以,可以簡單的逗號表示式來完成,樓上是用了最簡的語句表達,巢狀了逗號語句,

我自己寫的**是:

#include

void main()

11樓:匿名使用者

樓上寫的都正確的,來晚了,不過,還是想說說自己最簡單的想法, 可以用逗號表示式來判斷:a>b?a:

b 就是很簡單的判斷,判斷條件在前 a>b ,之後?如果條件成立 去冒號前面的值a,如果不成立,去冒號後面的值 b。 所以,可以簡單的逗號表示式來完成,樓上是用了最簡的語句表達,巢狀了逗號語句, 我自己寫的**是:

#includevoid main()

依照下面兩個比喻句的句式,以「時間」開頭,寫兩個句式相同的比

時間好比一陣清風,它能幫助我們吹散心頭的愁雲 時間如同一場細雨,它能協助回我們洗去心頭的雜質 答 時間好比一池清泉,它能幫助我們洗滌心靈上的塵垢 時間如同一股流水,它能協助我們衝談心靈上痛苦的回憶。時間好比一劑良藥,它能幫助我們減輕心靈上的傷痛 時間如同一把利刃,它能協助我們切除思想上的毒瘤 開放性...

C計算兩個日期之間的天數,c 兩個日期之間間隔的天數?

曆法規定,四年一閏,四百年閏,例如2000年是閏年,2100年不閏年,公曆年份是整百數的,必須是400的倍數的才是閏年,不是400的倍數的就是平年 計算兩個日期之間的天數 c 定義變數year1,month1,day1,year2,month2,day2 取出2個日期中的年 月 日 如果年相同,月也...

c根據兩個時間段分別顯示出來季度

今天剛好需要解決這個問題,不過我的是獲取當前時間的上乙個季度。與你的略有差別。以下是我實現的 string a datetime.now.addmonths 3 datetime.now.month 1 3 tostring mm 獲取上季度的第乙個月份 string year datetime.n...