freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c第5章習題解答-文庫吧

2025-03-09 04:48 本頁面


【正文】 附加行、列參數(shù),實現(xiàn)通用算法。解:用一維數(shù)組,附加行、列參數(shù),實現(xiàn)通用算法難度大。include iostreaminclude iomanipusing namespace std。void inverse(int [], int [],int,int)。//注意數(shù)組最高維可缺省,void multi(int [], int [], int [],int,int,int)。void output(int [],int,int)。int main(){ int middle[6*3], result[6*4]。//注意寫作6*3等可清楚看出矩陣的行列 int matrix1[3*6]={8,10,12,23,1,3,5,7,9,2,4,6,34,45,56,2,4,6}。 int matrix2[3*4]={3,2,1,0,1,2,9,8,7,6,5,4}。 output(matrix1,3,6)。 inverse(matrix1,middle,3,6)。 output(middle,6,3)。 output(matrix2,3,4)。 multi(middle,matrix2,result,6,3,4)。 output(result,6,4)。 return 0。}void inverse(int matrix1_1[],int middle_1[],int a,int b){ int i,j。 for (i=0。ia。i++) for (j=0。jb。j++) middle_1[i+j*a]=matrix1_1[i*b+j]。 return。 }void multi(int middle_1[],int matrix2_1[],int result_1[],int a,int b,int c){ int i,j,k。 for (i=0。ia。i++){ for (j=0。jc。j++){ result_1[i*c+j] = 0。 for (k=0。kb。k++) result_1[i*c+j]+=middle_1[i*b+k]*matrix2_1[k*c+j]。 } } return。}void output(int max_1[],int a,int b){ for (int i=0。ia。i++){ for (int j=0。jb。j++) cout setw(4)max_1[i*b+j] 。 cout39。\n39。 } coutendl。 return。 } 編寫函數(shù)int atoi(char s[ ]),將字符串s轉(zhuǎn)化為整型數(shù)返回。注意負數(shù)處理方法。解:用指針處理字符串非常方便。使用符號位來處理負數(shù)。includeiostreamusing namespace std。int atoi(char s[]){ int temp=0,f=1,i=0。 while(s[i]!=39。\039。amp。amp。s[i]!=39。39。amp。amp。(s[i]39。039。||s[i]39。939。)) i++。//去除串前部無效字符 if(s[i]==39。39。){//讀負號 f=1。 i++。 } if(s[i]39。039。||s[i]39。939。) couterror!endl。//串非法時,輸出提示,返回0 while(s[i]=39。039。amp。amp。s[i]=39。939。){//轉(zhuǎn)換數(shù)字串 temp=temp*10+s[i]48。 i++。 } return f*temp。}int main(){ char num[20]。 (num,19)。 coutatoi(num)39。\n39。 return 0。} 有如下定義:int ival=60021。int *ip。double *dp。下面哪些賦值非法或可能帶來錯誤,并加以討論。ival=*ip。 ival=ip。 *ip=ival。 ip=ival。 *ip=amp。ival。ip=amp。ival。 dp=ip。 dp=*ip。 *dp=*ip。解:ival=*ip。 錯,未確定指針ip初值,用隨機內(nèi)存地址中的數(shù)據(jù)給ival賦值是危險的。但語法對。ival=ip。 錯,賦值類型錯,指針型不能賦給整型。*ip=ival。 錯,未確定指針ip初值,用ival給隨機內(nèi)存賦值是危險的。但語法對。ip=ival。 錯,賦值類型錯,整型不能賦給指針型。*ip=amp。ival。 錯,賦值類型錯,地址(指針型)不能賦給整型。ip=amp。ival。 對,地址賦給指針型。dp=ip。 錯,整型指針不能賦給雙精度指針。dp=*ip。 錯,賦值類型錯,整型不能賦給指針型。*dp=*ip。 對,賦值類型轉(zhuǎn)換 編程定義一個整型、一個雙精度型、一個字符型的指針,并賦初值,然后顯示各指針所指目標的值與地址,各指針的值與指針本身的地址及各指針所占字節(jié)數(shù)(長度)。 *其中地址用十六進制顯示。解:注意:字符指針輸出是字符串,必須強制轉(zhuǎn)換為無類型指針includeiostreamusing namespace std。int main(){ int *ip,ival=100。 double *dp,dval=。 char *cp,cval=39。A39。 ip=amp。ival。 dp=amp。dval。 cp=amp。cval。 cout*ip39。\t39。amp。*ip39。\t39。sizeof(*ip)endl。 cout*dp39。\t39。amp。*dp39。\t39。sizeof(*dp)endl。 cout*cp39。\t39。(void*)amp。*cp39。\t39。sizeof(*cp)endl。 //字符指針輸出是字符串,必須強制轉(zhuǎn)換為無類型指針 cout*cp39。\t39。amp。*cp39。\t39。sizeof(*cp)endl。 //輸出A開頭的字符串 coutip39。\t39。amp。ip39。\t39。sizeof(ip)endl。 coutdp39。\t39。amp。dp39。\t39。sizeof(dp)endl。 cout(void*)cp39。\t39。amp。cp39。\t39。sizeof(cp)endl。 return 0。}一個典型的運行結(jié)果:變量內(nèi)容首地址長度(字節(jié))cval‘A’0x0012ff641cp0x0012ff640x0012ff684dval0x0012ff6c8dp0x0012ff6c0x0012ff744ival1000x0012ff784ip0x0012ff780x0012ff7c4內(nèi)存分配解釋:速度優(yōu)化時通常以字(4字節(jié))為單位(開始地址可被4整除)給變量安排內(nèi)存。cval僅用一個字節(jié),也安排了4個字節(jié)。 分別編寫下列字符串處理函數(shù) (1)char *strcat1(char *s,const char *ct)。將串ct接到串s的后面,形成一個長串。【】以數(shù)組為參數(shù),現(xiàn)用指針為參數(shù)。(2)int strlen1(const char * s)。求字符串長度的函數(shù),返回串長(不包括串結(jié)束符)。(3)char * reverse (char *)。反置字符串s,即可將“break”成為“kaerb”。(4)char * strchr( const char *cs,char c)。查找字符c在串cs中第一次出現(xiàn)的位置,返回指向該字符的指針,若沒有出現(xiàn)則返回NULL。(5)char *strstr (const char *cs1,const char *cs2)。返回串cs2作為子串在cs1中第一次出現(xiàn)的位置,若沒有出現(xiàn)則返回NULL。解:為了函數(shù)的通用性,有些可不要返回值的函數(shù),也保留返回值。反置字符串函數(shù),從串兩頭的指針同時向中間移
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1