版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
杭州電子科技大學(xué)信息工程學(xué)院《C語(yǔ)言程序設(shè)計(jì)》2024-----2025學(xué)年期末試卷(A卷)專業(yè)
班級(jí)
姓名
學(xué)號(hào)
題號(hào)一二三四五六七八九十成績(jī)復(fù)核簽字得分登分簽字說(shuō)明:本試卷共100分;答題要求:按要求答題考生須知:1.姓名、學(xué)號(hào)、系、專業(yè)、年級(jí)、班級(jí)必須寫(xiě)在密封線內(nèi)指定位置。2.答案必須用藍(lán)、黑色鋼筆或圓珠筆寫(xiě)在試卷上,字跡要清晰,卷面要整潔,寫(xiě)在草稿紙上的一律無(wú)效。一、選擇題(共20題,每題1分,滿分20分)從A、B、C、D四個(gè)選項(xiàng)中選出最符合題目要求的答案,填涂在答題卡對(duì)應(yīng)位置。以下屬于C語(yǔ)言合法標(biāo)識(shí)符,且適合命名“存儲(chǔ)嵌入式設(shè)備ID的變量”的是()A.2025_device_idB.device_idC.device-idD.double若要存儲(chǔ)“傳感器采集溫度(如25.8℃)”和“設(shè)備運(yùn)行時(shí)長(zhǎng)(如72小時(shí))”,分別適合的C語(yǔ)言數(shù)據(jù)類型是()A.int、floatB.float、intC.char、doubleD.int、char執(zhí)行語(yǔ)句“intsensor_cnt=15,valid_data=12;”(傳感器總數(shù)、有效數(shù)據(jù)數(shù)),則表達(dá)式“valid_data100/sensor_cnt”的值為()A.80B.80.0C.15D.12以下關(guān)于C語(yǔ)言局部變量的說(shuō)法,正確的是()A.局部變量定義在函數(shù)體外部B.局部變量未初始化時(shí)默認(rèn)值為0C.存儲(chǔ)“臨時(shí)統(tǒng)計(jì)的設(shè)備故障次數(shù)”適合定義為局部變量D.局部變量可被其他函數(shù)直接訪問(wèn)執(zhí)行以下代碼后,變量is_normal(判斷設(shè)備電壓是否正常,正常范圍5.0-5.5V,1為正常)的值為()
int
is_normal
=
0;
float
voltage
=
5.2;
//
設(shè)備電壓
if
(voltage
>=
5.0
&&
voltage
<=
5.5)
is_normal
=
1;
else
is_normal
=
0;
A.1B.0C.5.2D.5.0以下循環(huán)語(yǔ)句中,可用于“統(tǒng)計(jì)20組傳感器數(shù)據(jù)中濕度大于60%的組數(shù)”,且循環(huán)體執(zhí)行次數(shù)為20次的是()A.for(inti=0;i<20;i++){}B.for(inti=1;i<=19;i++){}C.inti=0;while(i<19){i++;}D.inti=1;do{i++;}while(i<=20);定義“floatsensor_temp[6]={23.5,25.2,24.8};”(存儲(chǔ)6組傳感器溫度),則數(shù)組元素sensor_temp[5]的值為()A.24.8B.0.0C.隨機(jī)值D.編譯錯(cuò)誤以下關(guān)于C語(yǔ)言函數(shù)參數(shù)傳遞的說(shuō)法,錯(cuò)誤的是()A.值傳遞時(shí),形參修改不影響實(shí)參B.地址傳遞時(shí),形參修改可影響實(shí)參C.傳遞“設(shè)備狀態(tài)數(shù)組”時(shí),需傳遞數(shù)組首元素地址D.函數(shù)參數(shù)個(gè)數(shù)可與實(shí)參個(gè)數(shù)不一致(無(wú)默認(rèn)參數(shù)時(shí))若定義“intp,device_num=36;p=&device_num;”(設(shè)備總數(shù)),則以下表達(dá)式中表示“變量device_num的值”的是()A.pB.pC.&pD.&device_num以下能正確定義并初始化二維數(shù)組(存儲(chǔ)“4個(gè)嵌入式模塊的3路電流數(shù)據(jù)”,單位:mA)的是()A.intmodule_current[3][3]={{120,115},{130,125},{110,105},{128,122}};B.intmodule_current[][3]={120,115,130,125,110};C.intmodule_current[4][]={120,115,130,125,110,105,128,122};D.intmodule_current[4][3]={{120},{130,125},{110,105,118},{128,122}};執(zhí)行以下代碼后,輸出結(jié)果為()(比較兩個(gè)模塊的平均電流值)
#include
<stdio.h>
int
main()
{
int
module1[]
=
{120,
115,
130};
//
模塊1三路電流
int
module2[]
=
{125,
110,
128};
//
模塊2三路電流
int
sum1=0,
sum2=0;
for
(int
i=0;
i<3;
i++)
{
sum1+=module1[i];
sum2+=module2[i];
}
printf("%s",
(sum1/3
>
sum2/3)
?
"模塊1平均電流更高"
:
"模塊2平均電流更高");
return
0;
}
A.模塊1平均電流更高B.模塊2平均電流更高C.121D.121以下關(guān)于結(jié)構(gòu)體的說(shuō)法,正確的是()A.結(jié)構(gòu)體成員的數(shù)據(jù)類型必須相同B.存儲(chǔ)“傳感器信息(ID、采集時(shí)間、溫度、濕度)”適合用結(jié)構(gòu)體C.結(jié)構(gòu)體指針訪問(wèn)成員時(shí)使用“.”運(yùn)算符D.結(jié)構(gòu)體定義后必須立即聲明變量若要以“只讀”方式打開(kāi)存儲(chǔ)“設(shè)備運(yùn)行日志”的文本文件“device_log.txt”,正確的fopen調(diào)用是()A.fopen("device_log.txt","w");B.fopen("device_log.txt","r");C.fopen("device_log.txt","a");D.fopen("device_log.txt","rb");以下函數(shù)定義中,能正確計(jì)算“8組傳感器數(shù)據(jù)的平均濕度”的是()A.floatavg_humidity(floathumidity[],intn){floattotal=0;for(inti=0;i<n;i++)total+=humidity[i];returntotal/n;}B.floatavg_humidity(floathumidity[],intn){floattotal=0;while(i<n){total+=humidity[i];i++;}returntotal/n;}C.floatavg_humidity(floathumidity[],intn){if(n==0)return0;elsereturnhumidity[n-1]+avg_humidity(humidity,n-1)/n;}D.floatavg_humidity(floathumidity[],intn){staticfloattotal=0;total+=humidity[n-1];returntotal/n;}執(zhí)行以下代碼后,變量high_temp(統(tǒng)計(jì)溫度高于30℃的傳感器數(shù)據(jù)組數(shù))的值為()
int
high_temp
=
0;
float
temp[]
=
{28.5,
31.2,
29.8,
32.5,
27.6,
30.5};
for
(int
i=0;
i<6;
i++)
{
if
(temp[i]
>
30)
high_temp++;
}
A.2B.3C.4D.5以下關(guān)于指針的說(shuō)法,正確的是()A.指針變量存儲(chǔ)的是變量的值B.空指針(NULL)可以直接訪問(wèn)C.指向“傳感器結(jié)構(gòu)體”的指針需與結(jié)構(gòu)體類型匹配D.指針加上一個(gè)整數(shù)表示移動(dòng)指定個(gè)數(shù)的變量定義“chardevice_cmd[]="sensor_read";”(設(shè)備指令:讀取傳感器),則數(shù)組device_cmd占用的字節(jié)數(shù)為()A.11B.12C.13D.不確定執(zhí)行以下代碼后,輸出結(jié)果為()(計(jì)算設(shè)備功耗,功耗=電壓×電流,電壓5.0V)
#include
<stdio.h>
void
calc_power(float
current,
float
power)
{
power
=
5.0
current;
//
功耗=電壓×電流
}
int
main()
{
float
curr
=
0.8;
//
電流(A)
float
power;
calc_power(curr,
&power);
printf("%.1f",
power);
return
0;
}
A.0.8B.4.0C.5.0D.不確定以下關(guān)于C語(yǔ)言預(yù)處理命令的說(shuō)法,正確的是()A.#define
MAX_DEVICE
50可定義“最大設(shè)備數(shù)量”常量B.#include命令僅能引入系統(tǒng)頭文件C.預(yù)處理命令以“;”結(jié)尾D.#ifdef用于判斷變量是否被賦值以下代碼中,存在語(yǔ)法錯(cuò)誤的是()A.floattemp[5]={28.5,31.2,29.8,32.5,27.6};printf("%.1f",temp[4]);B.intp=NULL;p=10;C.structSensor{charid[10];floattemp;floathumidity;};structSensors={"S202501",25.8,58.2};D.FILEfp=fopen("sensor.txt","r");if(fp==NULL)printf("文件打開(kāi)失敗!");二、填空題(共5題,每題3分,滿分15分)將答案填寫(xiě)在答題卡對(duì)應(yīng)位置,答案需完整、準(zhǔn)確,多余符號(hào)或格式錯(cuò)誤不得分。C語(yǔ)言中,定義“存儲(chǔ)8個(gè)嵌入式設(shè)備編號(hào)的整型數(shù)組,初始值為101、102、103、104、105、106、107、108”的語(yǔ)句為:______。執(zhí)行循環(huán)“inti=1,total_data=0;while(i<=14){total_data+=20;i++;}”后,total_data的值為_(kāi)_____(計(jì)算14天的傳感器總采集數(shù)據(jù)量,每天20組)。函數(shù)調(diào)用時(shí),實(shí)參和形參之間的默認(rèn)參數(shù)傳遞方式是______傳遞;若要修改實(shí)參中的“傳感器溫度”值,需采用______傳遞。打開(kāi)名為“sensor_record.txt”的文本文件用于追加寫(xiě)入傳感器采集記錄,應(yīng)使用語(yǔ)句:FILEfp;fp=fopen("sensor_record.txt","______");定義一個(gè)指向結(jié)構(gòu)體Sensor(存儲(chǔ)傳感器信息)的指針p:structSensor______p;三、程序閱讀題(共4題,每題5分,滿分20分)閱讀以下代碼,分析程序運(yùn)行后的輸出結(jié)果,將完整輸出內(nèi)容填寫(xiě)在答題卡對(duì)應(yīng)位置(多輸出、少輸出、格式錯(cuò)誤均不得分)。分析以下代碼的輸出結(jié)果(計(jì)算5組傳感器濕度的平均值):
#include
<stdio.h>
int
main()
{
float
humidity[]
=
{58.2,
62.5,
59.8,
61.3,
57.6};
//
5組濕度數(shù)據(jù)(%)
float
total
=
0.0,
avg;
for
(int
i=0;
i<5;
i++)
{
total
+=
humidity[i];
}
avg
=
total
/
5;
printf("傳感器平均濕度:%.1f%%",
avg);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(統(tǒng)計(jì)設(shè)備電流超過(guò)120mA的模塊個(gè)數(shù)):
#include
<stdio.h>
int
main()
{
int
count
=
0;
int
module_current[]
=
{120,
115,
130,
125,
110,
105,
128,
122};
//
8個(gè)模塊電流
int
i
=
0;
do
{
if(module_current[i]
>
120)
{
count++;
}
i++;
}
while(i
<
8);
printf("電流超過(guò)120mA的模塊個(gè)數(shù):%d",
count);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(遞歸計(jì)算信號(hào)采樣點(diǎn)的階乘,n=5,用于FFT預(yù)處理):
#include
<stdio.h>
int
factorial(int
n)
{
if
(n
==
1)
return
1;
else
return
n
factorial(n-1);
}
int
main()
{
int
res
=
factorial(5);
printf("5個(gè)采樣點(diǎn)的階乘(FFT預(yù)處理):%d",
res);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(結(jié)構(gòu)體存儲(chǔ)設(shè)備信息并修改運(yùn)行狀態(tài)):
#include
<stdio.h>
struct
Device
{
char
id[10];
//
設(shè)備ID
int
run_hour;
//
運(yùn)行時(shí)長(zhǎng)(小時(shí))
int
is_running;
//
運(yùn)行狀態(tài)(1=運(yùn)行,0=停止)
};
int
main()
{
struct
Device
d
=
{"D202501",
72,
1};
d.run_hour
+=
8;
//
追加8小時(shí)運(yùn)行時(shí)長(zhǎng)
d.is_running
=
0;
//
設(shè)備停止運(yùn)行
printf("設(shè)備ID:%s,運(yùn)行時(shí)長(zhǎng):%d小時(shí),運(yùn)行狀態(tài):%s",
d.id,
d.run_hour,
(d.is_running==1)?"運(yùn)行":"停止");
return
0;
}
輸出結(jié)果:______四、程序填空題(共2題,每空3分,滿分15分)請(qǐng)?jiān)诔绦虻臋M線處填入適當(dāng)?shù)膬?nèi)容,使程序完整并能正確運(yùn)行。以下程序用于對(duì)6組傳感器溫度數(shù)據(jù)進(jìn)行降序排序(冒泡排序法),請(qǐng)補(bǔ)全代碼。#include
<stdio.h>
int
main()
{
float
temp[6]
=
{28.5,
31.2,
29.8,
32.5,
27.6,
30.5};
//
6組溫度數(shù)據(jù)
int
i,
j;
float
temp_val;
for(i=0;
i<5;
i++)
{
for(j=0;
j<_______;
j++)
{
//
內(nèi)層循環(huán)控制未排序元素
if(temp[j]
<
temp[j+1])
{
//
降序排序,前元素小于后元素則交換
temp_val
=
temp[j];
temp[j]
=
temp[j+1];
temp[j+1]
=
temp_val;
}
}
}
//
輸出排序結(jié)果
printf("降序排序后的溫度數(shù)據(jù):");
for(i=0;
i<6;
i++)
{
printf("%.1f
",
temp[i]);
}
return
0;
}以下程序用于統(tǒng)計(jì)文本文件“device_log.txt”中設(shè)備故障次數(shù)(文件中每行存儲(chǔ)1條設(shè)備狀態(tài),最后一列1=故障,0=正常),請(qǐng)補(bǔ)全代碼。#include
<stdio.h>
#include
<stdlib.h>
int
count_fault()
{
FILE
fp;
int
count
=
0;
char
id[10];
int
run_hour,
is_fault;
//
以只讀方式打開(kāi)文件
fp
=
fopen("device_log.txt",
"_______");
if(fp
==
NULL)
{
printf("文件打開(kāi)失??!");
exit(1);
//
退出程序
}
//
循環(huán)讀取設(shè)備狀態(tài),統(tǒng)計(jì)故障次數(shù)
while(_______
==
3)
{
//
判斷是否成功讀取3個(gè)數(shù)據(jù)(設(shè)備ID、運(yùn)行時(shí)長(zhǎng)、故障狀態(tài))
if
(is_fault
==
1)
count++;
}
fclose(fp);
//
關(guān)閉文件
return
count;
}
int
main()
{
int
total
=
count_fault();
printf("設(shè)備故障總次數(shù):%d",
total);
return
0;
}五、編程題(共3題,第1題8分,第2題10分,第3題12分
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025山西晉中榆社縣招(選)聘社區(qū)專職工作人員23人備考題庫(kù)附答案
- 2025呼倫貝爾牙克石招36名社區(qū)工作者備考題庫(kù)附答案
- 液壓元件及液壓系統(tǒng)制造工標(biāo)準(zhǔn)化水平考核試卷含答案
- 殯儀服務(wù)員保密考核試卷含答案
- 礦用發(fā)電車操作工安全知識(shí)競(jìng)賽評(píng)優(yōu)考核試卷含答案
- 電動(dòng)輪自卸車電氣裝配工操作安全競(jìng)賽考核試卷含答案
- 自然保護(hù)區(qū)巡護(hù)監(jiān)測(cè)員安全素養(yǎng)考核試卷含答案
- 2024年那曲地區(qū)特崗教師招聘筆試真題匯編附答案
- 2024年高唐縣輔警招聘考試真題匯編附答案
- 2025上海市事業(yè)單位考試模擬題庫(kù)-《公共基礎(chǔ)知識(shí)》學(xué)生專用
- 課堂變革經(jīng)驗(yàn)介紹課件
- 2026年魯教版初三政治上冊(cè)月考真題試卷(含答案)
- 物業(yè)春節(jié)前安全生產(chǎn)培訓(xùn)課件
- TJFPA 0023-2025《社會(huì)單位滅火與應(yīng)急疏散評(píng)審導(dǎo)則》
- 2026年衛(wèi)浴潔具安裝合同協(xié)議
- 建房框架結(jié)構(gòu)合同范本
- 2025年寧波市數(shù)據(jù)局直屬事業(yè)單位公開(kāi)招聘工作人員筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 民用無(wú)人機(jī)安全培訓(xùn)課件
- 廣東省2026屆高二上數(shù)學(xué)期末復(fù)習(xí)檢測(cè)試題含解析
- 醫(yī)務(wù)科科長(zhǎng)年度述職報(bào)告課件
- 大仲馬課件教學(xué)課件
評(píng)論
0/150
提交評(píng)論