第 1 頁:程序填空題 |
第 2 頁:程序改錯(cuò)題 |
第 3 頁:程序設(shè)計(jì)題 |
第 4 頁:參考答案 |
上機(jī)考試試題答案與解析
一、程序填空題
【1】b!=0【2】a%b[3]numl*num2/a
【解析】由程序可知,變量b中存放兩個(gè)正整數(shù)中較小
的那個(gè)數(shù),while循環(huán)求兩個(gè)正整數(shù)的公約數(shù)。因此【1】填“b!=0”.【2】填“a%b”;【3】處是求兩個(gè)正整數(shù)最小公倍數(shù)的表達(dá)式,因此【3】填“num1*num2/a”。
二、程序改錯(cuò)題
(1)錯(cuò)誤:void proc(long s,long t)
正確:void proc(long s,lon9*t)
(2)錯(cuò)誤:while(s<0)
正確:while(s>0)
【解析】從主函數(shù)中實(shí)參可知,形參的第二個(gè)變量是長整型的指針變量。因此“void proc(long s,long t)”應(yīng)改為“void proc(long s,long*t)”;要從低位開始取出長整型變量s中偶數(shù)位上的數(shù),每次變量S要除以100,然后判斷其是否大于0來決定是否要繼續(xù),因此“while(s<0)”應(yīng)改為“while(s>0)”。
三、程序設(shè)計(jì)題
void proc(char*str,chart[])
{
int i,j=0;
for(i=0;str[i]!=’\0 ’;i++)//從數(shù)組的第一個(gè)
元素開始,到其最后一個(gè)
{if(i%2==0&&str[i]%2!=0) //下標(biāo)為偶數(shù)、
同時(shí)ASCII碼值為奇數(shù)的字符
t[j++]=str[i];) //如果成立,則把它放到t數(shù)
組中
t[j]=’\0 ’; //字符串結(jié)束標(biāo)志為’\0’
}
【解析】題目中要求將字符串str中下標(biāo)為偶數(shù),同時(shí)ASCII碼值為奇數(shù)的字符放在數(shù)組t中。首先,需要檢查字符串str中下標(biāo)為偶數(shù)的字符的ASCII碼值是否為奇數(shù),將符合要求的字符放在數(shù)組t中。最后,為新的字符串?dāng)?shù)組添加結(jié)束符。
相關(guān)推薦:
2014年計(jì)算機(jī)二級(jí)C語言考試上機(jī)沖刺試題及答案集
2014年計(jì)算機(jī)二級(jí)考試C語言考前預(yù)測(cè)選擇題匯總
考試吧考后首發(fā)2014年3月計(jì)算機(jī)等考真題及答案通
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |