當前位置:首頁 » 編程語言 » c語言符串選擇題
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言符串選擇題

發布時間: 2022-04-28 04:53:57

c語言數組字元選擇題

選c,會發生錯誤。
strcpy本來是用來復制一個字元串到另一個地址上,可是,如果s1的預分配地址空間大小小於s2,在復制的過程中肯定會溢出,也就是會報錯

❷ C語言選擇題 求大家幫忙看看 能幫我說說執行過程嗎 謝謝

按你的書寫,字元串 中第一個字元是空格,執行結果不在4個答案中。
另外,你用了中文標點符號,語法通不過。
char s〔〕={ 「 Girl」} ; //聲明s是char型數組,初始化為 char s[6]; 內容為:空格,字母Girl, 和字元串結束符'\0';
s〔0〕=s〔2〕 ; //賦值語句,讓s[0]里的空格符位置變s[2]里的i; 字元串變:"iGirl";
s〔2〕=s〔0〕; //賦值語句,讓s[2]變s[0]里的i; 字元串:"iGirl";
s〔1〕=s〔4〕; // 賦值語句,讓s[1]里的G變s[4]里的l; 字元串變:"ilirl"
s〔4〕=s〔1〕; // 賦值語句,讓s[4]變s[1]里的l; 字元串:"ilirl";
執行結果 i,lirl 不在4個答案中。
程序改為用英文書寫,去掉第一個空格:
char s[]={"Girl"} ; //初始化 char s[5]="Girl";
s[0]=s[2]; // 字元串變為 "rirl"
s[2]=s[0]; // 字元串變為 "rirl"
s[1]=s[4]; // s[4] 是字元串結束符號 '\0', 賦值後s[1] 也成字元串結束符,字元串變為 "r",
s[4]=s[1]; // 字元串 還是 "r", 因 s[1] 是字元串結束符號 '\0',
( char s[5] 的內容為:r\0rl\0, 其中2個 \0 是字元串結束符)
printf("%c,%s\n",s[0],s); // 輸出 r,r 答案選 B.

❸ C語言的幾道選擇題

1、下面程序的功能是將字元串s中所有的字元』c』刪除。請選擇填空。
#include<stdio.h>
main()
{
char s[80];
int i,j;
gets(s);
for(i=j=0;s[i]!=』\0』;i++)
if(s[i]!=』c』);
s[j]=』\0』;
puts(s);
}

(C)s[j]=s[i];j++

2. 下述對C語言字元數組的描述中錯誤的是
(C) 可以在賦值語句中通過賦值運算符"="對字元數組整體賦值

3. 下列關於文件的結論中正確的是
B.對文件的操作必須先打開文件

4. 若要用fopen函數打開一個新的二進制文件,該文件要既能讀也能寫,則文件方式字元串應該是
B. 「wb+」

5. 有下面的程序段:
char a[3], b[] = "China";
a = b;
printf("%s", a);

(D) 編譯出錯

6. 要打開一個已存在的非空文件「file.dat」用於修改,正確的語句是
D. fp=fopen(「file.dat」,"r+」);

7. 下列語句中,將c定義為文件型指針的是
B. FILE *c;

8. C語言中,對文件操作的一般步驟是
A. 打開文件->操作文件->關閉文件

❹ C語言選擇題(最好解釋)

len和str分別是3和9
c中字元串的長度len計算的結束標志就是遇到\0,所以就是3
字元串大小,就是整個字元串的大小了,\0也是一個字元,所以就是9

❺ C語言字元串賦值的選擇題~!~~~~要理由哦~~~謝謝

嗯,lx說的對,是第三個錯了。char str[10]是定義了一個數組,注意,這里的數組名「str」在c中被解釋為是這個數組第一個元素的地址。顯然,如果你要給地址賦一個名為「computer」的值是荒謬的

❻ 關於c語言指針 字元串 選擇題不會 求答案

選擇答案B。

❼ c語言 字元串選擇題12求詳解

fun函數實際就是strcat函數的簡單實現, 即實現字元串t和s的拼接。
函數中第一個while循環先遍歷t到t的末尾,此時t指針指向的char存儲的是字元串末尾標志'\0';
第二個while循環將字元串s的每個字元都復制到t中,包括最後一個'\0',所以結果就是t在其尾部拼接上了s的所有內容。
其實關鍵的語句就是第二個while中的 *t++=*s++,這里++運算的優先順序比*高,所以相當於*(t++)=*s(++), 而t++是首先取t的值,然後再將t加一,s的右半部分類似,這樣就實現了逐個字元的復制,直到*s=『\0』賦值給*t後導致表達式的結果為0,從而while退出,此時剛好完全復制完了s中的內容,即已實現拼接的目的。

❽ c語言選擇題:字元串"\\\\aaa\\'ccc\bddd\\""的長度是多少

\\\\aaa\\'ccc\bddd\\"是個C語言的錯誤字元串組合,編譯都不會過的,談不上長度了!如果是\\\aaa\'ccc\bddd\"的話長度是13,分解如下
\\ \a a a \' c c c \b d d d \",共13個字元。但若屏幕上輸出則只能看到\aa'cccddd"等11個字元,其中\a和 \b是動作字元,看不見。
(若幫助了你,請採納)

❾ C語言的選擇題 怎麼選

選C。首先把b[2]起始的字元串拷貝到起始位置為a[1]的地方。a數組保存的是″a2"。再把c[1]開始的字元串和字元串a連接,結果為字元串″a2yz"。

❿ 關於C語言字元串的兩個選擇題。

先說答案 第一次選C,第二題選A,馬上補上原理
先說第一題,第一題的fun函數的內部代碼實現的功能是:
1、傳入一個數組的首地址和數組長度;
2、讓指針p1和p2分別指向數組的首尾元素;
3、如果p1的地址小於p2的地址,用s承接當前p1所指元素,然後p1向後移動一位,p1移動後所指位置的元素替換成p2當前所指元素的內容,然後p2向前移動一位,然後將p2現在所指位置的元素內容替換成s的內容;
4、依次循環下去,直到p1所指地址不小於p2,因為數組的內存空間是連續的,所以在p1指向數組前一半元素的時候,此循環都會進行下去;
建議樓主可以自己在紙上畫畫,模擬一下函數的過程,馬上就明白了。稍後補上第二道題原理
第二道題涉及到兩個知識點,第一是通過指針操作二維數組,第二是ASCII碼的操作
1、首先通過第一個for循環,將二維數組的兩個行的初始坐標交給指針數組的兩個元素,這樣方便指針數組操作;
2、兩個for循環的嵌套,是取字元數組每一維的詳間隔的元素,也就是隔一個元素,取一個元素,判斷條件是字元數組沒結束並且字元數組的ASCII碼小於等於9(在這里可以理解為限定為數字字元),然後減去0對應的ASCII碼,這樣就知道這個數字是多少了,然後套用公式,最後就能算出結果