當前位置:首頁 » 編程語言 » c語言的選擇題

c語言的選擇題

發布時間: 2023-06-12 17:11:04

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. 打開文件->操作文件->關閉文件

㈡ 20道C語言選擇題,請教高手

您好,很高興回答你的問題!
20道c語言選擇題如下(附答案):
1.設int m1=5,m2=3;表達式m1>m2?(m1=1): (m2=-1)運算後,m1和m2的值分別是
A. 1和-1
B. 1和3
C. 5和-1
D. 5和3
答案:B
2.設float m=4.0,n=4.0;使m為10.0的表達式是
A. m-=n*2.5
B. m/=n+9
C. m*=n-6
D. m+=n+2
答案:D
3.表達式5&2||5|2的值是
A. 0
B. 1
C. 2
D. 3
答案:B
4.設int a[10];則下面哪個不是對a中的數組元素的引用
A. a[5]
B. *(a+1)
C. a[10-10]
D. a(5)
答案:D
5.設char c[5]={』a』,』b』,』\0』,』c』,』\0』};則printf(「%s」,c);的輸出是
A. 』a』』b』
B. ab
C. abc
D. 「ab\0c」
答案:B
6.設double *p[6];則
A.p是指向double型變數的指針
B.p是double型數組
C.p是指針數組,其元素是指向double型變數的指針
D.p是指向6個double型數據的一維數組的指針
答案:C
7.設char *s=」china」;則printf (「%s,%c,%c\n」,s,*s,s[3]);的輸出是
A. china,c,n
B. china,china,i
C. c,c,n
D. china,china,n
答案:A
8.設有定義struct ru{long x;float y;}time,*timep=&time;則對time中成員x的正確引用是
A. ru.time.x
B. timep.x
C. (*timep).x
D. time->x
答案:C
9.執行下列程序
#define R 0.5
#define AREA(x) R*x*x
main()
{int a=1,b=2;
printf (「%5.1f\n」,AREA(a+b));
}
後輸出結果是
A. 0.0
B. 0.5
C. 3.5
D. 4.5
答案:D
10.定義一個結構體變數時,系統分配給他的內存單元是:
A. 全部成員所需的內存量之和
B. 全部成員所需的內存量的最大值
C. 固定的容量
D. 結構體中第一個成員所需的容量
答案:A
11.設有變數定義int a=3,b=5,c=10;下列表達式的值是( )
(++a*b--)/2.0*c
A.100.0
B.80.0
C.75.0
D.60.0
答案:A
12.在計算機上可以直接運行的程序是( )
A.機器語言程序
B.高級語言程序
C.匯編語言程序
D.C語言程序
答案:A
13.設有變數定義int x=4,y,z; 則執行y=z=--x;x=y==z;後,變數x的值是( )
A.0
B.1
C.3
D.4
答案:B
14.執行以下語句a=b=c=1;++a&&--b||--c;後,變數a、b、c的值依次是( )
A.2,0,0
B.2,0,1
C.2,1,0
D.2,1,1
答案:A
15.下列( )是合法的整形常量
A.456.31
B.0100
C.4e3
D.0x
答案:B
16.設有變數定義int x=5,n=5;計算表達式x+=n++後,變數x,n的值分別是( )
A.11,6
B.10,5
C.10,6
D.5,6
答案:C
17.下列( )是正確的數組定義
A.long y[4]={1,2,3,4,5};
B.float x[][3]={0,1,2,3,4};
C.int s[3][]={{1},{2},{3}};
D.char z[][2]={};
答案:B
18.設有變數定義int b[5]; ( )能正確表示數組b中某個數據元素
A.b[5]
B.b+2
C.*(b+2)
D.*(*(b+3))
答案:C
19.以下不合法的用戶標識符是
A. f2_G3
B. If
C. 4d
D. _8
答案:C
20.定義一個共用體變數時,系統分配給他的內存單元是:
A. 全部成員所需的內存量之和
B. 全部成員所需的內存量的最大值
C. 固定的容量
D. 共用體中第一個成員所需的容量
答案:B

㈢ c語言選擇題10道

1、設 int *p , I ;以下正確合理的語句是(B )。 //p未初始化,指向隨機空間,不能賦值, 也不能提取實體。上機測試B通過,D編譯錯誤

A、*p=10;
B、i=p;
C、i=*p;
D、i=2*p+1;

2、設 char s[10] ; int I ; 以下引用數組 s 中元素正確的表達式是(B )。 //s[]可提取或*(S+i)可提取數組中元素

A、S(i+2);
B、*(s+i)
C、*(&s+i)
D、*((s++)+i)

3、若有定義和語句
int **pp, *p, a=10, b=20;
pp=&p;
p=&a;
p=&b;
printf("%d,%d\n",*p,**pp);
則輸出結果是( D)。 //這就是指針修改所指向實體的值,一重二重指針都一樣

A、10,20
B、10,10
C、20,10
D、20,20

4、若有定義和語句
char *s1="12345" , *s2="1234";
printf("%d\n" ,strlen(strcpy(s1,s2)));
則輸出結果是(C )。 //我自己數的,上機測試運行死機

A、4
B、5
C、9
D、10

5、若定義 int a[ ] ={1, 2, 3, 4, 5 , 6, 7 , 8 , 9 , 10}, *p=a ;
則值為 3 的表達式是 (A )。 //不解釋,你懂得。

A、p+=2,*(p++)
B、p+=2,*++p
C、p+=3,*p++
D、++*p

6、設有以下一段程序
char s[ ]="Hello";
char *p=s ;
執行完上面程序段後,*(p+5) 的值為 ( B) 。 //這個上機測試結果為null或「「;我只好選B了
A、'o'
B、'\0'
C、'o' 的地址
D、不確定的值

7、已知:int *p,a;則語句「p=&a;」中的運算符「&」的含義是。 (D)//取地址,不解釋,你懂得
A、位與運算
B、邏輯與運算
C、取指針內容
D、取變數地址

8、已知:int *p;使用如下語句動態申請一個int型的存儲單元,應當使用。
p=________malloc(sizeof(int)); (D)//不解釋,你懂得
A、int
B、int *
C、(* int)
D、(int *)

9、已知:char s1[4]="12";char *ptr;則執行以下語句後的輸出為。
ptr=s1;
printf("%c\n",*(ptr+1)); (A)//不解釋,你懂得
A、字元'2'
B、字元'1'
C、字元'2'的地址
D、不確定

10、已知:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則不能表示數組a中元素的表達式是。 (B)//數組下標從0開始數,你懂得……
A、*p
B、a[10]
C、*a
D、a[p-a]

熱點內容
演算法與程序設計教案 發布:2025-02-13 06:10:51 瀏覽:55
ftp登錄需要輸入用戶名和密碼 發布:2025-02-13 06:03:33 瀏覽:398
數控編程代表 發布:2025-02-13 05:58:51 瀏覽:385
編程凸輪 發布:2025-02-13 05:38:21 瀏覽:691
判斷素數的編程 發布:2025-02-13 05:29:25 瀏覽:618
androidaes加密 發布:2025-02-13 05:08:36 瀏覽:493
李宗瑞文件夾 發布:2025-02-13 04:27:59 瀏覽:611
phpparent的parent 發布:2025-02-13 04:18:08 瀏覽:457
小容量存儲器市場 發布:2025-02-13 04:01:11 瀏覽:373
ickeck文件夾 發布:2025-02-13 04:00:21 瀏覽:644