百戰c++(10)

1.多態類中的虛函數表是Compile-Time,還是Run-Time時建立的?

2.將一個 1M -10M 的文件,逆序存儲到另一個文件,就是前一個文件的最后一個

字符存到新文件的第一個字符,以此類推。

3.main主函數執行完畢后,是否可能會再執行一段代碼?

4.一個父類寫了一個virtual 函數,如果子類覆蓋它的函數不加virtual ,也能實現多態?

在子類的空間里,有沒有父類的這個函數,或者父類的私有變量?

5.給一個字符串、例如 “ababc”要求返回“ab”. 因為“ab”連續重復出現且最長。

? 用C/C++語言寫一函數完成該算法,給出復雜度

6.對序列1、1、2、3、5、8、13。。。。? 是Fab..數列

? 2、3、5、13...是Fab..質數數列,因為他們與自己前面的Fab...數列都互質

給出k,返回第k小的Fab..質數

7.101個硬幣100真、1假,真假區別在于重量。請用無砝碼天平稱兩次給出真幣重還是假幣重的結論。

8.完成字符串拷貝可以使用 sprintf、strcpy 及 memcpy 函數,請問這些函數有什么區別,你喜歡使用哪個,為什么?

9.變量的聲明和定義有什么區別?

10.請寫出下面代碼在 32 位平臺上的運行結果,并說明 sizeof 的性質:

#include <stdio.h>

#include <stdlib.h>

int main(void)

{

??????? char a[30];

??????? char *b = (char *)malloc(20 * sizeof(char));

??????? printf("%d\n", sizeof(a));

??????? printf("%d\n", sizeof(b));

??????? printf("%d\n", sizeof(a[3]));

??????? printf("%d\n", sizeof(b+3));

??????? printf("%d\n", sizeof(*(b+4)));

??????? return 0 ;

}

12.請完成以下題目。注意,請勿直接調用 ANSI C 函數庫中的函數實現。

?? a)請編寫一個 C 函數,該函數給出一個字節中被置 1 的位的個數,并請

???? 給出該題的至少一個不同解法。

?? b)請編寫一個 C 函數,該函數將給定的一個字符串轉換成整數。

?? c)請編寫一個 C 函數,該函數將給定的一個整數轉換成字符串。

?? d)請編寫一個 C 函數,該函數將一個字符串逆序。

?? e)請編寫一個 C 函數,該函數在給定的內存區域搜索給定的字符,并返回

???? 該字符所在位置索引值。

?? f)請編寫一個 C 函數,該函數在一個字符串中找到可能的最長的子字符串,

???? 該字符串是由同一字符組成的。

給出演示上述函數功能的一個簡單程序,并請編寫對應的 Makefile 文件

13.我們需要編寫一個圖形相關的應用程序,需要處理大量圖形(Shape)信息,

圖形有矩形(Rectangle),正方形(Square),圓形 (Circle)等種類,應用

需要計算這些圖形的面積,并且可能需要在某個設備上進行顯示(使用在標準

輸出上打印信息的方式做為示意)。

??? a)請用面向對象的方法對以上應用進行設計,編寫可能需要的類

??? b)請給出實現以上應用功能的示例性代碼,從某處獲取圖形信息,

????? 并且進行計算和繪制

??? c)如果你的Square繼承自Rectangle,請給出理由,如果不是,

????? 請給出理由,并且請比較兩種方式的優劣

??? d)請問你所編寫的類,在如下代碼中會有何表現,請解釋

??? void test_rectangle_area(Rectangle& r)

??? {

??????? r.set_width(10);

??????? r.set_height(15);

??????? assert(r.area() == 150);

??? }

14.假設現有一個單向的鏈表,但是只知道只有一個指向該節點的指針p,并且假設這個節點不是尾節點,試編程實現刪除此節點

15.寫一個程序,把一個100以內的自然數分解因數。(自然數分解因數就是將一個自然數分解為幾個素數的乘積,提示,由于該數不是很大,所以可以將質數保存在數組中,以加快計算速度)

16.編寫一個Identify的分配、釋放的函數,為1-10000之間的自然數。

17.分別實現itoa和atoi.

18.Consider the following code:

#include <stdio.h>

#include <string.h>

int main(int argc, char *argv[]) {

int i = 1;

char buf[4];

strcpy(buf, "AAAA");

printf("%d\n", i);

return 0;

}

a) When compiled and executed on x86, why does this program usually not

output what the programmer intended?

b) Name several ways in which the security problem that causes this

program not to output what the programmer intended can be prevented

WITHOUT changing the code.

19.int w=1,x=2,y=3,z=4;

m=(w<x)?w:x;

m=(m<y)?m:y;

m=(m<2)?m:z;

printf("m=%d",m);??????? 說出結果

20.說出結果

#include <stdio.h>

main()

{

??? FILE *fp;

??? int i,a[4]={1,2,3,4},b;

??? fp=fopen("data.dat","wb");//這里幫忙解釋一下

??? for(i=0;i<4;i++)

??? fwrite(&a[i],sizeof(int),1,fp);//這里也幫忙看一下

??? fclose(fp);

??? fp=fopen("data.dat","rb");

??? fseek(fp,-2L*sizeof(int),SEEK_END);//還有這里

??? fread(&b,sizeof(int),1,fp);//這里還有也看一下

??? fclose(fp);

??? printf("b=%d\n",b);

}

21.有雙向循環鏈表結點:

typedef struct node

{

? int date;

? struct node *front,*next;

}_Node;

有兩個雙向循環鏈表A,B,知道其頭指針為:pHeadA,pHeadB,請寫一函數將兩上鏈表中date值相同的結點刪除

22.

char * GetStr()

{

char *tmp;

tmp = "123"

return tmp;

}

void main()

{

printf("%s", GetStr());

}

會輸出123嗎?123創建在堆上還是棧上呢?123的空間是什么時候釋放的?

23.

字符指針、浮點數指針、以及函數指針這三種類型的變量哪個占用的內存最大?為什么?

類ClassB從ClassA派生,那么ClassA *a = new ClassB(…); 試問該表達是否合法?為什么?

如果ClassA中定義并實現虛函數int func(void),ClassB中也實現該函數,那么上述變量a->func()將調用哪個類里面的函數?如果int func(void)不是虛函數,情況又如何?為什么?

char **p, a[16][8];? 問:p=a是否會導致程序在以后出現問題?為什么?

如下所述的if else和switch語句哪個的效率高?為什么?

在同一個進程中,一個模塊是否可以通過指針操作破壞其它模塊的內存,為什么?

應用程序在運行時的內存包括代碼區和數據區,其中數據區又包括哪些部分?

24.Assignment 2: Picture Processing

Use C++, Java, or similar languages or/and any middleware such as EJB and J2EE to process a? picture with a high resolution (3 Mega Pixels for example). Use some methodologies to degrade? the resolution of the picture to make it quicker for browsing. Then divide the degraded? picture into 9 sectors equally. Click any of the 9 sectors will result a detailed picture for? this sector with the same resolution as that of the original picture. This assignment is? designed for you to demonstrate your ability to handle pictures.

25.用<<,>>,|,&實現一個WORD(2個字節)的高低位交換!!

26.要開辟P1,P2,P3,P4內存來做緩沖,大小自定,但這四個緩沖的大小要一樣,并且是連續的!

27.有一浮點型數組A,用C語言寫一函數實現對浮點數組A進行降序排序,并輸出結果,要求要以數組A作為函數的入口.(建議用冒泡排序法)

28.找錯:

#include <string.h>

#include <stdio.h>

class Base

{

private:

char * name;

public:

Base(char * className)

{

name = new char[strlen(className)];

strcpy(name, className);

}

~Base()

{

delete name;

}

char * copyName()

{

char newname [256];

strcpy(newname, name);

return newname;

}

char * getName()

{

return name;

}

static void print(Base base)

{

printf("name: %s\n" , base.name);

}

};

class Subclass : public Base

{

public:

Subclass(char * className) : Base(className)

{

}

};

int main()

{

Base * pBase = new Subclass("test");

Base::print(*pBase);

printf("name: %s\n", pBase->getName());

printf("new name: %s\n", pBase->copyName());

return 0;

}

29.編寫一個函數,函數接收一個字符串,是由十六進制數組成的一組字符串,函數的功能是把接到的這組字符串轉換成十進制數字.并將十進制數字返回.

30.編寫一個函數將一條字符串分成兩部分,將前半部分按ASCII碼升序排序,后半部分不變,(如果字符串是奇數則中間的字符不變,)最后再將前后兩部分交換,然后將該字符串輸出,

測試字符串“ADZDDJKJFIEJHGI”

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/443871.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/443871.shtml
英文地址,請注明出處:http://en.pswp.cn/news/443871.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Numpy實現酒鬼漫步問題【以及randint()、where()、cumsum()、argmax()的用法詳解】

文章目錄題目描述代碼實現關于本題涉及到的幾個函數randint()where()cumsum()題目拓展題目描述代碼實現題目拓展題目描述代碼實現argmax()題目描述 從前有一個酒鬼&#xff0c;喝醉了行走在一條直線上&#xff0c;每走一步方向是不確定的&#xff08;向前或者向后&#xff09;…

百戰c++(11)

31.找錯 Void test1() { char string[10]; char* str1"0123456789"; strcpy(string, str1); } Void test2() { char string[10], str1[10]; for(I0; I<10;I) { str1[i] a; } strcpy(string, str1); } Void test3(char* str1) { char string[10]; if(st…

搞清axis的含義,這一篇就夠了!

文章目錄axis的含義旁門左道式理解二維數組中的axis三維數組中的axis正規理解axis的含義 在自己分析之前先擺上官方關于多維數組中axis的值的定義&#xff1a; axis 0&#xff0c;表示第一個維度 axis 1&#xff0c;表示第二個維度 axis -1&#xff0c;表示最后一個維度…

百戰c++(12)

36. 定義 int **a[3][4], 則變量占有的內存空間為&#xff1a;_____ 37. 編寫一個函數&#xff0c;要求輸入年月日時分秒&#xff0c;輸出該年月日時分秒的下一秒。如輸入2004年12月31日23時59分59秒&#xff0c;則輸出2005年1月1日0時0分0秒。 38.寫一個函數&#xff0c;判…

Struts2.3.5+Hibernate3+Spring3.1基于注解實現的多文件上傳,下載

Struts2.3.5Hibernate3Spring3.1基于注解實現的的多文件上傳&#xff0c;下載,這里是上傳文件到數據庫中&#xff0c;上傳控件可以增加和刪除&#xff0c;有需要的朋友可以看看。 以下是源碼下載地址&#xff1a;http://www.zuidaima.com/share/1639672872438784.htm jar包的下…

Pandas索引操作及高級索引——reindex()方法

文章目錄索引對象多個數據結構之間共享index類對象is與的區別重置索引——reindex()索引操作Series的索引操作切片不連續索引布爾型索引DataFrame的索引操作獲取不連續的Series對象切片Pandas庫中的操作索引方法索引對象 Index類對象&#xff0c;該對象不可以進行修改&#xf…

【精品計劃1】動態規劃入門到熟悉,看不懂來打我啊

持續更新。。。。。。 2.1斐波那契系列問題 2.2矩陣系列問題 2.3跳躍系列問題 3.1 01背包 3.2 完全背包 3.3多重背包 3.4 一些變形選講 2.1斐波那契系列問題 在數學上&#xff0c;斐波納契數列以如下被以遞歸的方法定義&#xff1a;F(0)0&#xff0c;F(1)1, F(n)F(n-1)…

Pandas數據排序——【按索引排序sort_index()方法、按值排序sort_value()方法】

文章目錄按索引排序——sort_index()對Series排序對DataFrame排序按值排序——sort_value()對Series進行排序對DataFrame進行排序按索引排序——sort_index() sort_index(axis0, levelNone, ascendingTrue, inplaceFalse, kind‘quicksort’, na_position‘last’,sort_remaini…

【大總結2】大學兩年,寫了這篇幾十萬字的干貨總結

本文是我大學兩年知識的總結。涵蓋數據結構、算法、語言基礎、操作系統、關系數據庫、NOSQL、網絡/前端/項目基礎知識、安全和測試、框架的學習、中間件和工具、設計模式和框架原理、我推薦的資料、我的建議 本篇文章應該算是Java后端開發技術棧的&#xff0c;但是大部分是基礎…

Pandas對象的層次化索引——【from_tuples()、from_arrays()、from_product()、swaplevel()、sort_index()、sort_values()】

文章目錄層次化索引的概念層次化索引的創建使用嵌套列表的方式構造層次化索引對象Series對象DataFrame對象通過MultiIndex類的方法構建層次化索引通過from_tuples()方法創建MultiIndex對象通過from_arrays()方法創建MultiIndex對象通過from_product()方法創建MultiIndex對象層次…

《這是全網最硬核redis總結,誰贊成,誰反對?》六萬字大合集

我攤牌了&#xff0c;這篇文章&#xff0c;值得99%的人收藏 此文后續會改為粉絲可見&#xff0c;所以喜歡的請提前關注和收藏&#xff0c;不迷路。 最近有五本我喜歡的redis實體新書&#xff0c;想要的去評論&#xff0c;我寫個隨機數抽獎包郵送給你。 那么&#xff0c;準備好…

Python數據預處理之異常值的處理——【自定義的three_sigma()函數、boxplot()方法】

文章目錄基于3σ原則檢測異常值代碼實現測試基于箱型圖檢測異常值異常值的處理基于3σ原則檢測異常值 3σ原則&#xff0c;又稱拉依達準則。是指假設一組檢測數據只含有隨機誤差。對其進行計算處理得到標準偏差&#xff0c;按一定概率確定一個區間&#xff0c;凡是超過這個區間…

那個谷歌的網紅扔雞蛋的題,來看看教科書式的回答

leetcode頂級難題&#xff0c;谷歌面試天天問&#xff0c;來看看吧&#xff0c;帶你來一步一步達到最優解。 谷歌不知道問了多少遍&#xff0c;藍橋杯也出現過&#xff0c;leetcode上是頂級難題&#xff0c;到底是什么題能如此頻繁地出現&#xff1f;我們一探究竟吧。 原題描述…

Python更改數據類型——astype()方法和to_numeric()函數

文章目錄明確指定數據的類型通過dtypes屬性進行查看創建Pandas對象指定數據類型轉換數據類型通過astype()方法強制轉換數據的類型通過to_numeric()函數轉換數據類型明確指定數據的類型 通過dtypes屬性進行查看 import pandas as pddf pd.DataFrame({A: [1, 2, 4],B: [9, -80…

不騙你,沒讀這一篇,你不可能懂二分

上篇文章講動態規劃獲得了80k瀏覽&#xff0c;這次的二分也值得你們一看&#xff0c;這個系列是特別用心寫的&#xff0c;準備出書的哦 動態規劃 3.0 引子 圖書館自習的時候,一女生背著一堆書進閱覽室,結果警報響了,大媽讓女生看是哪本書把警報弄響了&#xff0c;女生把書倒出…

Python之數據合并——【concat()函數、merge()函數、join()方法、combine_first()方法】

文章目錄軸向堆疊數據——concat()函數橫向堆疊與外連接縱向堆疊與內連接主鍵合并數據——merge()函數內連接方式外連接方式左連接方式右連接方式其他根據行索引合并數據——join()方法四種連接方式行索引與列索引重疊合并重疊數據——combine_first()方法軸向堆疊數據——conc…

超硬核!操作系統學霸筆記,考試復習面試全靠它

之后會發布基于基礎知識的大部分算法的模擬代碼合集&#xff0c;敬請關注。 進程基礎 進程的基本概念 程序順序執行的特征&#xff1a; 1&#xff09;順序性&#xff1a;處理機嚴格按照程序所規定的順序執行&#xff0c;每一步操作必須在下一步操作開始前執行 2&#xff09;封…

配置tomcat6.0的HTTPS(單向)

利用JDK自帶的產生證書的工具 生成證書 建立一個腳本文件&#xff0c;內容如下&#xff1a; set SERVER_DN"CNServer, OUshare, Oshare, Lsz, Sgd, CCN" set CLIENT_DN"CNClient, OUshare, Oshare, Lsz, Sgd, CCN" set KS_PASS-storepass changeit set KE…

Python之數據重塑——【stack()方法和unstack()方法、pivot()方法】

文章目錄重塑層次化索引對于單層索引的DataFrame類對象stack()方法unstack()方法對于多層索引的DataFrame類對象辨析操作內層索引與外層索引的區別查看多層索引對象轉換后的類型軸向旋轉——pivot()方法重塑層次化索引 Pandas中重塑層次化索引的操作主要是stack()方法和unstac…

超硬核!學霸把操作系統經典算法給敲完了!要知行合一

上期的筆記&#xff0c;瀏覽快1萬了&#xff0c;既然關注的人很多&#xff0c;那就發出來承諾過的算法全模擬&#xff0c;希望幫到你們。 上期的操作系統學霸筆記&#xff0c;考試復習面試全靠它 一、模擬進程調度 功能 data.h #ifndef _Data_h_ #define _Data_h_#include …