版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
浙江農(nóng)林大學(xué)暨陽學(xué)院《C語言程序設(shè)計(jì)》2024-----2025學(xué)年期末試卷(A卷)專業(yè)
班級
姓名
學(xué)號
題號一二三四五六七八九十成績復(fù)核簽字得分登分簽字說明:本試卷共100分;答題要求:按要求答題考生須知:1.姓名、學(xué)號、系、專業(yè)、年級、班級必須寫在密封線內(nèi)指定位置。2.答案必須用藍(lán)、黑色鋼筆或圓珠筆寫在試卷上,字跡要清晰,卷面要整潔,寫在草稿紙上的一律無效。一、選擇題(共20題,每題1分,滿分20分)從A、B、C、D四個(gè)選項(xiàng)中選出最符合題目要求的答案,填涂在答題卡對應(yīng)位置。以下屬于C語言合法標(biāo)識(shí)符,且適合命名“存儲(chǔ)農(nóng)作物畝產(chǎn)量的變量”的是()A.2025_crop_yieldB.crop_yieldC.crop-yieldD.double若要存儲(chǔ)“育苗基地溫度(如23.5℃)”和“樹苗培育數(shù)量(如1200株)”,分別適合的C語言數(shù)據(jù)類型是()A.int、floatB.float、intC.char、doubleD.int、char執(zhí)行語句“inttotal_forest=80,healthy_forest=68;”(森林總面積、健康森林面積,單位:畝),則表達(dá)式“healthy_forest100/total_forest”的值為()A.85B.85.0C.80D.68以下關(guān)于C語言局部變量的說法,正確的是()A.局部變量定義在函數(shù)體外部B.局部變量未初始化時(shí)默認(rèn)值為0C.存儲(chǔ)“臨時(shí)統(tǒng)計(jì)的病蟲害植株數(shù)”適合定義為局部變量D.局部變量可被其他函數(shù)直接訪問執(zhí)行以下代碼后,變量is_qualified(判斷種子發(fā)芽率是否合格,合格標(biāo)準(zhǔn)≥85%,1為合格)的值為()
int
is_qualified
=
0;
float
germination
=
88.5;
//
種子發(fā)芽率(%)
if
(germination
>=
85)
is_qualified
=
1;
else
is_qualified
=
0;
A.1B.0C.88.5D.85以下循環(huán)語句中,可用于“統(tǒng)計(jì)20塊農(nóng)田中畝產(chǎn)量大于500公斤的塊數(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);定義“floatcrop_yield[6]={520.5,480.0,550.5};”(存儲(chǔ)6塊農(nóng)田畝產(chǎn)量,單位:公斤),則數(shù)組元素crop_yield[5]的值為()A.550.5B.0.0C.隨機(jī)值D.編譯錯(cuò)誤以下關(guān)于C語言函數(shù)參數(shù)傳遞的說法,錯(cuò)誤的是()A.值傳遞時(shí),形參修改不影響實(shí)參B.地址傳遞時(shí),形參修改可影響實(shí)參C.傳遞“林業(yè)設(shè)備狀態(tài)數(shù)組”時(shí),需傳遞數(shù)組首元素地址D.函數(shù)參數(shù)個(gè)數(shù)可與實(shí)參個(gè)數(shù)不一致(無默認(rèn)參數(shù)時(shí))若定義“intp,seed_cnt=3500;p=&seed_cnt;”(種子總數(shù)量,單位:粒),則以下表達(dá)式中表示“變量seed_cnt的值”的是()A.pB.pC.&pD.&seed_cnt以下能正確定義并初始化二維數(shù)組(存儲(chǔ)“4個(gè)育苗基地的5個(gè)月育苗數(shù)量”,單位:株)的是()A.intbase_seedling[3][5]={{1200,1150},{1300,1250},{1100,1050},{1280,1220}};B.intbase_seedling[][5]={1200,1150,1300,1250,1100};C.intbase_seedling[4][]={1200,1150,1300,1250,1100,1050,1280,1220};D.intbase_seedling[4][5]={{1200},{1300,1250},{1100,1050,1180},{1280,1220}};執(zhí)行以下代碼后,輸出結(jié)果為()(比較兩個(gè)育苗基地的月平均育苗數(shù)量)
#include
<stdio.h>
int
main()
{
int
base1[]
=
{1200,
1150,
1300,
1250,
1100};
//
基地1月育苗數(shù)
int
base2[]
=
{1250,
1100,
1280,
1320,
1050};
//
基地2月育苗數(shù)
int
sum1=0,
sum2=0;
for
(int
i=0;
i<5;
i++)
{
sum1+=base1[i];
sum2+=base2[i];
}
printf("%s",
(sum1/5
>
sum2/5)
?
"基地1平均育苗數(shù)更高"
:
"基地2平均育苗數(shù)更高");
return
0;
}
A.基地1平均育苗數(shù)更高B.基地2平均育苗數(shù)更高C.1200D.1190以下關(guān)于結(jié)構(gòu)體的說法,正確的是()A.結(jié)構(gòu)體成員的數(shù)據(jù)類型必須相同B.存儲(chǔ)“農(nóng)產(chǎn)品信息(編號、名稱、庫存、單價(jià))”適合用結(jié)構(gòu)體C.結(jié)構(gòu)體指針訪問成員時(shí)使用“.”運(yùn)算符D.結(jié)構(gòu)體定義后必須立即聲明變量若要以“只讀”方式打開存儲(chǔ)“林業(yè)設(shè)備維護(hù)日志”的文本文件“forest_equip_log.txt”,正確的fopen調(diào)用是()A.fopen("forest_equip_log.txt","w");B.fopen("forest_equip_log.txt","r");C.fopen("forest_equip_log.txt","a");D.fopen("forest_equip_log.txt","rb");以下函數(shù)定義中,能正確計(jì)算“8塊農(nóng)田的平均畝產(chǎn)量”的是()A.floatavg_yield(floatyield[],intn){floattotal=0;for(inti=0;i<n;i++)total+=yield[i];returntotal/n;}B.floatavg_yield(floatyield[],intn){floattotal=0;while(i<n){total+=yield[i];i++;}returntotal/n;}C.floatavg_yield(floatyield[],intn){if(n==0)return0;elsereturnyield[n-1]+avg_yield(yield,n-1)/n;}D.floatavg_yield(floatyield[],intn){staticfloattotal=0;total+=yield[n-1];returntotal/n;}執(zhí)行以下代碼后,變量high_stock(統(tǒng)計(jì)庫存超過500公斤的農(nóng)產(chǎn)品種類數(shù))的值為()
int
high_stock
=
0;
float
stock[]
=
{480.5,
520.0,
490.5,
550.0,
470.0,
510.5};
for
(int
i=0;
i<6;
i++)
{
if
(stock[i]
>
500)
high_stock++;
}
A.2B.3C.4D.5以下關(guān)于指針的說法,正確的是()A.指針變量存儲(chǔ)的是變量的值B.空指針(NULL)可以直接訪問C.指向“農(nóng)產(chǎn)品結(jié)構(gòu)體”的指針需與結(jié)構(gòu)體類型匹配D.指針加上一個(gè)整數(shù)表示移動(dòng)指定個(gè)數(shù)的變量定義“charcrop_name[]="rice";”(農(nóng)作物名稱:水稻),則數(shù)組crop_name占用的字節(jié)數(shù)為()A.4B.5C.6D.不確定執(zhí)行以下代碼后,輸出結(jié)果為()(計(jì)算農(nóng)產(chǎn)品運(yùn)輸損耗,損耗率5%,原重量1200公斤)
#include
<stdio.h>
void
calc_loss(float
weight)
{
weight
=
0.05;
//
5%運(yùn)輸損耗
}
int
main()
{
float
original
=
1200.0;
//
原重量(公斤)
calc_loss(&original);
printf("%.1f",
original);
return
0;
}
A.1200.0B.60.0C.0.05D.不確定以下關(guān)于C語言預(yù)處理命令的說法,正確的是()A.#define
MAX_CROP
40可定義“最大農(nóng)作物種類數(shù)”常量B.#include命令僅能引入系統(tǒng)頭文件C.預(yù)處理命令以“;”結(jié)尾D.#ifdef用于判斷變量是否被賦值以下代碼中,存在語法錯(cuò)誤的是()A.floatyield[5]={520.5,480.0,550.5,490.0,510.5};printf("%.1f",yield[4]);B.intp=NULL;p=10;C.structCrop{charid[10];floatyield;floatprice;};structCropc={"C202501",520.5,3.2};D.FILEfp=fopen("crop.txt","r");if(fp==NULL)printf("文件打開失敗!");二、填空題(共5題,每題3分,滿分15分)將答案填寫在答題卡對應(yīng)位置,答案需完整、準(zhǔn)確,多余符號或格式錯(cuò)誤不得分。C語言中,定義“存儲(chǔ)8個(gè)農(nóng)產(chǎn)品庫存重量的單精度浮點(diǎn)型數(shù)組,初始值為480.5、520.0、490.5、550.0、470.0、510.5、460.0、530.5”(單位:公斤)的語句為:______。執(zhí)行循環(huán)“inti=1,total_seedling=0;while(i<=18){total_seedling+=800;i++;}”后,total_seedling的值為______(計(jì)算18周的育苗基地總育苗數(shù),每周800株)。函數(shù)調(diào)用時(shí),實(shí)參和形參之間的默認(rèn)參數(shù)傳遞方式是______傳遞;若要修改實(shí)參中的“農(nóng)產(chǎn)品庫存重量”值,需采用______傳遞。打開名為“crop_stock.txt”的文本文件用于追加寫入農(nóng)產(chǎn)品庫存記錄,應(yīng)使用語句:FILEfp;fp=fopen("crop_stock.txt","______");定義一個(gè)指向結(jié)構(gòu)體ForestEquip(存儲(chǔ)林業(yè)設(shè)備信息)的指針p:structForestEquip______p;三、程序閱讀題(共4題,每題5分,滿分20分)閱讀以下代碼,分析程序運(yùn)行后的輸出結(jié)果,將完整輸出內(nèi)容填寫在答題卡對應(yīng)位置(多輸出、少輸出、格式錯(cuò)誤均不得分)。分析以下代碼的輸出結(jié)果(計(jì)算6塊農(nóng)田的平均畝產(chǎn)量):
#include
<stdio.h>
int
main()
{
float
crop_yield[]
=
{520.5,
480.0,
550.5,
490.0,
510.5,
470.0};
//
6塊農(nóng)田畝產(chǎn)量(公斤)
float
total
=
0.0,
avg;
for
(int
i=0;
i<6;
i++)
{
total
+=
crop_yield[i];
}
avg
=
total
/
6;
printf("6塊農(nóng)田平均畝產(chǎn)量:%.1f公斤",
avg);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(統(tǒng)計(jì)種子發(fā)芽率大于85%的批次個(gè)數(shù)):
#include
<stdio.h>
int
main()
{
int
count
=
0;
float
germination[]
=
{88.5,
82.0,
86.5,
80.5,
90.0,
84.5,
89.0,
87.5};
//
8批種子發(fā)芽率(%)
int
i
=
0;
do
{
if(germination[i]
>
85)
{
count++;
}
i++;
}
while(i
<
8);
printf("發(fā)芽率大于85%的批次個(gè)數(shù):%d",
count);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(遞歸計(jì)算n的階乘,n=4,用于統(tǒng)計(jì)4種農(nóng)作物的輪作方式數(shù)):
#include
<stdio.h>
int
factorial(int
n)
{
if
(n
==
1)
return
1;
else
return
n
factorial(n-1);
}
int
main()
{
int
res
=
factorial(4);
printf("4種農(nóng)作物的輪作方式數(shù):%d",
res);
return
0;
}
輸出結(jié)果:______分析以下代碼的輸出結(jié)果(結(jié)構(gòu)體存儲(chǔ)林業(yè)設(shè)備信息并修改維護(hù)狀態(tài)):
#include
<stdio.h>
struct
ForestEquip
{
char
id[10];
//
設(shè)備ID
char
type[20];
//
設(shè)備類型(如:伐木機(jī)、灌溉泵)
int
use_years;
//
使用年限(年)
int
is_maintained;//
維護(hù)狀態(tài)(1=已維護(hù),0=待維護(hù))
};
int
main()
{
struct
ForestEquip
e
=
{"E202501",
"灌溉泵",
3,
0};
e.use_years
+=
1;
//
使用年限增加1年
e.is_maintained
=
1;
//
標(biāo)記為已維護(hù)
printf("設(shè)備ID:%s,類型:%s,使用年限:%d年,維護(hù)狀態(tài):%s",
e.id,
e.type,
e.use_years,
(e.is_maintained==1)?"已維護(hù)":"待維護(hù)");
return
0;
}
輸出結(jié)果:______四、程序填空題(共2題,每空3分,滿分15分)請?jiān)诔绦虻臋M線處填入適當(dāng)?shù)膬?nèi)容,使程序完整并能正確運(yùn)行。以下程序用于對8塊農(nóng)田的畝產(chǎn)量進(jìn)行升序排序(冒泡排序法),請補(bǔ)全代碼。#include
<stdio.h>
int
main()
{
float
crop_yield[8]
=
{520.5,
480.0,
550.5,
490.0,
510.5,
470.0,
460.0,
530.5};
//
8塊農(nóng)田畝產(chǎn)量
int
i,
j;
float
temp;
for(i=0;
i<7;
i++)
{
for(j=0;
j<_______;
j++)
{
//
內(nèi)層循環(huán)控制未排序元素
if(crop_yield[j]
>
crop_yield[j+1])
{
//
升序排序,前元素大于后元素則交換
temp
=
crop_yield[j];
crop_yield[j]
=
crop_yield[j+1];
crop_yield[j+1]
=
temp;
}
}
}
//
輸出排序結(jié)果
printf("升序排序后的畝產(chǎn)量:");
for(i=0;
i<8;
i++)
{
printf("%.1f
",
crop_yield[i]);
}
return
0;
}以下程序用于統(tǒng)計(jì)文本文件“seed_germination.txt”中發(fā)芽率大于90%的種子批次個(gè)數(shù)(文件中每行存儲(chǔ)1批種子發(fā)芽率,如“88.5”?“92.0”),請補(bǔ)全代碼。#include
<stdio.h>
#include
<stdlib.h>
int
count_high_germination()
{
FILE
fp;
int
count
=
0;
float
germination;
//
以只讀方式打開文件
fp
=
fopen("seed_germination.txt",
"_______");
if(fp
==
NULL)
{
printf("文件打開失??!");
exit(1);
//
退出程序
}
//
循環(huán)讀取每批種子發(fā)芽率并統(tǒng)計(jì)
while(_______
==
1)
{
//
判斷是否成功讀取數(shù)據(jù)
if
(germination
>
90)
count++;
}
fclose(fp);
//
關(guān)閉文件
return
count;
}
int
main()
{
int
total
=
count_high_germination();
printf("發(fā)芽率大于90%的種子批次個(gè)數(shù):%d",
total);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- “夢想靠岸”招商銀行長春分行2025春季校園招聘筆試歷年典型考題及考點(diǎn)剖析附帶答案詳解
- 2026年及未來5年市場數(shù)據(jù)中國小程序行業(yè)發(fā)展前景預(yù)測及投資方向研究報(bào)告
- 2026年及未來5年市場數(shù)據(jù)中國五價(jià)輪狀病毒疫苗行業(yè)市場調(diào)查研究及發(fā)展趨勢預(yù)測報(bào)告
- 2026年及未來5年市場數(shù)據(jù)中國桂皮油行業(yè)市場調(diào)查研究及發(fā)展趨勢預(yù)測報(bào)告
- 2026年及未來5年市場數(shù)據(jù)中國MSP軟件行業(yè)發(fā)展運(yùn)行現(xiàn)狀及發(fā)展趨勢預(yù)測報(bào)告
- 2026年及未來5年市場數(shù)據(jù)中國物流供應(yīng)鏈行業(yè)市場深度研究及投資規(guī)劃建議報(bào)告
- “全民國家安全教育日”知識(shí)測試題(競賽題)及答案
- 2026廣東廣州銀行選聘考試參考試題及答案解析
- 2026廣東廣州花都白云機(jī)場安檢防爆人員招聘90人筆試備考試題及答案解析
- 2026云南保山市昌寧縣財(cái)政局招聘公益性崗位人員5人考試參考試題及答案解析
- 胸外科手術(shù)圍手術(shù)期的護(hù)理
- 測繪公司創(chuàng)新技術(shù)應(yīng)用及成果
- 全球著名空港產(chǎn)業(yè)發(fā)展案例解析
- 科技領(lǐng)域安全風(fēng)險(xiǎn)評估及保障措施
- 鍋爐水質(zhì)化驗(yàn)記錄表(完整版)
- 鋼筋工勞務(wù)合同
- 《水利工程白蟻燈光誘殺技術(shù)導(dǎo)則》編制說明
- 倉儲(chǔ)物流行業(yè)普洛斯分析報(bào)告
- DB33T 2188.3-2019 大型賽會(huì)志愿服務(wù)崗位規(guī)范 第3部分:抵離迎送志愿服務(wù)
- 二級煙草專賣管理師理論考試題庫
- DB36T 1342-2020 兒童福利機(jī)構(gòu) 3歲~15歲康教融合服務(wù)規(guī)范
評論
0/150
提交評論