CC++公司面試題[個人總結,持續更新中]

嵌入式初級面試題

姓名: 日期: 開始時間:
(答題時間60分鐘,答題過程中請不要上網查詢資料,不可帶走答卷)

1:設float a=2,b=4,c=3;,以下C語言表達式與代數式(a+b)+c計算結果不一致的是( )[3分]
A.(a+b)c/2
B. (1/2)*(a+b)c
C. (a+b)c*1/2
D.c/2
(a+b)

2:為了向二進制文件尾部增加數據,打開文件的方式應采用( )[3分]
A.“ab”
B.“rb+”
C.“wb”
D.“wb+”

3:下述程序執行后的輸出結果是( )[3分]
main()
{int x=‘f’; printf( “%c\n”,‘a’+(x-‘a’ +1));}
A.g
B.h
C.i
D.j

4:C語言中,下列運算符優先級高的是( )[3分]
A.!
B.%
C.>>
D.==

5:數組定義為“int a[4];”,表達式( )是錯俁的是().[3分]
A.*a
B.a[0]
С. а
D.a++

6:執行語句“k=7>>1;”后,變量k的當前值是( )[3分]
A.15
B.31
C.3
D.1

7.定義函數時,缺省函數的類型聲明,則函數類型取缺省類型( )[3分]
A. void
B. char
C. float
D. int

8:若main()函數帶參數,參數個數多是()[3分]
A.O
B.1
C.2
D.3

9:若有宏定義:#define MOD(x, y) x%y則執行以下語句后的輸出結果是()[3分]
int a=13, b=94;
printf(“%d\n”, MOD(b, a+4));
A.5
B.7
C.9
D.11

10:下列各個錯誤中,哪個不屬于編譯錯誤( )[3分]
A.改變x 原值3為5,寫作“×==5;”
B.花括號不配對
C.復合語句中的后一條語句后未加分號
D.變量有引用、無定義

11:下列程序段運行后,x的值是( )[3分]
a=1;b=2;x=0;
if(!(–a))x–;
if(!b)x=7;else ++x;
A.0
B.3
C.6
D.7

12:設#define N3;define Y(n)((N+1));則表達式2(N+Y(5+1))的值是() [3分]
A.42
B.48
c.54
D.出錯

13:若定義了char ch[]={" abc\0def"},*p = ch;則執行printf(“%C”,*p+4);語句的輸出結果是( )[3分]
A. def
B.d
C.e
D.O

14:下列轉義字符中錯誤的是()[3分]
A.‘\000’
B.‘\14’
C.‘\x111’
D.‘\2’

15:算術運算符,賦值運算符和關系運算符的運算優先級按從高到低依次為( )[3分]
A.算術運算、賦值運算、關系運算
B.算術運算、關系運算、賦值運算
C.關系運算、賦值運算、算術運算
D.關系運算、算術運算、賦值運算

16:設define N3;#define Y(n)(N+1)n);則表達式2(N+Y(5+1))的值是( )[3分]
A.42
B.48
C.54
D.出錯

17:表達式strcmp(“3.14”,“3.278”)的值是一個( )[3分]
A.非零整數
B.浮點數
C.0
D.字符

18:設 struct
{
short a;
char b;
float c;
}cs;
則 sizeof(cs) 的值是( )【3分】

A. 4
B. 5
C. 6
D. 7

19:若變量已正確定義,表達式(j=3, j++)的值是( )【3分】

A. 3
B. 4
C. 5
D. 0

20:C 語言中運算對象必須是整型的運算符是( )【3 分】
A.%
B./
C.!
D.**

21:多態類中的虛函數表是 Compile-Time 還是 Run-Time 時建立的?說說這兩種的區別【5分】

22:給出下面這段程序的運行結果【5 分】

#include
void main()
{ int c;while((c=getchar())!=‘\n’)switch(c-2){ case 0:case 1:putchar(c+4);break;case 2:putchar(c+4);break;case 3:putchar(c+3);break;default: putchar(c+2);break;}printf(“\n”);
}

運行時輸入:2473,輸出結果是:

23:寫一語句實現x是否為2的若干次冪的判斷。[6分]

24:請簡單描述一下什么是IIC總線?標準速率是多少?快速速率是多少?總線設備地址是幾位?通信總線有幾根,分別是什么?[6分]

25:請問SPI通信總線有幾根,分別是什么?[6分]

26:請問USB通信總線的通信速率有幾種?分別是多少?[6分]

27:OSI模型是指哪7層?TCP和UDP是OSI模型的第幾層,說說他們的區別是什么?[6分]


c++測試題

一、程序閱讀題

(1)下面程序的輸出結果為

#include <iostream>
using namespace std;void fun(int x, int *y, int &z)
{x = *y + z;*y = x + z;z = x + *y;
}int main()
{int a = 1, b = 2, c = 3;fun(a, &b, c);cout << a << "," << b << "," << c;return 0;
}

(2) 下面程序的的輸出結果為

#include<iostream>
using namespace std;int foo(int n)
{int temp;switch(n){case 0: return 1;case 1: return 1;default:temp = (n - 1)*foo(n - 2);cout << temp << " ";return temp;}
}int main()
{foo(6);return 0;
}

二、編程題

(3)實現字符串類“-”運算符的重載,給定兩個字符串 str1 和 str2,str1-str2 的輸出兩個字符串的最長公共子串。(30 分)

(4)給一個01矩陣,1代表是區域像素,0代表空白,如果兩個1相鄰,那么這兩個1屬于同一個區塊。我們只考慮上下左右為區塊,判斷區塊個數。例如:以下輸入數組,對應的輸出為3。(30分)

[1,1,0,0,0],
[0,1,0,1,1],
[0,0,0,1,1],
[0,0,0,0,0],
[0,0,1,1,1]

武漢開目軟件c++軟件工程師考題

一、選擇題(前10題每題2.5分,后5題每題4分,共45分)
1:設整型變量n=2,則執行下列語句后,浮點型變量b的值不為0.5的是()
A)b=1.0/n B) b=(float)(1/n) C)b=1/(float)n D)b=1/(n*1.0)

2:在C語言中對一維數組的正確定義為()
A)int a(10); B) int n=10,a[n]; C) int n:a[n]; D)#define N 10 int a[N];

3:若有說明:int n=2; *p=&n; *q=p; 則以下非法的賦值語句是()
A)p=q B)*p=*q C)n=*q D)p=n

4:在函數調用時,以下說法正確的是()
A)函數調用后必須帶回返回值
B)實際參數和形式參數可以同名
C)函數間的數據傳遞不可以使用全局變量
D)主調函數和被調函數總是在同一個文件里

5.設有以下語句: int x=10; x+=3+x%(3),則x的值是()
A)14
B)15
C)11
D)16

6.在C語言中,以下敘述不正確的是()
A)在C程序中,無論是整數還是實數,都能被準確無誤地表示
B)在C程序中,變量名代表存儲器中的一個位置
C)靜態變量對生存期與整個程序的生存期相同
D)C語言中變量必須先定義后引用

7、若執行下面面對程序從鍵盤輸入9,則輸出結果是()
#include<stdio.h>
void main()
{
int n;
scanf(“%d”,&n);
if(n++<10) printf(“%d\n”,n);
else printf(“%d\n”,n–);
}
A)11
B)10
C)9
D)8

8、以下哪個結構可以用來存儲圖?()
A) 棧
B) 二叉樹
C) 隊列
D) 鄰接矩陣

9、設棧S和隊列Q的初始狀態為空,元素e1, e2, e3, e4, e5, e6依次通過棧S,一個元素出棧后進入隊列Q,假設出隊的順序為e2, e4, e3, e6, e5, e1,那么棧S的容量至少應該為()。

A) 2
B) 3
C) 4
D) 5

10、設某算法的時間復雜度函數的遞推方程是T(n)=T(n-1)+n(n為正整數)及T(0)=1, 則該算法的時間復雜度為()。

A) O(log n)
B) O(n log n)
C) O(n)
D) O(n*n)

11、為了統計一個非負整數的二進制中1的個數,代碼如下:

int CountBit(int x)
{int ret=0;while(x){ret++;_______;}return ret;
}

則空格內要填入的語句是( )

A) X>>=1
B) x&=x-1
C) x|=x>>1
D) x<<=1

12、對于入棧順序為a,b,c,d,e,f,g的序列,下列( )不可能是合法的出棧序列。

A) a,b,c,d,e,f,g
B) a,d,c,b,e,g,f
C) a,d,b,c,g,f,e
D) g,f,e,d,c,b,a

13、給定含有n個不同的樹的數組L=<x1, x2,…, xn>。如果L中存在xi(1<=i<=n)使得x1<x2<…<xi-1< xi >xi+1>…>xn,則稱L是單峰的,并稱xi是L的“峰頂”。現在已知L是單峰的,請將a~c三行代碼補充到算法中使得算法正確找到L的峰頂。
a. Search(k+1,n)
b. Search(1,k-1)
c. return L[k]

Search(l,n)

  1. k<-[n/2]
  2. if L[k] > L[k-1] and L[k] > L[k+1]
  3. then ___________
  4. else if L[k] > L[k-1] and L[k] < L[k+1]
  5. then ___________
  6. else ___________

正確的填空順序是( )
A) c, a, b
B) c, b, a
C) a, b, c
D) b, a,c

14、一個平面的法線是指與該平面垂直的直線。過點(1,1,1)、(0,3,0)、(2,0,0)的平面的法線是:
A) 過點(1,1,1)、(2,3,3)的直線
B) 過點(0,1,0)、(-3,2,1)的直線

C) 過點(2,0,0)、(5,2,1)的直線(答案)
D) 過點(1,1,1)、(3,2,1)的直線

15、有 A、B、C、D、E、F 6 個集裝箱,準備用甲、乙、丙三輛卡車運送,每臺卡車一次運兩個,若卡車甲不能運 A 箱,卡車乙不能運 B 箱,此外無其它任何限制,要把這 6 個集裝箱分配給這 3 臺卡車運送,則不同的分配方案的種數為()
A) 168
B) 84
C) 56
D) 42 (答案)

二、填空題

1、輸入一個字符,判斷該字符是數字、字母、空格還是其他字符(6分)

main()
{char ch;ch = getchar();if (__________){printf("這是一個英文字母");}else if (__________){printf("這是一個數字");}else if (__________){printf("這是一個空格");}else{printf("這是其他字符");}
}

2、用指針做函數參數,對輸入對兩個整數按大小順序輸出(7分)

void swap(int *p1, int *p2)
{int p;p = ________;________ = ________;________ = p;
}main()
{int a, b;scanf("%d,%d", ________);if(a<b)swap(________);printf("\n%d,%d\n", a, b);
}

3、寫出下面程序的輸出結果。(7分)

int main()
{int a[6]={1,2,3,4,5,6};int pi=0;int pj=5;int t,i;while(pi<pj){t=a[pi];a[pi]=a[pj];a[pj]=t;pi++;pj--;}for(i=0;i<6;i++){cout << a[i] << ",";}cout << endl;return 0;
}

三、編程題
1、編寫一個求解最大公約數的函數。(10分)

int gcd(int a, int b)
{
}

2、編寫一個int類型的動態數組“追加”方法(10分)
3、編寫一個函數,實現標準C語言atoi函數的功能(字符串轉換成整數)(14分)

外包公司面試題

題目1:編寫一個函數,輸入為一個字符率,將其逆序后輸出
題目2:編寫一個函數,統計在一個輸入字符串中各個不同字符出現的頻率

題目 3: 當前有如下 Json:

json

{"IP": "XXXXXXXXX","Port": "XXX","Info": {"name": "XXXXXXXX","phone": "XXXXX"}
}

請創建一個線程,接收來自192.168.8.1:8000的UDP報文,內容為上述Json。

解析報文內容,將其中的“Info”信息轉發至報文指定的“IP”(IP地址)和“Port”(端口)上

C++軟件開發工程師筆試題(NOKOV度量)

一、填空題(30分)

  1. 數組的分類主要是:____、____兩類。(2分)

  2. 程序運行時的內存分區為:——、——、——、——、——。(5分)

  3. <

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

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

相關文章

Qt QGraphics簡述及例程 - QGraphicsView、QGraphicsScene和QGraphicsItem

Qt QGraphics簡述及例程 引言一、簡單例程二、關于坐標系問題 引言 QGraphics*是Qt框架中&#xff0c;主要用于處理2D圖形項的顯示、交互和管理的模塊&#xff0c;包括QGraphicsView、QGraphicsScene和QGraphicsItem。提供了一套高效的場景-視圖架構&#xff0c;適合開發復雜的…

代碼隨想錄打卡第一天

文章講解&#xff1a;代碼隨想錄 視頻講解&#xff1a;手把手帶你撕出正確的二分法 | 二分查找法 | 二分搜索法 | LeetCode&#xff1a;704. 二分查找_嗶哩嗶哩_bilibili class Solution { public:int search(vector<int>& nums, int target) {int left0;//左邊界int…

時序數據庫全面解析與對比

文章目錄 1. 時序數據庫概述1.1 時序數據特點1.2 時序數據庫核心功能 2. 主流時序數據庫對比2.1 InfluxDB2.2 Prometheus2.3 TimescaleDB2.4 OpenTSDB2.5 TDengine 3. 全方位對比3.1 功能對比3.2 性能對比3.3 適用場景對比3.4 社區與生態 4. 選型建議4.1 根據數據規模選擇4.2 根…

【STM32CubeMX】ST官網MCU固件庫下載及安裝

用STM32CubeMX自帶的Updater更新固件包會遇到各種幺蛾子&#xff08;如下圖所示&#xff09;&#xff0c;所以干脆自己下載固件包&#xff0c;快速升級固件。 1. ST官網搜索你需要的MCU型號&#xff0c;并選擇需要的固件版本&#xff0c;我這里是H7的MCU所以就找H7&#xff08;…

青少年編程與數學 01-012 通用應用軟件簡介 13 網上學習資源

青少年編程與數學 01-012 通用應用軟件簡介 13 網上學習資源 一、什么是網上學習資源&#xff08;一&#xff09;網上學習資源的基本定義&#xff08;二&#xff09;網上學習資源的工作原理&#xff08;三&#xff09;網上學習資源的類型 二、網上學習資源的重要意義&#xff0…

Python Selenium 忽略證書錯誤

文章目錄 Python Selenium 忽略證書錯誤和忽略&#x1f527; **一、忽略 SSL 證書錯誤**1. **基礎配置&#xff08;適用于 Chrome/Firefox&#xff09;**2. **高級場景&#xff1a;指定證書指紋**3. **瀏覽器兼容方案** &#x1f507; **二、隱藏 DevTools 監聽提示**1. **禁用…

YOLOv8模型在RDK5開發板上的部署指南:.pt到.bin轉換與優化實踐

以下是針對在RDK5開發板(基于NVIDIA Jetson Orin平臺)部署YOLOv8模型的詳細技術指南,涵蓋從模型轉換、優化到部署的全流程: YOLOv8模型在RDK5開發板上的部署指南:.pt到.bin轉換與優化實踐 ——基于TensorRT的高性能嵌入式部署方案 第一章:技術背景與核心概念 1.1 RDK5開…

內網橫向-工作流

一、信息收集階段 操作 工具 / 命令 說明 系統基礎信息采集 systeminfo、whoami /user 查看系統版本、用戶 SID 等 域內用戶 / 組查詢 net user /domain、net group "domain admins" /domain 列出域用戶及管理員組 域控及網絡結構探測 nltest /dsgetdc、ip…

個人日記本小程序開發方案(使用IntelliJ IDEA)

個人日記本小程序開發方案(使用IntelliJ IDEA) 一、項目創建與環境配置 1. 新建項目 打開IDEA → New Project → JavaFX選擇JDK 11+版本添加必要依賴:<!-- pom.xml --> <dependencies><dependency><groupId

react快速開始項目模板

代碼倉庫 gitee 創建項目 首先保證安裝了node, 然后使用vite創建項目 vite npm create vite react-learn cd react-learn npm i 目錄結構 一個完整的前端項目需要: 狀態管理 在全局維護共有的狀態(數據), 讓頁面組件之間共享數據, 我們使用pinia路由 路由讓頁面之間可以…

scrapy+django+pyecharts+mysql 實現西安游客行為分析系統大屏_用戶畫像_空間分析_路線智能推薦

項目地址 link 此處展示部分結果 思路 描述性統計 可視化大屏 用戶畫像&#xff08;聚類&#xff0c;情感分析&#xff09; 空間分析

AC-DC-AC間接變頻電源設計方案(工頻50Hz→20KHz)

AC-DC-AC間接變頻電源設計方案(工頻50Hz→20KHz) 一、方案分析與選擇 1. 可選電路結構分析 方案1:二極管整流+Boost PFC+全橋逆變 優點: 輸入功率因數高(>0.99)直流電壓穩定可控輸出波形質量好缺點: 電路復雜度較高成本相對較高方案2:晶閘管相控整流+電容濾波+半…

七天學完十大機器學習經典算法-09.梯度提升算法:預測藝術的精進之道

接上一篇《七天學完十大機器學習經典算法-08.K均值聚類&#xff1a;無監督學習的萬能分箱術》 想象你在教一個學生解決復雜數學題&#xff1a;先讓他做基礎題&#xff0c;然后針對錯誤部分強化練習&#xff0c;再針對新錯誤繼續訓練...如此反復精進&#xff0c;直到完美掌握——…

數據庫(MYsql)

一、Mysql概述 數據庫&#xff1a;存儲數據的倉庫 &#xff0c;數據是有組織的進行存儲 數據庫管理系統&#xff1a;操縱和管理數據庫的大型軟件&#xff08;BBMS&#xff09; SQL&#xff1a;定義了一套操作關系型數據庫統一標準&#xff0c;操作關系型數據庫的編程語言 數…

【SpringBoot】Spring Boot + RESTful 技術實戰指南

在當今的軟件開發領域&#xff0c;Spring Boot 與 RESTful API 的結合已成為構建高效、可擴展 Web 應用的標配。本文將通過一個完整的項目示例&#xff0c;從知識鋪墊到部署上線&#xff0c;帶你一步步掌握 Spring Boot RESTful 的開發流程。 一、知識鋪墊 1.1 Spring Boot …

安卓中靜態和動態添加子 View 到容器

1.靜態添加子View 在XML布局文件中直接定義子View&#xff1a; <!-- activity_main.xml --> <LinearLayoutxmlns:android"http://schemas.android.com/apk/res/android"android:id"id/container"android:layout_width"match_parent"a…

【NLP】自然語言項目設計03

目錄 03模型構建 代碼架構核心設計說明 初步構建模型并進行訓練時遇到的一些問題 問題一&#xff1a;模型欠擬合 使用1 model - lstm 解釋使用lstm時無法正常的進行cudnn加速 使用2 model - transformer 項目簡介 訓練一個模型&#xff0c;實現歌詞仿寫生成 任務類型&am…

WebRTC(十二):DTLS

在 WebRTC 中的作用 DTLS&#xff08;Datagram Transport Layer Security&#xff09;是 TLS 的 UDP 版本&#xff0c;在 WebRTC 中用于&#xff1a; 安全協商加密密鑰對等驗證&#xff08;基于 X.509 證書 fingerprint&#xff09;為 SRTP/SRTCP 提供密鑰材料 WebRTC 不直接…

北大肖臻《區塊鏈技術與應用》學習筆記

區塊鏈學習筆記 \huge{區塊鏈學習筆記} 區塊鏈學習筆記 這是關于北京大學肖臻老師的《區塊鏈技術與應用》課程的學習筆記。 BTC的數據結構 hash pointers&#xff1a;既保存結構體的對應地址位置&#xff08;指針&#xff09;&#xff0c;又保存結構體對應映射的hash值&#…

MongoDB 驅動升級性能測試報告

測試背景 將 MongoDB Java 驅動從 4.11.5 升級至 5.5.1&#xff0c;并配合 Reactor Core 3.8.0-M4 進行性能對比測試。測試主要圍繞插入、查詢、更新和刪除四個核心操作進行。 環境配置 操作系統: Windows 11CPU: Intel Core? i7-14700F, 28 核心, 2.10 GHzJDK: OpenJDK 21.…