Time of Update: 2017-01-19
複製代碼 代碼如下:#include <stdio.h>#include <stdlib.h>#include <conio.h>/*以下是為了構建線性鏈表而定義的結構體*/typedef struct chaink{ char c; struct chaink * next; }ck;ck * chain(ck *,int);int print(ck
Time of Update: 2017-01-19
實現以下排序插入排序O(n^2)冒泡排序 O(n^2)選擇排序 O(n^2)快速排序 O(n log n)堆排序 O(n log n)歸併排序 O(n log n)希爾排序 O(n^1.25)1.插入排序 O(n^2)一般來說,插入排序都採用in-place在數組上實現。具體演算法描述如下:⒈ 從第一個元素開始,該元素可以認為已經被排序⒉ 取出下一個元素,在已經排序的元素序列中從後向前掃描⒊ 如果該元素(已排序)大於新元素,將該元素移到下一位置⒋
Time of Update: 2017-01-19
字元轉換為數字:#include<stdlib.h>atoi();將字元轉換為整型 例:char ch1;int i=atoi(ch1);atol();將字元轉化為長整型 例:char ch2;long l=atol(ch2);atof();將字元轉化為浮點型 例:char ch3;float f=atof(ch3);strtod(); 將字串轉化為雙精確度類型 例:string str1;double
Time of Update: 2017-01-19
哥德巴哈猜想是世界近代三大數學難題之一。1742年,由德國中學教師哥德巴哈在教學中首先發現的。1742年6月7日哥德巴哈把自己的多年實驗證明寫信給當時的大數學家歐拉,歐拉回信正式提出了以下兩個猜想:a.任何一個大於 6的偶數都可以表示成兩個素數之和。b.任何一個大於9的奇數都可以表示成三個素數之和。 這就是哥德巴哈猜想。複製代碼 代碼如下://任一大於2的偶數,都可表示成兩個素數之和。#include<iostream>using namespace std;int
Time of Update: 2017-01-19
在linux下開發,使用的是C語言。適用於需要定時的軟體開發,以系統真實的時間來計算,它送出SIGALRM訊號。每隔一秒定時一次c語言定時器 複製代碼 代碼如下:#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <termios.h>#include <errno.h>#include <ctype.h>#include
Time of Update: 2017-01-19
在C語言中一般用typedef來為回呼函數定義別名(參數名)。 別名通過宏定義typedef來實現,不是簡單的宏替換。可以用作同時聲明指標型的多個對象。比如:複製代碼 代碼如下:char *pa,pb;//pa是一個char型指標,但pb是一個char型字元。我們可以這樣來實現typedef char* PCHAR;PCHAR pa,pb;//pa和pb都是char型指標先看一個回呼函數的例子:複製代碼
Time of Update: 2017-01-19
最近做了這樣一個題目,感覺挺有趣~題目如下:問題描述Winder 最近在玩一個數字遊戲,該遊戲是在一個n*m 的網格上進行的,每個格子上有 一個數字,代表這個格子的數值。玩家需要從網格的左上方的格子走到右下角的格子,每次 只能向右或者向下走,並且不能回頭。玩家每經過一個格子可以選擇分值是否加上該格子的 數值,每次遊戲的初始分數都是0。Winder 想知道在每場遊戲,他最多能夠得到多少分值。但是,Winder 很懶,所以你必 須幫他來完成這件事。資料輸入輸入第一行兩個正整數N 和M(0<N、
Time of Update: 2017-01-19
C++中的引用和指標★ 相同點: 1. 都是地址的概念;指標指向一塊記憶體,它的內容是所指記憶體的地址;引用是某塊記憶體的別名(java中的引用其實也是別名的意思)。★ 區別: 1. 指標是一個實體,而引用僅是個別名;2. 引用使用時無需解引用(*),指標需要解引用;3. 引用只能在定義時被初始化一次,之後不可變;指標可變; 引用“從一而終” 4. 引用沒有 const,指標有 const,const 的指標不可變;5. 引用不可為空,指標可以為空白;6. “sizeof
Time of Update: 2017-01-19
複製代碼 代碼如下:#include <stdio.h>#include <stdlib.h>#include <pthread.h>void *t1(void *args) { return (void *) 0;}void *t2(void *args) { printf("thread 2 param[args] = %d\n", args); pthread_exit((void *) 3);}void *t3(void
Time of Update: 2017-01-19
開啟main.c編譯運行,注意,開啟main.c之後一定要將win32timer.c也加進工程中一起編譯,下面有圖。在開發單片機、ARM以及Linux系統的程式時,因為硬體定時中斷的存在我們很方便構造出定時ISR,然而在VC6.0中,我們如何寫一個定時程式呢?其實,就是timeSetEvent()這個函數的調用。這個函數的解釋見MSDN。詳細原理,請看我代碼中的注釋,我寫得很詳細了。main.c複製代碼 代碼如下://======================// main.c//======
Time of Update: 2017-01-19
該程式是利用opengl圖形庫與fmod音頻庫寫的一個簡單3d動畫程式。該程式在vs下運行良好,若缺少相關dll檔案請確認已配製fmod與opengl庫。mixmodel.cpp複製代碼 代碼如下:// mixmodel.cpp : 定義控制台應用程式的進入點。//#include "stdafx.h"//定義一個線程DWORD WINAPI SoundProc( LPVOID LPVIDEOPARAMETERS);//光照變數GLfloat whiteLight[] =
Time of Update: 2017-01-19
就是用c語言的寫的一個簡單http請求,並分析其響應,原理很簡單,主要是分析http響應,麻煩的是提取其中的比賽資訊複製代碼 代碼如下:#include <unistd.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <signal.h>#include <errno.h>#include
Time of Update: 2017-01-19
這段代碼展示了如何不使用<stdarg.h>中的va_list、va_start、va_end宏來實現自訂可變參數以及如何改變預設的%d、%f、%s等格式字元。複製代碼 代碼如下:#include <stdio.h>#include <stdlib.h> // itoa() and ltoa()#include <string.h> // strcat() and strlen()// echo("$i, $s, $l, $c", arg1,
Time of Update: 2017-01-19
分別用三個函數:輸入(time_input)、輸出(time_output)、轉換(time_change)函數複製代碼 代碼如下:#include<iostream>#include<cstdlib>using namespace std;void time_input(int& hour,int& minute);void time_output(int& hour,int& minte,char& noon);void time_change(int&
Time of Update: 2017-01-19
複製代碼 代碼如下:#include <stdio.h>#include <stdlib.h>#include <pthread.h>#define THREAD_NUM 10void *test(void *args) { printf("tid %d: i say 'Hello'.\n", args); return NULL;}int main() { int i, err; pthread_t
Time of Update: 2017-01-19
介紹內嵌函式之前,有必要介紹一下預先處理宏。內嵌函式的功能和預先處理宏的功能相似。相信大家都用過預先處理宏,我們會經常定義一些宏,如複製代碼 代碼如下:#define TABLE_COMP(x) ((x)>0?(x):0)就定義了一個宏。為什麼要使用宏呢?因為函數的調用必須要將程式執行的順序轉移到函數所存放在記憶體中的某個地址,將函數的程式內容執行完後,再返回到轉去執行該函數前的地方。這種轉移操作要求在轉去執行前要儲存現場並記憶執行的地址,轉回後要恢複現場,並按原來儲存地址繼續執行。因此,
Time of Update: 2017-01-19
一、預備知識—程式的記憶體配置一個由C/C++編譯的程式佔用的記憶體分為以下幾個部分1、棧區(stack)—由編譯器自動分配釋放,存放函數的參數值,局部變數的值等。其操作方式類似於資料結構中的棧。2、堆區(heap)—一般由程式員分配釋放,若程式員不釋放,程式結束時可能由OS回收。注意它與資料結構中的堆是兩回事,分配方式倒是類似於鏈表。3、全域區(靜態區)(static)—全域變數和靜態變數的儲存是放在一塊的,初始化的全域變數和靜態變數在一塊地區,未初始化的全域變數和未初始化的靜態變數在相鄰的另
Time of Update: 2017-01-19
每一C程式都必須有一main()函數,可以根據自己的愛好把它放在程式的某個地方。有些程式員把它放在最前面,而另一些程式員把它放在最後面,無論放在哪個地方,以下幾點說明都是適合的。在Turbo C2.0啟動過程中,傳遞main()函數三個參數:argc,argv和env。* argc:整數,為傳給main()的命令列參數個數。* argv:字串數組。char* argv[],我們可以看出,argv的類型是char* [],即是一個指向字元數組的指標,所以我們還可以寫作:char**
Time of Update: 2017-01-19
clock_t clock( void );Calculates the processor time used by the calling processhead file is <time.h>Return Valueclock returns the number of clock ticks of elapsed processor time. The returned value is the product of the amount of time that has
Time of Update: 2017-01-19
void srand( unsigned int seed );head file is <stdlib.h>RemarksThe srand function sets the starting point for generating a series of pseudorandom integers. To reinitialize the generator, use 1 as the seed argument. Any other value for seed sets