真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言中sgrt函數(shù) c語言sgn函數(shù)

C語言中有沒有類似C++中 cin.peek()的函數(shù)?

peek是C++

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),成華網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:成華等地區(qū)。成華做網(wǎng)站價(jià)格咨詢:18980820575

IO流里面的方法,C++

IO流是其獨(dú)有的,C里面并不能通用。

peek首先構(gòu)造一個(gè)sentry對(duì)象

其次調(diào)用與流關(guān)聯(lián)的streambuf對(duì)象的sgetc方法返回當(dāng)前流指針位置處的字符,以int(ascii碼)方式返回,sgetc只返回流中當(dāng)前字符,并不移動(dòng)流指針的位置。接著銷毀sentry對(duì)象。

最后將istream的gcount方法的返回值設(shè)為0.(gcount將返回

該操作/方法從流中抽取的字符數(shù),設(shè)為0,是要告訴流,該方法/操作并沒有從流里面抽取任何字符)

C語言,刪除數(shù)組中的重復(fù)數(shù)字然后輸出

#include "stdio.h"

#include "string.h"

void main()

{

int? ?i,k=1,j=10,a[10]={4,4,4,4,5,4,9,9,9,10};

for(k=i=1;i10;i++)

{

for(j=0;jk;j++)

{

if(a[j]==a[i])? break;

}

if(j==k)? ?a[k++]=a[i];

}

printf(" \n ");

for(i=0;ik;i++)

{

printf(" %d ",a[i]);

}

擴(kuò)展資料:

printf()函數(shù)的調(diào)用格式為:printf("lt;格式化字符串gt;",lt;參量表gt;)。

其中格式化字符串包括兩部分內(nèi)容:一部分是正常字符,這些字符將按原樣輸出;另一部分是格式化規(guī)定字符,以"%"開始,后跟一個(gè)或幾個(gè)規(guī)定字符,用來確定輸出內(nèi)容格式。

參量表是需要輸出的一系列參數(shù),其個(gè)數(shù)必須與格式化字符串所說明的輸出參數(shù)個(gè)數(shù)一樣多,各參數(shù)之間用","分開,且順序一一對(duì)應(yīng),否則將會(huì)出現(xiàn)意想不到的錯(cuò)誤。

比如:

int a=1234;

printf("a=%d\n",a);

輸出結(jié)果為a=1234。

scanf()是C語言中的一個(gè)輸入函數(shù)。與printf函數(shù)一樣,都被聲明在頭文件stdio.h里,因此在使用scanf函數(shù)時(shí)要加上#includelt;stdio.hgt;。

int scanf(const char*restrict format,...);

函數(shù)scanf()是從標(biāo)準(zhǔn)輸入流stdin(標(biāo)準(zhǔn)輸入設(shè)備,一般指向鍵盤)中讀內(nèi)容的通用子程序,可以說明的格式讀入多個(gè)字符,并保存在對(duì)應(yīng)地址的變量中。

如何用C語言程序設(shè)計(jì)計(jì)算出2的64次方,或者計(jì)算出兩個(gè)大數(shù)相乘(每個(gè)數(shù)都超過15位)。

大數(shù)的表示用字符串,自己計(jì)算進(jìn)位基本上這個(gè)思路

這是我以前編號(hào)的一個(gè)大數(shù)計(jì)算器??梢杂?jì)算加減乘除。足夠你的大數(shù)乘法要求,基本上最后結(jié)果不超過1000位應(yīng)該都可以。

不過沒有乘方功能

#include stdio.h#include string.h

//-----------------------------------------------//將字符串轉(zhuǎn)化為整形數(shù)組void str2int(char *a,char *b,int ia[1024],int ib[1024],int ir[1024]){ int i,len; //對(duì)數(shù)組初始化 for (i=0;i1024;i++) { ia[i]=0; ib[i]=0; ir[i]=0; } //將a翻轉(zhuǎn)后輸入到數(shù)組 i=strlen(a); len=strlen(a); while(i) { i--; ia[len-i-1]=*(a+i)-48; } //將b翻轉(zhuǎn)后輸入到數(shù)組 i=strlen(b); len=strlen(b); while(i) { i--; ib[len-i-1]=*(b+i)-48; }}//-----------------------------------------------//比較大小int cmp(char *a,char *b){ int i,sg; if (strlen(a)strlen(b)) { sg=0; } else if (strlen(a)strlen(b)) { sg=1; } else { for (i=0;i(int)strlen(a);i++) { if (*(a+i)*(b+i)) { sg=0; break; } else if (*(a+i)*(b+i)) { sg=1; break; } else sg=0; } } return sg;}//-----------------------------------------------//加法函數(shù)char *add(char *a,char *b){ int len,i,c; int ia[1024],ib[1024],ir[1024]; str2int(a,b,ia,ib,ir); if (strlen(a)strlen(b)) len=strlen(a); else len=strlen(b); c=0; //加法運(yùn)算 for (i=0;ilen;i++) { ir[i]=(ia[i]+ib[i]+c)%10; c=(ia[i]+ib[i]+c)/10; } if (c==1) { ir[len]=1; len++; } for (i=0;ilen;i++) { *(a+i)=ir[len-i-1]+48;//翻轉(zhuǎn)輸出 } *(a+len)='\0'; return a;}//-----------------------------------------------//減法函數(shù)char *sub(char *a,char *b){ int len,i,c,sg; int ia[1024],ib[1024],ir[1024]; char str[1024]; char *strrt; str2int(a,b,ia,ib,ir); //符號(hào)判斷 sg=cmp(a,b); if (sg==0) len=strlen(a); else len=strlen(b); c=0; //減法運(yùn)算 for (i=0;ilen;i++) { if (sg==0) { if ((ia[i]-ib[i]-c)=0) { ir[i]=ia[i]-ib[i]-c; c=0; } else { ir[i]=10+ia[i]-ib[i]-c; c=1; } } else { if ((ib[i]-ia[i]-c)=0) { ir[i]=ib[i]-ia[i]-c; c=0; } else { ir[i]=10+ib[i]-ia[i]-c; c=1; } } } if (sg==1) str[0]='-'; for (i=0;ilen;i++) { str[i+sg]=ir[len-i-1]+48;//翻轉(zhuǎn)輸出 } str[len+sg]='\0'; strrt=str; //去零處理 if (sg==0) { while(len1*strrt=='0') { strrt++; len--; } } if (sg==1) { strrt++; while(len1*strrt=='0') { *strrt='-'; strrt++; len--; } strrt--; } strcpy(a,strrt); return a;}

//-----------------------------------------------//乘法函數(shù)char *mul(char *a,char *b){ int len,lena,lenb,i,j,c,jin; int ma[1024],mb[1024],mr[1024]; char stra[1024],strb[1024]; char *strrta,*strrtb; stra[0]='0'; stra[1]='\0'; strrta=stra; str2int(a,b,ma,mb,mr); //乘法運(yùn)算 lena=strlen(a); lenb=strlen(b); for (j=0;jlena;j++) { c=0; jin=0; for (i=0;ilenb;i++) { mr[i]=(ma[j]*mb[i]+c)%10; c=(ma[j]*mb[i]+c)/10; } len=lenb; if (c0) { strb[0]=c+48; jin=1; } for (i=0;ilen;i++) { strb[i+jin]=mr[len-i-1]+48; } for (i=len;ilen+j;i++) strb[i+jin]='0'; strb[len+j+jin]='\0'; strrtb=strb; add(strrta,strrtb); } strcpy(a,strrta); return a;}//--------------------------------------------------//除法函數(shù)char *div(char *a,char *b){ int len,lena,i,j; char stra[1024],strb[1024],strc[1024],strd[1024]; char *strbp; strbp=strc; strcpy(stra,a); strcpy(strb,b); strcpy(strd,a); if (cmp(stra,strb)==1) { //被除數(shù)小于除數(shù) *a='0'; *(a+1)='\0'; strcpy(b,stra); } else { //被除數(shù)大于除數(shù) mul(strb,"10"); len=strlen(a)-strlen(b); if (len==0||(len==1cmp(stra,strb)==1)) { strcpy(stra,a); strcpy(strb,b); i=1; strc[0]='1'; strc[1]='\0'; while(cmp(stra,strc)==0) { strc[0]=i+48; strc[1]='\0'; mul(strc,strb); i++; } *a=i+46; *(a+1)='\0'; strcpy(strc,a); mul(strc,strb); sub(stra,strc); strcpy(b,stra); } else { len=strlen(a)-strlen(b); for (j=0;j=len;j++) { for (i=0;i=(int)strlen(b);i++) { if ((i+j-1)0) stra[i]='0'; else stra[i]=*(a+i+j-1); } stra[strlen(b)+1]='\0'; strcpy(strb,b); strbp=stra; lena=strlen(strbp); while(lena1*strbp=='0') { strbp++; lena--; } div(strbp,strb); strc[j]=*strbp; strbp=strb; for (i=0;i(int)(strlen(b)-strlen(strb));i++) { strbp--; *strbp='0'; } for (i=strlen(b)-1;i=0;i--) { *(a+i+j)=*(strbp+i); } } strc[len+1]='\0'; strbp=strc; lena=strlen(strbp); while(lena1*strbp=='0') { strbp++; lena--; } strcpy(a,strbp); mul(strbp,b); sub(strd,strbp); strcpy(b,strd); } } return a;}

void main(){ char a[1024],b[1024],c; c='0'; while(c!='q') { printf("請(qǐng)輸入命令\n+ 加\n- 減\n* 乘\n/ 除\nq 退出\n"); c=getchar(); getchar(); switch(c) { case 'q':break; case '+': printf("請(qǐng)輸入第一個(gè)加數(shù)\n"); gets(a); printf("請(qǐng)輸入第二個(gè)加數(shù)\n"); gets(b); printf("和為%s",add(a,b)); getchar(); break; case '-': printf("請(qǐng)輸入被減數(shù)\n"); gets(a); printf("請(qǐng)輸入減數(shù)\n"); gets(b); printf("差為%s",sub(a,b)); getchar(); break; case '*': printf("請(qǐng)輸入第一個(gè)乘數(shù)\n"); gets(a); printf("請(qǐng)輸入第二個(gè)乘數(shù)\n"); gets(b); printf("積為%s",mul(a,b)); getchar(); break; case '/': printf("請(qǐng)輸入被除數(shù)\n"); gets(a); printf("請(qǐng)輸入除數(shù)\n"); gets(b); div(a,b); printf("商為%s余數(shù)為%s",a,b); getchar(); break; default:break; } }}

編譯環(huán)境VC6,控制臺(tái)程序


文章名稱:c語言中sgrt函數(shù) c語言sgn函數(shù)
標(biāo)題網(wǎng)址:http://weahome.cn/article/hgdjjp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部