本文目錄一覽:
C語言程序設計試題 求標準答案 都是多選
1、答案:A
(單引號括起來的都是字符,而且一對單引號最多對應一個字符,\反斜杠是轉義字符的開始,\72是ASCII碼對應的字母H。也就是把H這個字母存到了變量char a中。就一個字符H。)
2、ACDE
解析:
int a=3,b=4,c=5;,
A、ab
B、a<=b
C、(a||b)>c
D、a<=(b||c)
E、!((a<b)!c||b)
優先級由大到小:() ! ||
A選項,34錯誤,邏輯值0。
B選項,3=4正確,邏輯值1。
C選項,(3||4)5,(3||4)”或”邏輯運算符兩邊只要有一個非0的整個值就是1,15錯,邏輯值0。
D選項,3=(4||5)錯誤,邏輯值0。
E選項,!((34)!5||4),先(34)邏輯值1,!5邏輯值0,10是0,0||4是1,!1是0,所以邏輯值0。
3、AC。
解析:A可以,B答案b不能被賦值(自左向右,計算||左側就已經是1了右邊就不用再計算了整個表達式無論右邊如何整個邏輯值必定是1,計算機也就不會計算右邊了)C可以(因為兩邊都必須計算才能得出最後的邏輯值答案),D不可以a不能被賦值(左邊就一個a,構不成賦值,可能存放一個隨機值,右邊可以被賦值)。
4、ABCD。
外部函數幾乎可以被所有函數調用。只要開頭#include」 “引入。
c語言程序設計(何欽銘 顏暉 第三版)課後習題答案
習 題 1
1.1 填空題
1.函數
2.主函數main();主函數main()
3.主函數main()
4.函數首部;函數體
5.{;}
6.順序結構;選擇結構;循環結構
7..c;.obj;.exe
1.2 思考題
1.答:結構化程序設計是指,為使程序具有一個合理的結構以保證程序正確性而規定的一套如何進行程序設計的原則。順序結構,選擇結構,循環結構
2.答:算法是對具體問題求解步驟的一
種描述。計算機算法的表達工具通常採用以下幾種方法:①用自然語言表示算法;②用流程圖表示算法;③用偽代碼表示算法;④用程序設計語言表示算法。
3.略
4.略
5.略
1.3 編程題
1.答:
#include “stdio.h”
main()
{ float a=10, b=20, h=5, s;
s=(a+b)*h/2;
printf(“s=%f ” , s );
}
求C語言程序設計的答案
2分,共60分)下列各題A、B、C、D四個選項中,只有一個選項是正確的。請將正確選項塗寫在答題卡相應位置上,答在試卷上不得分。
1.微型計算機的運算器、控制器及內存儲器組合在一起,稱之為()(本題分值:1分)
D
A.ALU
B.CPU
C.MPU
D.主機
2.下列存儲器中,存取速度最快的是()(本題分值:1分)
D
A.軟盤
B.硬盤
C.光盤
D.內存
3.系統軟件中最重要的是()(本題分值:1分)
A
A.操作系統
B.語言處理程序
C.工具軟件
D.數據庫管理系統
4、CPU處理的數據基本單位為字,一個字的字長()(本題分值:1分)
D
A.為8個二進制位
B.為16個二進制位
C.為32個二進制位
D.與CPU芯片的型號有關
5.打印當前屏幕內容應使用的控制鍵是()(本題分值:1分)
D
A.Scroll-Lock
B.Num-Lock
C.PgDn
D.PrtSc(Print Screen)
6.能將高級語言源程序轉換成目標程序的是()(本題分值:1分)
C
A.調試程序
B.解釋程序
C.編譯程序
D.編輯程序
7.二進制數1110111.11轉換成十進制數是()(本題分值:1分)
B
A.119.375
B.119.75
C.119.125
D.119.3
8.十六進制數FF.1轉換成十進制數是()(本題分值:1分)
A
A.255.0625
B.255.125
C.127.0625
D.127.125
9.中國國家計算機網絡設施是()(本題分值:1分)
A
A.NCFC
B.CERNET
C.ISDN
D.Internet
10.控制鍵^C的功能為()(本題分值:1分)
A
A.終止當前操作
B.系統複位
C.暫停標準輸出設備的輸出
D.結束命令行
11.COMMAND.COM為命令處理程序,DOS系統啟動後,它()(本題分值:1分)
B
A.駐留在外存,需要時裝入內存
B.常駐內存,包含所有內部命令
C.不能處理外部命令
D.不能處理後綴為.EXE的可執行文件
12.為了將所有擴展名為.PAS的文件改成擴展名為.P,應使用命令()(本題分值:1分)
C
A.REN *.PAS .?AS
B.REN PAS P
C.REN *.PAS *.P
D.REN *.PAS *.P??
13.設當前盤中文件XY.C的路徑為\A\B\XU,當前目錄為\A\B。為了查看文件XY.C的內容,應使用命令()(本題分值:1分)
A
A.TYPE XU\XY.C
B.TYPE \XU\XY.C
C.DIR XU\XY.C
D.DIR \A\B\XU\XY.C
14.要將提示符改成當前盤當前目錄後加一個大於號「>」,應使用命令()(本題分值:1分)
B
A.PROMPT
B.PROMPT $ p $ g
C.PROMPT $ $
D.PROMPT C\>
15.在多媒體計算機系統中,CD-ROM屬於()(本題分值:1分)
D
A.感覺媒體
B.表示媒體
C.表現媒體
D.存儲媒體
16.設當前盤為C盤,將A盤根目錄下的文件目錄信息存放到當前盤當前目錄下的文件AB中,應使用命令()(本題分值:1分)
C
A.TYPE A:\>AB
B.DIR >AB
C.DIR A:\>AB
D.DIR \>AB
17.在位運算中,操作數每右移一位,其結果相當於()(本題分值:1分)
B
A.操作數乘以2
B.操作數除以2
C.操作數除以16
D.操作數乘以16
18.在當前盤當前目錄下有一個文件A.BAT,其內容為
CD \
MD \XYZ\AB\B\C
CD XYZ\AB\B
在正確執行上述文件後,接着執行下列命令時,不會發生錯誤的是()(本題分值:1分)
C
A.MD C
B.RD \XYZ
C.RD C
D.RD B
19.下列命令組中兩個DOS命令互相等價的是()(本題分值:1分)
D
A.TYPE AB.TXT與DIR AB.TXT
B.DISKCOMP A:B:與COMP A:.* B:*.
C.TYPE AB.TXT>>XY.TXT與COPY AB.TXT XY.TXT
D.TYPE AB.TXT>XY.TXT與COPY AB.TXT XY.TXT
20.設A盤為啟動盤,其目錄結構為
根目錄
DOS子目錄 COMAND.COM
USER子目錄 AUTOEXEC.BAT
其文件AUTOEXEC.BAT的內容如下:
MD \XYZ
CD \DOS\USER
則由A盤啟動成功後,A盤的當前目錄是()(本題分值:2分)
C
A.\DOS\USER
B.\XYZ
C.根目錄
D.\DOS
21.C語言提供的合法關鍵字是()(本題分值:1分)
C
A.switch
B.cher
C.case
D.default
22.在C語言中,合法的字符常量是()(本題分值:1分)
B
A.′\084′
B.′\x43′
C.′ab′
D.′\0′
23.若已定義x和y為double類型,則表達式: x=1,y=x+3/2的值是()(本題分值:1分)
C
A.1
B.2
C.2.0
D.2.5
24.合法的數組定義是()(本題分值:1分)
D
A.int a[]=〃string〃;
B.int a[5]=;
C.char a=〃string〃;
D.char a[]=;
25.設a為整型變量,不能正確表達數學關係10<a<15的C語言表達式是()(本題分值:1分)
A
A.10<a<15
B.a==11||a==12||a==13||a==14
C.a>10&&a<15
D.!(a<=10)&&!(a>=15)
26.若t為double類型,表達式t=1,t+5,t++的值是()(本題分值:1分)
C
A.1
B.6.0
C.2.0
D.1.0
27.若有定義和語句:
char s[10];s=〃abcd〃;printf(〃%s\n〃,s);
則結果是(以下μ代表空格)()(本題分值:1分)
D
A.輸出abcd
B.輸出a
C.輸出abcdμμμμμ
D.編譯不通過
28.若有定義和語句:
int **pp,*p,a=10,b=20;
pp=&p;p=&a;p=&b;printf(〃%d,%d\n〃,*p,**pp);
則輸出結果是()(本題分值:1分)
D
A.10,10
B.10,20
C.20,10
D.20,20
29.若有以下定義和語句:
int u=010,v=0x10,w=10;
printf(〃%d,%d,%d\n〃,u,v,w);
則輸出結果是()(本題分值:1分)
A
A.8,16,10
B.10,10,10
C.8,8,10
D.8,10,10
30.若有以下定義和語句:
char c1=′b′,c2=′e′;
printf(〃%d,%c\n〃,c2-c1,c2-′a′+′A′);
則輸出結果是()(本題分值:1分)
B
A.2,M
B.3,E
C.2,E
D.輸出項與對應的格式控制不一致,輸出結果不確定
31.若有定義:int a[3][4];,()不能表示數組元素a[1][1]。(本題分值:1分)
D
A.*(a[1]+1)
B.*(a[1][1])
C.(*(a+1))[1]
D.*(a+5)
32.若i、j已定義為int型,則以下程序段中內循環體的總的執行次數是()(本題分值:1分)
for(i=5;i>0;i–)
for(j=0;j<4;j++)
A
A.20
B.24
C.25
D.30
33.若有以下定義和語句:
char *s1=〃12345〃,*s2=〃1234〃;
printf(〃%d\n〃,strlen(strcpy(s1,s2)));
則輸出結果是()(本題分值:1分)
A
A.4
B.5
C.9
D.10
34.若有以下定義和語句:
int a[10]=,*p=a;
則不能表示a數組元素的表達式是()(本題分值:1分)
B
A.*p
B.a[10]
C.*a
D.a[p-a]
35.下面程序的輸出結果是()(本題分值:2分)
C
A.k=3 a=2 b=3
B.k=3 a=3 b=2
C.k=2 a=3 b=2
D.k=2 a=2 b=3
36.下面程序的輸出結果是()(本題分值:1分)
main()
{unsigned a=32768;
printf(〃a=%d\n〃,a);}
C
A.a=32768
B.a=32767
C.a=-32768
D.a=-1
37.執行下面語句後的輸出結果為()(本題分值:1分)
int i=-1;
if(i<=0) printf(〃****\n〃);
else printf(〃%%%%\n〃)
D
A.****
B.%%%%
C.%%%%c
D.有語法錯誤,不能正確執行
38.對於條件表達式(M)?(a++):(a–),其中的表達式M等價於()(本題分值:1分)
C
A.M==0
B.M==1
C.M!=0
D.M!=1
39.下述程序段的輸出結果是()(本題分值:1分)
int x=10;
int7nbspy=x++;
printf(〃%d,%d〃,(x++,y),y++);
A
A.11,10
B.11,11
C.10,10
D.10,11
40.若有以下的定義:
int a[]=,*p=a
則值為3的表達式是()(本題分值:1分)
A
A.p+=2,*(p++)
B.p+=2,*++p
C.p+=3,*p++
D.p+=2,++*p
41.假定所有變量均已正確說明,下列是程序段運行後x的值是()(本題分值:2分)
a=b=c=0;x=35;
if(!a) x–;
else if(b);
if(c) x=3;
else x=4;
B
A.34
B.4
C.35
D.3
42.在以下一組運算中,優先級最高的運算符是()(本題分值:2分)
C
A.<=
B.=
C.%
D.&&
43.若有以下定義和語句:
int w[2][3],(*pw)[3];pw=w;
則對w數組元素的非法引用是()(本題分值:2分)
A
A.*(w[0]+2)
B.*(pw+1)[2]
C.pw[0][0]
D.*(pw[1]+2)
44.若有以下程序片段: char str[ ]=〃ab\n\012\\\\〃; printf(〃%d〃,strlen(str));
上面程序片段的輸出結果是()(本題分值:2分)
C
A.3
B.4
C.6
D.12
45.函數調用:strcat(strcpy(str1,str2),str3)的功能是()(本題分值:2分)
C
A.將串str1複製到串str2中後再連接到串str3之後
B.將串str1連接到串str2之後再複製到串str3之後
C.將串str2複製到串str1中後再將串str3連接到串str1之後
D.將串str2連接到串str1之後再將串str1複製到串str3中
46.以下對C語言函數的有關描述中,正確的是()(本題分值:2分)
A
A.在C中,調用函數時,只能把實參的值傳送給形參,形參的值不能傳送給實參
B.C函數既可以嵌套定義又可以遞歸調用
C.函數必須有返回值,否則不能使用函數
D.C程序中有調用關係的所有函數必須放在同一個源程序文件中
47.以下敘述中不正確的是()(本題分值:2分)
C
A.在C中,函數中的自動變量可以賦初值,每調用一次,賦一次初值
B.在C中,在調用函數時,實參和對應形參在類型上只需賦值兼容
C.在C中,外部變量的隱含類別是自動存儲類別
D.在C中,函數形參可以說明為register變量
48.設有以下定義或語句,則輸出的結果是(用small模式編譯,指針變量佔2個位元組)()(本題分值:2分)
struct date
{long *cat;
struct date *next;
double dog;
}too;
printf(〃%d〃,sizeof(too));
D
A.20
B.16
C.14
D.12
49.設有定義:struct sk
data,*p;
若有p=&data;,則對data中的a域的正確引用是()(本題分值:2分)
B
A.(*p).data.a
B.(*p).a
C.p->data.a
D.p.data.a
50.以下對枚舉類型名的定義中正確的是()(本題分值:2分)
B
A.enum a=;
B.enum a;
C.enum a=;
D.enum a;
二、填空題(每空2分,共40分)請將答案分別寫在答題卡中序號至的橫線上,答在試卷上不得分。
1、與十進制數101等值的二進制數為。(本題分值:2分)
1100101
2、DOS命令分為內部命令與外部命令,XCOPY命令屬於命令。(本題分值:2分)
外部
3、設當前盤為A盤,當前系統提示符為「」,在不改變當前盤的情況下,顯示C盤的當前目錄路徑,應使用命令。 (本題分值:2分)
CD C:
4、自動批處理文件名必須是。(本題分值:2分)
AUTOEXEC.BAT
5、設在當前盤當前目錄下有兩個文件W.TXT與P.TXT,現要將文件P.TXT連接到文件W.TXT的後面,若使用COPY命令,則完整的命令為。(本題分值:2分)
COPY W.TXT+P.TXT W.TXT
6、表示條件10<x<100或x<0的C語言表達式是。(本題分值:2分)
(x>10 x<100)||x<0
或(10<xx<100)||x<0
或x<0 ||(x>10x<100)
或0>x ||(10<xx<100)
7、以下程序中,主函數調用了LineMax函數,實現在N行M列的二維數組中,找出每一行上的最籩怠G胩羈鍘?br #define N 3
#define M 4
void LineMax(int x[N][M])
{ int i,j,p;
for(i=0;i<N;i++)
{p=0;
for(j=1;j<M;j++)
if(x[i][p]<x[i][j]) ;
printf(〃The max value in line is %d\n〃,);
}
}
main()
;
;
}
(本題分值:6分)
p=j
x[i][p]
LineMax(x)
8、以下程序的功能是:從鍵盤上輸入若干個學生的成績,統計計算出平均成績,並輸出低於平均分的學生成績,用輸入負數結束輸入。請填空。
main()
{float x[1000],sum=0.0,ave,a;
int n=0,i;
printf(〃Enter mark:\n〃);scanf(〃%f〃,a);
while(a>= 0.0 n<1000)
{sum+=;x[n]=;
n++; scanf(〃%f〃,a);
}
ave= ;
printf(〃Output:\n〃);
printf(〃ave=%f\n〃,ave);
for(i=0;i<n;i++)
if() printf(〃%f\n〃,x[i]);
}
(本題分值:8分)
a
a
sum/n或sum/(float)n或sum/(double)n
x[i]<ave或!(x[i]>=ave)或ave>x[i]
9、執行以下程序,輸入-10的結果是,輸入5的結果是,輸入10的結果是,輸入30的結果是。
(本題分值:8分)
5
10
5
10、以下程序的功能是。
main()
;
int sum=0,i;
for(i=0;i<10;i++)
if(num[i]>0)
sum=num[i]+sum;
printf(〃sum=%6d〃,sum);
}
(本題分值:2分)
計算數組num中大於零的數據之和
11、以下程序可以把從鍵盤上輸入十進制數(long型)以二到十六進制數的形式輸出,請填空。
#include
main()
{char
b[16]=;
int c[64],d,i=0,base;
long n;
printf(〃Enter a number:\n〃); scanf(〃%1d〃,n);
printf(〃Enter new base:\n〃); scanf(〃%1d〃,base);
do
{c[i]=;
i++;
n=n/base;
}while(n!=0);
printf(〃The result is:\n〃);
for(–i;i>=0;–i)
{?d=c[i];
printf(〃%c〃,b);
}
}
(本題分值:4分)
n%base
[d]
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/239589.html