【C語言期末】題目+解析

文章目錄

    • 題目
      • 1.下面哪個不是C語言的基本數據類型?( B )
      • 2.C語言的標識符應以字母或( A )開頭。
      • 3.如果需要在C程序里調用標準函數庫中的printf函數,則應該在程序的開頭包含哪個頭文件?( A )
      • 4.C語言源程序的擴展名是( B )。
      • 5.若變量已正確定義并賦值,表達式( A )不符合C語言語法。
      • 6.以下選項中不屬于C語言的類型的是( D )。
      • 7.以下選項中合法的用戶標識符是( B )。
      • 8.已知大寫字母A的ASCII碼值是65,小寫字母a的ASCII碼是97,則用八進制表示的字符常量‘\101’是( A )。
      • 9.+=、*=運算符
      • 10.以下選項中,與k=n++完全等價的表達式是(A )。
      • 11.閱讀下面的程序
      • 12.若有以下定義和語句:
      • 13.執行下列程序段后的輸出結果是( A )。
      • 14.以下關于運算符優先順序的描述中正確的是( C )。
      • 15.若int K=3;,且有下面的程序片段:
      • 16.設char CH;,其值為A,且有下面的表達式:
      • 17.有如下程序
      • 18.若有以下定義:
      • 19.以下程序的運行結果是( A )。
      • 20.若有以下說明:
      • 21.如有說明:`char s1[5],s2[7];` ,要給數組s1和s2整體賦值,下列語句中正確的是( B )。
      • 22.在定義int a\[5][4]; 之后,對a數組元素的引用正確的是( C )。
      • 23.在C語言中,設有數組定義:char array[ ]="China"; 則數組array所占的空間為( C )。
      • 24.定義如下變量和數組:
      • 25.以下程序的輸出結果是( A )。
      • 26.下面程序段的運行結果是( A )。
      • 27.若有以下程序:
      • 28.定義為void類型的函數,其含義是( A )。
      • 29.對于C程序的函數,( A )的敘述是正確的。
      • 30.以下程序的運行結果是( C )。
      • 31.若已定義“int a[9],*p=a;”并在以后的語句中未改變p的值,則不能表示a[1]地址的表達式是( A )。
      • 32.有如下程序段:
      • 33.設有如下定義:
      • 37.假設有如下定義:
      • 38.設有以下語句:
      • 39.設有定義語句“char c1=49,c2=49;”,則以下表達式中值為0的是( B )。
      • 40.在位運算中,操作數每左移一位,其結果相當于( A )。
      • 41.以下程序的輸出結果是( D )。
      • 42.下面程序把數組元素中的最大值放入a[0]中,則在if語句中的條件表達式應該是( B )。
      • 43.下列程序執行后的輸出結果是( B )。
      • 44.以下程序的輸出結果是( C )。
      • 45.以下程序的運行結果是( B )。
      • 46.在宏定義:#define PI 3.141592中,用宏名PI代替一個( )。
      • 47.設有以下說明語句,則下面的敘述不正確的是( C )。

視頻傳送門

題目

1.下面哪個不是C語言的基本數據類型?( B )

A.整型; B.邏輯型; C.浮點型; D.字符型;

解析:A:整型簡單理解就是整數,int a=1,a就是一個值為1的整型變量B:邏輯型,在C語言里沒有專門的邏輯型。布爾表達式的結果為0相當于是false,非0則真。C:float b=2.5; b就是一個值為2.5的浮點型變量,簡單理解就是有小數。D.字符型,char ch='a'; 

2.C語言的標識符應以字母或( A )開頭。

A.下劃線;B.波浪線;C.字符*;D.字符#;

解析:標識符定義規則有三點1.不能數字開頭2.不能是保留字。比如int、float這種3.可以是下劃線和字母開頭。做題的話還有一點不能加特殊符號,比如.號
擴展:1.自己實際寫用的最多的還是駝峰起名法ABlogOfCMakesYouCanPassExam每個詞的開頭大寫2.手撕源碼遇到保留字,在前邊加個my_比如my_LinkededList

3.如果需要在C程序里調用標準函數庫中的printf函數,則應該在程序的開頭包含哪個頭文件?( A )

A.stdio.h; B.math.h; C.stdlib.h; D.不用包含任何頭文件;

4.C語言源程序的擴展名是( B )。

A…cpp; B..c; C…obj; D…exe;

5.若變量已正確定義并賦值,表達式( A )不符合C語言語法。

A.3%2.0 B.a*b/c C.2/b D.a/b/c

解析:模運算:就是求余數。5除以3余2,所以5%3=2C語言里邊,兩個整型相除,不保留小數,5/3=1你真得覺得對浮點型進行模運算合理嗎?
擴展:5/2.0=2.5;當一個整型和另一個浮點型運算的時候,會有整型提升,整型提升成浮點型。相當于5變成5.0了兩個浮點型的相除。。。5/2.0反正能算出來是2.5

6.以下選項中不屬于C語言的類型的是( D )。

A.signed short int B.unsigned long int C.unsigned int D.long short

解析:int表示的范圍是有限的long:不夠用了,可以用long,它的范圍更大,再不夠用,還有long long ,再不夠用還可以用數組存,不用擔心你的錢多到銀行的系統存不了。short:感覺用int太浪費空間,可以考慮用short,節約空間unsigned:int不是4個字節嗎?32個比特位,里邊其實固定有一位是用來表示符號的。unsigned可以把符號位當成數來用。。。能表示的正數的范圍會擴大,不能表示負數

7.以下選項中合法的用戶標識符是( B )。

A.long B._2Test C.3Dmax D.A.dat

	解析:見2題

8.已知大寫字母A的ASCII碼值是65,小寫字母a的ASCII碼是97,則用八進制表示的字符常量‘\101’是( A )。

A.字符A B.字符a C.字符e D.非法的常量

	解析:詳解見視頻。這題把8進制的101轉成10進制就行

101 = 1 ? 8 2 + 0 ? 8 1 + 1 ? 8 0 = 64 + 1 = 65 101=1*8^2+0*8^1+1*8^0=64+1=65 101=1?82+0?81+1?80=64+1=65

9.+=、*=運算符

int main(){  ?     int k=2,i=2,m;?     m=(k+=i*=k);?     printf("%d,%d\n",m,i);return 0;
}

執行后的輸出結果是( C )。

A.8,6 B.8,3 C.6,4 D.7,4

原式展開
i*=ki=i*k
k+=ik=k+i
	要點:1.不熟練就先展開2.留意視頻里講的等效替代,看代碼的動態變化——進階必備。i*=k算完之后,就相當于是k+=幾?要看成這樣

10.以下選項中,與k=n++完全等價的表達式是(A )。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+1

11.閱讀下面的程序

#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}

則程序的運行結果是( D )。

A.1,19 B.-1,19 C.1,17 D.-1,17

	解析:0開頭表示8進制的數0x開頭16進制0b開頭二進制這題,你先把010轉成8進制,不會?。。。1、2、3、4、5、6、7、108進制逢8進1,不8題乃種解法,一個一個數也能數出來

12.若有以下定義和語句:

  int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);

則輸出結果是( B )。

A.10,10,10 B.8,16,10 C.8,10,10 D.8,8,10

13.執行下列程序段后的輸出結果是( A )。

  int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);

A.3 B.2 C.1 D.4

	解析:?號左邊是一個布爾表達式,真假決定去冒號左邊的值還是右邊還是第9題乃樣,?:運算完之后,就相當于x<y?y:x 變成 x了,而x又等于3,所以就打印3嘍

14.以下關于運算符優先順序的描述中正確的是( C )。

A.關系運算符 < 算術運算符 < 賦值運算符 < 邏輯運算符

B.邏輯運算符 < 關系運算符 < 算術運算符 < 賦值運算符

C.賦值運算符 < 邏輯運算符 < 關系運算符 < 算術運算符

D.算術運算符 < 關系運算符 < 賦值運算符 < 邏輯運算符

	賦值運算符:形如=、+=邏輯運算符:&&(并且)、||(或者)關系運算符:大于號、小于號算術運算符:加減乘除

15.若int K=3;,且有下面的程序片段:

if(K<=0) printf("####");else printf("&&&&");

上面程序片段的輸出結果是( B )。

A.#### B.&&&& C.####&&&& D.有語法錯誤,無輸出結果

解析:二選一,選哪個看真假

16.設char CH;,其值為A,且有下面的表達式:

CH=(CH>='A' && CH<='Z')?(CH+32):CH
法1:一點一點看,CH為A,肯定和A相等,所以&&左邊為真,CH當然也小于Z了,所以右邊也為真
法2:看語義,如果CH是一個大寫字母,布爾表達式的結果就為真

則表達式的值是( B )。

A.A B.a C.Z D.z

17.有如下程序

int main() { int a=2,b=-1,c=2; if(a<b)if(b<0) c=0; else c++;printf("%d\n",c);return 0;
}

該程序的輸出結果是( C )。

A.0 B.1 C.2 D.3

	解析:1.if后邊如果只有一句可以不寫大括號。2.else和結構上(不是距離上)緊挨著的if配對,當if條件為假的時候,就會執行else里的語句只能說:動(手)的都懂

18.若有以下定義:

float x;int a,b;

則正確的switch 語句是( C )。

A.switch(x){case 1.0:printf("*\n");  case 2.0:printf("**\n");}B.switch(x){case 1,2:printf("*\n");case 3:printf("**\n");}C.switch(a+b)  {case 1:printf("\n"); case 1+2:printf("**\n");}D.switch(a+b);{case 1:printf("*\n");case 2:printf("**\n");}
	解析:case的條件別寫小數

19.以下程序的運行結果是( A )。

int main(){int n;for(n=1;n<=10;n++){if(n%3==0) continue;?    printf("%d",n);}return 0;
}

A.12457810 B.369 C.12 D.1234567890

	建議:看視頻,有講for循環的基礎概念語義:打印1到10之間,不能整除3的數

20.若有以下說明:

char s1[ ]={"tree"},s2[]={"flower"}; 

則以下對數組元素或數組的輸出語句中,正確的是( C )。

A.printf(“%s%s”,s1[5],s2[7]);

B.printf(“%c%c”,s1,s2);

C.puts(s1);puts(s2);

D.puts(s1,s2);

	簡單理解:想打印字符串,用%s或者puts函數。補充:字符串經常用string表示

21.如有說明:char s1[5],s2[7]; ,要給數組s1和s2整體賦值,下列語句中正確的是( B )。

A.s1=getchar(); s2=getchar();

B.scanf("%s%s",s1,s2);

C.scanf(“%c%c”,s1,s2);

D.gets(s1,s2);

	簡單理解:想調鍵盤,接受一個字符串,用%s(gets我當時就用的少,都用的scanf和printf這倆,后來也不用C語言了,有必要了再研究吧)

22.在定義int a[5][4]; 之后,對a數組元素的引用正確的是( C )。

A.a[2][4] B.a[1,3] C.a[4][3] D.a[5][0]

	解析:訪問數組元素,下標別越界哥,基操

23.在C語言中,設有數組定義:char array[ ]=“China”; 則數組array所占的空間為( C )。

A.4個字節 B.5個字節 C.6個字節 D.7個字節

	解析:字符串結尾是斜杠0,你不寫有人幫你寫。China看上去是5個,還有隱藏的斜杠0,一共6個

24.定義如下變量和數組:

int i;int x[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

則下面語句的輸出結果是( C )。

for(i=0;i<4;i++) printf("%3d",x[i][3-i]);

A.1, 5 ,9 ,13 B.1, 6, 11, 16 C.4 ,7 ,10, 13 D.4,8 ,12 ,16

25.以下程序的輸出結果是( A )。

#include<stdio.h>void main(){int i,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++) printf("%d,",x\[i][i]);printf("\n"); 
}

A.1,5,9, B.1,4,7, C.3,5,7, D.3,6,9,

	可以看視頻。也可以參考前邊的題。

26.下面程序段的運行結果是( A )。

char *s="abcde";s+=2;printf("%s",s);
	建議看視頻,有講指針的基礎知識

A.cde B.字符’c’ C.字符’c’的地址 D.無確定的輸出結果

27.若有以下程序:

int main(){int m[][3]={1,4,7,2,5,8,3,6,9};int i,j,k=2;for (i=0;i<3;i++){printf("%d",m[k][i]); }return 0;
} 

程序運行后輸出結果是( C )。

A.4 5 6 B.2 5 8 C.3 6 9 D.7 8 9

28.定義為void類型的函數,其含義是( A )。

A.調用函數后,被調用的函數沒有返回值

B.調用函數后,被調用的函數不返回

C.調用函數后,被調用的函數的返回值為任意的類型

D.以上3種說法都是錯誤的

29.對于C程序的函數,( A )的敘述是正確的。

A.函數定義不能嵌套,但函數調用可以嵌套

B.函數定義可以嵌套,但函數調用不能嵌套

C.函數定義與調用均不能嵌套

D.函數定義與調用均可以嵌套

30.以下程序的運行結果是( C )。

void f(int a,int b){
?     int t;t=a;a=b;b=t;
}int main(){
?     int x=1,y=3,z=2;?     if(x>y) f(x,y);
?     else if(y>z)
?            f(y,z);
?        else 
?            f(x,z);?     printf(%d,%d,%d\n”,x,y,z);
?     return 0;
}

A.1,2,3 B.3,1,2 C.1,3,2 D.2,3,1

	解析:函數分值傳遞和地址傳遞。

31.若已定義“int a[9],*p=a;”并在以后的語句中未改變p的值,則不能表示a[1]地址的表達式是( A )。

A.a++ B.a+1 C.p+1 D.++p

	【記住這句話】數組名是數組首元素地址

32.有如下程序段:

int *p,a=10,b=1;p=&a; a=*p+b;

執行該程序段后,a的值為( B )。

A.12 B.11 C.10 D.編譯出錯

33.設有如下定義:

struct Date{ int year; int month;int day;};struct Teacher{ char name[20];char sex;struct Date birthday;}person;

對結構體變量person的出生年份進行賦值時,下面的賦值語句正確的是( C )。

A.year=1975; B.birthday.year=1975; C.person.birthday.year=1975; D.person.year=1975;

34.若有下面的定義:這個題有問題

struct Test{int s1;float s2;char s3;union uu{char u1[10];int u2[2];}ua;
}stu;

則sizeof(struct Test)的值是( A )。

A.19 B.17 C.14 D.27

35.以下各選項要說明一種新的類型名,其中正確的是( A )。

A.typedef int i1; B.typedef int=i2; C.typedef i1 int i3; D.typedef i4;

36.假設有如下定義:

struct {int a;float b;}data,*p;

若有p=&data,則對data中的a域的正確引用是( )。

A.(*p).data.a B.p->data.a C.(*p).a D.p.data.a

	*號,叫解引用,可以根據地址拿出來那里存的值

37.假設有如下定義:

struct City{char *name;long total;}city[]={"Guangzhou",800,"Meizhou",600,"Shanghai",500,"Hangzhou",400};

能正確輸出字符串Meizhou的語句是( D )。

A. printf(“%c”,city[1].name)

B. printf(“%s”,city[1].name[1]);

C. printf(“%s”,city.name[1]);

D. printf("%s",city[1].name);

	city是城市數組,city[1]才是一個城市對象

38.設有以下語句:

char x=3,y=6,z; 
z=x^y<<2;

則z的二進制值是( A )。

A.00011011 B.00010100 C.00011100 D.00011000

39.設有定義語句“char c1=49,c2=49;”,則以下表達式中值為0的是( B )。

A.c1&&c2 B.c1^c2 C.c1&c2 D.c1|c2

40.在位運算中,操作數每左移一位,其結果相當于( A )。

A.操作數乘以2 B.操作數除以2 C.操作數除以4 D.操作數乘以4

41.以下程序的輸出結果是( D )。

#include<string.h>void main( ){char *p1, *p2, str[50]="ABCDEFG";p1="abcd"; p2="efgh";strcpy(str+1, p2+1); strcpy(str+3, p1+3);printf("%s", str);
}

A.AfghdEFG  B.Abfhd   C.Afghd    D.Afgd

解析:執行strcpy(str+1, p2+1);后,str所對應的字符串變為“Afgh”,再執行strcpy(str+3, p1+3);后,str所對應的字符串變為“Afgd”

42.下面程序把數組元素中的最大值放入a[0]中,則在if語句中的條件表達式應該是( B )。

void main( ){int a[10]={6, 7, 2, 9, 1, 10, 5, 8, 4, 3}, *p=a, i;for(i=0; i<10; i++, p++)if(________) \*a=\*p;printf("%d", *a);
}

A.p>a     B.*p>a[0]     C.*p>*a[0]     D.*p[0]> *a[0]

43.下列程序執行后的輸出結果是( B )。

void main( ){int a\[3][3], *p, i;p=&a\[0][0];for(i=0; i<9; i++) p[i]=i+1;printf("%d\n", a\[1][2]);
}

A.3   B.6   C.9   D.隨機數

44.以下程序的輸出結果是( C )。

#include <stdio.h>
void fun(int *s){static int j=0;dos[j]+=s[j+1];while (++j<2);
}void main( ){int k, a[10]={1, 2, 3, 4, 5};for(k=1; k<3; k++) fun (a);for(k=0; k<5; k++) printf ("%d", a[k]);
}

A.34756     B.23445     C.35745     D.12345

45.以下程序的運行結果是( B )。

#define MIN (x, y) (x) < (y) ? (x) : (y)
void main ( ){int i = 10, j = 15, k;k = 10 * MIN (i, j);printf("%d\n", k); 
}

A.10 B.15 C.100 D.150

解析:語句k = 10 * MIN (i, j);在預編譯時將進行宏替換為:k = 10 * (i) < (j) ? (i) : (j);因i = 10,j = 15,所以語句等價于k = 10 * 10 < 15 ? 10 : 15;,10*10比15大,因此k的值將是15。故正確答案是B。

46.在宏定義:#define PI 3.141592中,用宏名PI代替一個( )。

這個題有問題
A.常量B.單精度數C.雙精度數D.字符串

47.設有以下說明語句,則下面的敘述不正確的是( C )。

struct stu{int a;float b;
} stutype;

A.struct是結構體類型的關鍵字

B.struct stu是用戶定義的結構體類型

C.stutype 是用戶定義的結構體類型名

D.a和b都是結構體成員名

解析:stutype是類型為struct stu的結構體變量,不是結構體類型名。故選擇答案是C。

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

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

相關文章

學習Linux(2)-學習Linux命令

Linux目錄結構 Linux目錄結構-菜鳥教程 /bin&#xff1a;bin 是 Binaries (二進制文件) 的縮寫, 這個目錄存放著最經常使用的命令。 /boot&#xff1a;這里存放的是啟動 Linux 時使用的一些核心文件&#xff0c;包括一些連接文件以及鏡像文件。 /dev &#xff1a;dev 是 De…

TensorFlow 常用代碼

TensorFlow 是由 Google 開發的一個用于數值計算的開源軟件庫&#xff0c;主要用于構建和訓練機器學習模型。它的核心是使用數據流圖來描述計算任務。數據流圖是由節點和邊組成的有向圖&#xff0c;每個節點表示一個計算任務&#xff0c;每條邊表示數據傳輸。 TensorFlow 支持…

Dockerfile文件

什么是dockerfile? Dockerfile是一個包含用于組合映像的命令的文本文檔。可以使用在命令行中調用任何命令。 Docker通過讀取Dockerfile中的指令自動生成映像。 docker build命令用于從Dockerfile構建映像。可以在docker build命令中使用-f標志指向文件系統中任何位置的Docke…

C語言-字符串操作函數-附加使用方式

文章目錄 前言字符串復制-strcpy字符串復制&#xff08;按照位數&#xff09;-strncpy字符串比較-strcmp字符串比較(按照位數)-strncmp不區分大小寫的字符串比較-strcasecmp不區分大小寫的比較(前n位)-strncasecmp字符串按照格式寫入-sprintf字符串按照格式和個數寫入-snprintf…

JUC包(面試常問)

1. Callable接口 類似于Runnable接口&#xff0c;Runnable描述的任務&#xff0c;不帶返回值&#xff1b;Callable描述的任務帶返回值。 public class Test {//創建線程&#xff0c;計算12...1000public static void main(String[] args) throws ExecutionException, Interru…

js/jQuery常見操作 之各種語法例子(包括jQuery中常見的與索引相關的選擇器)

js/jQuery常見操作 之各種語法例子&#xff08;包括jQuery中常見的與索引相關的選擇器&#xff09; 1. 操作table常見的1.1 動態給table添加title&#xff08;指定td&#xff09;1.1.1 給td動態添加title&#xff08;含&#xff1a;獲取tr的第幾個td&#xff09;1.1.2 動態加工…

KWin、libdrm、DRM從上到下全過程 —— drmModeAddFBxxx(23)

接前一篇文章:KWin、libdrm、DRM從上到下全過程 —— drmModeAddFBxxx(22) 上一回講解了i915_gem_object_lookup_rcu函數的第1個參數struct drm_file *file,本回講解其第2個參數u32 handle。 (2)參數u32 handle 說起來,handle要比struct drm_file *file參數好理解多了…

怎么更改android的包名,使其可以變成另外一個app

在 Android 中更改應用的包名并不是一項簡單的任務&#xff0c;因為包名在應用的整個代碼和配置文件中都被廣泛使用。但是&#xff0c;你可以通過以下步驟來更改應用的包名&#xff1a; 注意&#xff1a;在更改包名之前&#xff0c;請確保備份你的項目&#xff0c;以防發生意外…

thinkphp 結合swoole 聊天開發實例

好的&#xff0c;下面我為您介紹使用ThinkPHP和Swoole開發聊天應用的實例。 環境搭建 首先需要安裝PHP和Swoole擴展&#xff0c;可以使用以下命令&#xff1a; yum install php php-devel php-pear pecl install swoole新建項目 使用composer新建一個ThinkPHP項目&#xff…

每日一練【三數之和】

一、題目描述 15. 三數之和 給你一個整數數組 nums &#xff0c;判斷是否存在三元組 [nums[i], nums[j], nums[k]] 滿足 i ! j、i ! k 且 j ! k &#xff0c;同時還滿足 nums[i] nums[j] nums[k] 0 。請 你返回所有和為 0 且不重復的三元組。 注意&#xff1a;答案中不可…

【開題報告】基于SSM的校園體育管預約系統的設計與實現

1.選題背景 隨著社會的發展和人們對健康生活的追求&#xff0c;體育鍛煉在大學生群體中越來越受到重視。校園體育場館是大學生進行體育活動和鍛煉的主要場所之一。然而&#xff0c;由于校園體育場館資源有限&#xff0c;管理不善和預約流程繁瑣等問題&#xff0c;導致場館利用…

【數據結構(九)】線索化二叉樹(3)

文章目錄 1. 前言——問題引出2. 線索二叉樹的基本介紹3. 線索二叉樹的應用案例3.1. 思路分析3.2. 代碼實現 4. 遍歷線索化二叉樹4.1. 代碼實現 1. 前言——問題引出 問題&#xff1a; ????將數列 {1, 3, 6, 8, 10, 14 } 構建成一顆二叉樹. &#xff08;n17個空指針域&…

1688API接口系列,商品詳情數據丨搜索商品列表丨商家訂單類丨1688開放平臺接口使用方案

1688商品詳情接口是指1688平臺提供的API接口&#xff0c;用于獲取商品詳情信息。通過該接口&#xff0c;您可以獲取到商品的詳細信息&#xff0c;包括商品標題、價格、庫存、描述、圖片等。 要使用1688商品詳情接口&#xff0c;您需要先申請1688的API權限&#xff0c;并獲取ac…

老有所依:TSINGSEE青犀養老院智能視頻監管方案

養老院智能監控方案是為了提高養老院內老人的安全和護理質量&#xff0c;利用智能技術與監控設備進行全方位的監控和管理&#xff0c;可以加強對老人的監護和護理&#xff0c;提高養老院的服務質量和安全性。 旭帆科技基于視頻技術與AI智能分析技術構建的養老院智能視頻監控方…

[動態規劃]最長公共子序列

題目六 最長公共子序列 題目描述 我們稱一個字符的數組S為一個序列。對于另外一個字符數組Z,如果滿足以下條件&#xff0c;則稱Z是S的一個子序列&#xff1a;&#xff08;1&#xff09;Z中的每個元素都是S中的元素&#xff08;2&#xff09;Z中元素的順序與在S中的順序一致。…

22 FlexSPI—讀寫外部 SPI NorFlash

文章目錄 22.1 SPI 協議簡介22.1.1 SPI物理層22.1.2 協議22.1.3 CPOL/CPHA 及通訊模式22.1.4 擴展 SPI 協議22.1.5 SDR 和 DDR 模式 22.2 RT1052 的 FlexSPI 特性及架構22.2.1 RT1052 的 FlexSPI 外設簡介22.2.2 RT1052 的 FlexSPI 架構剖析22.2.2.1 通訊引腳22.2.2.2 指令查找…

如何將html網頁免費轉為excel?

一、直接復制。 直接復制是最簡單有效、快捷的解決方案&#xff0c;操作方法如下&#xff1a; 1、用鼠標像平常復制文本一樣&#xff0c;將整個網頁表格選中。 2、點擊右鍵&#xff0c;點擊“復制”。 3、打開excel軟件&#xff0c;鼠標點擊任意單元格。 4、點擊右鍵&#…

Power BI - 5分鐘學習拆分列

每天5分鐘&#xff0c;今天介紹Power BI拆分列功能。 什么是拆分列&#xff1f; 有時導入Power BI的數據表中&#xff0c;某列內容都包含同樣的特殊字符如 /&/-/_等&#xff0c;可以利用這個特殊字符進行拆分列的操作&#xff0c;獲得我們想要的信息。 操作舉例&#xf…

【從編譯器的角度看多態的底層實現原理】

系列文章目錄 歡迎讀者訂閱《計算機底層原理》、《從JVM看Java》系列文章、能夠幫助到大家就是對我最大的鼓勵&#xff01; 文章目錄 目錄 系列文章目錄 文章目錄 前言 一、編譯器做了什么&#xff1f; 1.詞法分析 2.語法分析 3.語義分析 4.中間代碼生成 5.優化 6.目標代碼生成…

SugarCRM 任意文件上傳漏洞復現(CVE-2023-22952)

0x01 產品簡介 SugarCRM是美國SugarCRM公司的一套開源的客戶關系管理系統(CRM)。該系統支持對不同的客戶需求進行差異化營銷、管理和分配銷售線索,實現銷售代表的信息共享和追蹤。 0x02 漏洞概述 SugarCRM index.php接口存在安全漏洞,該漏洞源于安裝組件中存在授權繞過和P…