c語言編寫選擇題
『壹』 c語言程序 如何編寫選擇題
#include <stdio.h>
int main()
{
int count = 0;
printf("一天有幾個小時?\n");
printf("A、12h\t\tB、24h\n");
switch(char answer = getchar())
{
case A:
printf("回答正確,加五分!");
cout = count + 5;
break;
case B:
printf("回答錯誤!");
break;
default:
printf("What are you doing?");
}
}
『貳』 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]
『肆』 c語言程序 如何編寫選擇題
#include
int
main()
{
int
count
=
0;
printf("一天有幾個小時?\n");
printf("A、12h\t\tB、24h\n");
switch(char
answer
=
getchar())
{
case
A:
printf("回答正確,加五分!");
cout
=
count
+
5;
break;
case
B:
printf("回答錯誤!");
break;
default:
printf("What
are
you
doing?");
}
}
『伍』 C語言選擇題
40.若有以下定義:
int a[]={1,2,3,4,5,6,7,8,9,10},*p=a;
則值為3的表達式是(C )。
A.*p B.*(p+1)
C.*(p+2) D.*(p+3)
41.以下性質不是演算法特徵是( B)。
A.有窮性 B.可重用性 C.確定性 D.有0個或多個輸入
42.以下關於C語言優點說法錯誤的是( B)。
A.C語言描述簡潔、靈活、高效,有豐富的數據類型
B.C語言的源程序無需經過編譯連接處理,可以直接被計算機運行
C.C語言提供了功能齊全的函數庫,有良好的通用性和可移植性
D.C語言生成目標代碼的質量高,程序執行效率高
43.C語言提供合法的數據類型關鍵字是( B)。
A.Double B.short C.integer D.Char
44.C語言的標識符只能由字母、數字和下劃線三種字元組成,且首字元( A)。
A.必須為字母或下劃線 B.必須為下劃線
C.必須為字母 D.可以是字母、數字和下劃線中的任一種字元。
45.以下選項中,與k=n++完全等價的表達式是(A )。
A.k=n,n=n+1 B.k=++n C.k+=n+1 D.n=n+1,k=n
46.設有語句int a=3;則執行語句a+ =a*a;後,變數a的值是( D)。
A.3 B.9 C.12 D.18
47.若有定義int a=7; float x=2.5, y = 4.7; 則表達式x+a%3*(int) (x + y) %2/4的值是( D)。
A.2.750000 B.0.00000 C.3.500000 D.2.500000
48.對y在[3,23]和[100,200]范圍內為真的正確表達式為( C)。
A.(y>=3)&&(y<=23)&&(y>=100)&&(y<=200)
B.(y>=3)||(y<=23)||(y>=100)||(y<=200)
C.(y>=3)&&(y<=23)||(y>=100)&&(y<=200)
D.(y>=3)||(y<=23)&&(y>=100)||(y<=200)
49.設x、y、z和k都是整型變數,則執行變數表達式:x=(y=52,z=26,k=32)後,x的值為( C)。
A.4 B.26 C.32 D.52
50.現已定義整型變數int i=1;執行循環語句」while(i++<5);」後,i的值為(C )。
A.1 B.5 C.6 D.以上三個答案均不正確
『陸』 10道c語言選擇題
1、C 2、B 3、A 4、D 5、B
6、D 7、D 8、D 9、B 10、C
『柒』 C語言程序設計選擇題(要詳解)謝謝
1.B 解釋請看CD選項
2.D do-while 循環體至少執行一次,while可能一次不執行
『捌』 c語言簡單選擇題
A 有15個int 類型的元素
D 因為a[3]=4,而'd'-c,所以a[『d』-c]=4
A 課本上有的,傳遞是數組的首地址。
A 定義數組的時候不能動態指定大小,如果想動態應該使用malloc函數
C 最後一個if不滿足但是這整個個if語句結束了。因此X還是1
C 很顯然,s放著循環的裡面是不行的,另外S如果等於0做乘法後恆等於0
D ++的時候n=0;列印的時候n執行完n++.此時為1,一直到n=3,因此循環三次
B a[1]很顯然等於2
D 這個沒什麼好說的
『玖』 用c語言編寫一個選擇題程序,每道題之間怎麼連接單個程序類似於這
#include <stdio.h>
void main()
{
int count = 0;
char answer;
char name[20];
int num;
printf("歡迎來到皮皮蟹設計的選擇題考試程序!\n");
printf("請輸入您的姓名:");
scanf("%s",&name);
printf("請輸入您的學號:");
scanf("%d",&num);
system("pause");
printf("考試開始!時間為30分鍾\n");
printf("1.請選出 缺乏的,欠缺的 的英文翻譯\n");
printf(" A、courtesy\n B、coward\n C、deficient\n D、deflect\n");
x: answer = getchar();
switch(answer)
{
case 'C' : printf("回答正確,加15分\n"); count =count +15;
break;
case 'A' : printf("回答錯誤!");
break;
case 'B' : printf("回答錯誤!");
break;
case 'D' : printf("回答錯誤!");
break;
default : goto x;
break;
}
system("pause");
printf("2.請選出 謙虛 謙恭 請安 的英文翻譯\n");
printf(" A、courtesy\n B、coward\n C、deficient\n D、deflect\n");
l: answer = getchar();
switch(answer)
{
case 'A' : printf("回答正確,加15分\n"); count =count +15;
break;
case 'B' : printf("回答錯誤!");
break;
case 'C' : printf("回答錯誤!");
break;
case 'D' : printf("回答錯誤!");
break;
default :goto l;
break;
}
}
我把後面的部分省略了,我直接在每道題default後面用了goto語句,既能讓別人按錯鍵重新按,又能將兩道題連起來。
『拾』 幾道簡單的C語言選擇題,幫忙做一下
1、
為表示關系x≥y≥z,應使用C語言表達式
(A)2、
執行下面程序段
(B)3、
若有以下定義:
float
x;
int
a,b;
則正確的switch
語句是
(C)4、
能正確表示a和b同時為正或同時為負的邏輯表達式是(D)5、
選擇出合法的判斷a和b是否相等的if語句(C)6、
已知
int
x=10,y=20,z=30,則執行(如果那些語句是在if裡面的話,那就選A,如果不是,那就選B)7、
運行下面程序後,輸出是(B)8、
執行下列程序後的輸出結果是(D)9、
如果c為字元型變數,下面________可以判斷c是否為空格(A)10、
如果c為字元型變數,判斷c是否為空格不能使用(C)