以經(jīng)給予解答,程序如下。歡迎加QQ群:218691837

公司主營業(yè)務:成都網(wǎng)站設計、成都網(wǎng)站建設、外貿(mào)網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出牟定免費做網(wǎng)站回饋大家。
#include stdio.h
#include stdlib.h
struct nn
{ int no;
int num;
};
typedef struct nn DATA;
int number( char * , DATA []);
int main( )
{
DATA b[100];
char sa[500];
int i, n;
gets( sa );
n = number( sa, b );
for ( i=0; in; i++ )
printf("%d %d\n", b[i].num, b[i].no );
system("pause");
}
//
#includestring.h
int number( char * str, DATA a[] )
{ int i,j,n,min=0,tag=0;
char *p;
int *t,temp;
p = strtok( str , " ");
for ( i = 0 ; p != NULL ; i++)
{ a[i].num = atoi(p);
p = strtok( NULL , " ");}
n = i;
t=(int *)malloc(n*4);
for(i=0;in;i++)
{*(t+i)=a[i].num;}
for(i=0;in-1;i++)
for(j=i+1;jn;j++)
{
if(*(t+i)*(t+j))
{
temp=*(t+i);
*(t+i)=*(t+j);
*(t+j)=temp;
}
}
//t_temp=(int *)malloc(n*4);
for(i=0;in;i++)
{
for(j=0;jn;j++)
{if(a[i].num==*(t+j))
{
a[i].no=j+1;
//continue;
}
}
}
for(i=0;in-1;i++)
{tag=0;
for(j=i+1;jn;j++)
{
if(a[i].no==a[j].no)
{
tag++;
// a[i].no = (a[i].no)-1;
//printf("tag=%d,no=%d",tag,a[i].no);
}
}
a[i].no=a[i].no-tag;
}
return n;
}
顧名思義,數(shù)據(jù)庫就是用來儲存數(shù)據(jù)的倉庫,比如你在百度知道上看到的這些海量的問題和解答,它們在網(wǎng)絡上肯定要有個存放的地方啊,這個地方就是數(shù)據(jù)庫。
而函數(shù)庫的標準說法則是“動態(tài)鏈接庫”(Dynamic Link Library),它們一般是以DLL文件的形式出現(xiàn)的,用來存放程序中需要重復調(diào)用或者需要與其他程序共享的一些公共函數(shù),C語言等編程語言所調(diào)用的函數(shù)就是從這里來的。數(shù)據(jù)庫與函數(shù)庫是兩碼事。
數(shù)據(jù)庫與C語言(或其他任何程序設計語言)之間是相互獨立的,本身并沒有直接關系,當程序需要調(diào)用數(shù)據(jù)庫中的數(shù)據(jù)時,它們就有關系了。比方說,你跟街上的超市之間本來是沒有啥關系的,但當你需要到超市買東西時,你們之間就發(fā)生關系了,明白沒有?
1、配置ODBC數(shù)據(jù)源。
2、使用SQL函數(shù)進行連接。
對于1、配置數(shù)據(jù)源,配置完以后就可以編程操作數(shù)據(jù)庫了。
對于2、使用SQL函數(shù)進行連接,參考代碼如下:
#includewindows.h
#includesql.h
#includesqlext.h
void?main()
{
HENV?henv;?//環(huán)境句柄
HDBC?hdbc;?//數(shù)據(jù)源句柄
HSTMT?hstmt;?//執(zhí)行語句句柄
unsigned?char?datasource[]="數(shù)據(jù)源名稱";?//即源中設置的源名稱
unsigned?char?user[]=?"用戶名";?//數(shù)據(jù)庫的帳戶名
unsigned?char?pwd[]=?"密碼";?//數(shù)據(jù)庫的密碼
unsigned?char?search[]="select?xm?from?stu?where?xh=0";
SQLRETURN?retcode;?//記錄各SQL函數(shù)的返回情況
//?分配環(huán)境句柄
retcode=?SQLAllocEnv(henv);?//?等介于?SQLAllocHandle(SQL_HANDLE_ENV,?SQL_NULL
,?henv);
//?設置ODBC環(huán)境版本號為3.0
retcode=?SQLSetEnvAttr(henv,?SQL_ATTR_ODBC_VERSION,?(void*)SQL_OV_ODBC3,?0);
//?分配連接句柄
retcode=?SQLAllocConnect(henv,hdbc);?//?等介于?SQLAllocHandle(SQL_HANDLE_DBC,?henv,?hdbc);
//設置連接屬性,登錄超時為*rgbValue秒(可以沒有)
//?SQLSetConnectAttr(hdbc,?SQL_LOGIN_TIMEOUT,?(SQLPOINTER)(rgbValue),?0);
//直接連接數(shù)據(jù)源
//?如果是windows身份驗證,第二、三參數(shù)可以是
,也可以是任何字串
//SQL_NTS?即?"
retcode=?SQLConnect(hdbc,datasource,?SQL_NTS,?user,?SQL_NTS?,?pwd,?SQL_NTS?);
//分配語句句柄
retcode=?SQLAllocStmt(hdbc,hstmt);?//?等介于?SQLAllocHandle(SQL_HANDLE_STMT,?hdbc,?hstmt);
//直接執(zhí)行查詢語句
retcode=SQLExecDirect(hstmt,search,SQL_NTS);
//將數(shù)據(jù)緩沖區(qū)綁定數(shù)據(jù)庫中的相應字段(i是查詢結果集列號,queryData是綁定緩沖區(qū),BUFF_LENGTH是緩沖區(qū)長度)
SQLBindCol(hstmt,?i,?SQL_C_CHAR,?queryData[i-1],?BUFF_LENGTH,?0);
//遍歷結果集到相應緩沖區(qū)?queryData
SQLFetch(hstmt);
/*
*對遍歷結果的相關操作,如顯示等
*/
//注意釋放順序,否則會造成未知錯誤!
SQLFreeHandle(SQL_HANDLE_STMT,?hstmt);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC,?hdbc);
SQLFreeHandle(SQL_HANDLE_ENV,?henv);
}
C語言的庫函數(shù)在LIB目錄里面。
庫函數(shù)是將函數(shù)封裝入庫,供用戶使用的一種方式。方法是把一些常用到的函數(shù)編完放到一個文件里,供不同的人進行調(diào)用。調(diào)用的時候把它所在的文件名用#include加到里面就可以了。一般是放到lib文件里的。
擴展資料:
C語言的語句十分簡單,如果要使用C語言的語句直接計算sin或cos函數(shù),就需要編寫頗為復雜的程序。因為C語言的語句中沒有提供直接計算sin或cos函數(shù)的語句。又如為了顯示一段文字,我們在C語言中也找不到顯示語句,只能使用庫函數(shù)printf。
C語言的庫函數(shù)并不是C語言本身的一部分,它是由編譯程序根據(jù)一般用戶的需要編制并提供用戶使用的一組程序。C的庫函數(shù)極大地方便了用戶,同時也補充了C語言本身的不足。事實上,在編寫C語言程序時,應當盡可能多地使用庫函數(shù),這樣既可以提高程序的運行效率,又可以提高編程的質量。
數(shù)據(jù)庫是用來存入數(shù)據(jù)的倉庫。用戶可以對文件中的數(shù)據(jù)進行新增、查詢、更新、刪除等操作。但是C語言和數(shù)據(jù)庫是兩個東西,他們之間的關系就是C語言可以用來開發(fā)數(shù)據(jù)庫管理軟件,也可以通過C語言借助于SQL語句來操作數(shù)據(jù)庫。
C語言普適性最強的一種計算機程序編輯語言,它不僅可以發(fā)揮出高級編程語言的功用,還具有匯編語言的優(yōu)點,因此相對于其它編程語言,它具有自己獨特的特點。具體體現(xiàn)在以下三個方面:
其一,廣泛性。C 語言的運算范圍的大小直接決定了其優(yōu)劣性。C 語言中包含了34種運算符,因此運算范圍要超出許多其它語言,此外其運算結果的表達形式也十分豐富。此外,C 語言包含了字符型、指針型等多種數(shù)據(jù)結構形式,因此,更為龐大的數(shù)據(jù)結構運算它也可以應付。
其二,簡潔性。9 類控制語句和32個KEYWORDS是C語言所具有的基礎特性,使得其在計算機應用程序編寫中具有廣泛的適用性,不僅可以適用廣大編程人員的操作,提高其工作效率,同 時還能夠支持高級編程,避免了語言切換的繁瑣。
擴展資料
數(shù)據(jù)庫架構
1、內(nèi)層:最接近實際存儲體,亦即有關數(shù)據(jù)的實際存儲方式。
2、外層:最接近用戶,即有關個別用戶觀看數(shù)據(jù)的方式。
3、概念層:介于兩者之間的間接層。
參考資料來源:百度百科--數(shù)據(jù)庫
分享題目:c語言函數(shù)數(shù)據(jù)庫 c語言使用數(shù)據(jù)庫
文章來源:http://chinadenli.net/article6/hijcig.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、響應式網(wǎng)站、服務器托管、網(wǎng)站收錄、網(wǎng)站排名、面包屑導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)