- 相關(guān)推薦
2017全國(guó)計(jì)算機(jī)二級(jí)C考試真題
【2017全國(guó)計(jì)算機(jī)二級(jí)C考試真題】
一、改錯(cuò)題
函數(shù)fun的功能是:將一副撲克牌編號(hào)為1,2,3...53,54,以某種特定的方式洗牌,這種方式是將這副牌分成兩半,然后將它們交叉,并始終保持編號(hào)為1的牌在最上方,譬如第一次這樣洗牌后的結(jié)果為:1,28,2,29,...53,27,54。兩次洗牌后的'結(jié)果為:1,41,28,15,2,42...53,40,27,14,54。
程序的功能是:輸出經(jīng)過(guò)n次這樣洗牌后的結(jié)果。
請(qǐng)?jiān)诔绦虻南聞澗處填入正確的內(nèi)容,并把下劃線刪除,使程序得出正確的結(jié)果。
注意:源程序存放在考生文件夾下的BLANK1.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
#include
void fun( int a[55], int n )
{ int i, k ;
int __[1]__[55];
for (i=0; i
{ for (k=1; k<= 27; k++)
{ b[ 2*k-1 ] = a[k];
b[ __[2]___* k ] = a[k+27];
}
for (k=1; k<=54; k++)
a[k]=___(3)___;
}
}
main( )
{ int m, a[55],i;
for (i=1; i<55; i++) a[i]= i;
printf("請(qǐng)輸入洗牌次數(shù) : "); scanf("%d", &m);
fun(a, m);
for (i=1; i<55; i++) printf("%d,",a[i]);
printf(" ");
}
【參考答案】
(1)b
(2)2
(3)b[k]
二、改錯(cuò)題
給定程序MODI1.C中,函數(shù)fun的功能是:判斷輸入的任何一個(gè)正整數(shù)n,是否等于某個(gè)連續(xù)正整數(shù)序列之和。若是,則輸出所有可能的序列。否則輸出“不能分解”。
例如:當(dāng)輸入100時(shí),輸出:100=9+10+11+12+13+14+15+16
100=18+19+20+21+22
請(qǐng)改正函數(shù)fun中指定部位的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:不要改動(dòng)mam函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
#include
void fun( int n )
{ int j, b, c, m, flag=0;
for (b=1; b<=n/2; b++) {
n = m;
c = b;
while (m !=0 && m>=c) {
m = m - c; c++
}
if ( m!=0)
{ printf("%d=", n);
for (j=b; j
printf("%d ", j);
flag=1;
}
}
if(flag==0)
printf("不能分解 ");
}
main()
{ int n;
printf("請(qǐng)輸入一個(gè)整數(shù) : "); scanf("%d", &n);
fun(n);
}
參考答案
(1) m=n
(2) m=m-c; c++;
(3)if(m==0)
三、編程題
請(qǐng)編寫(xiě)函數(shù)fun,其功能是:判斷t所指字符串中的字母是否由連續(xù)遞增字母序列組成(字符串長(zhǎng)度大于等于2)。例如字符串:uvwxyz滿足要求;而字符串:uvxwyz不滿足要求。
注意:部分源程序存在PROG1.C中,請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun指定的部位填入所編寫(xiě)的若干語(yǔ)句。
#include
#include
void NONO();
int fun( char *t )
{
int i=0;
for(i=0;t[i+1]!=' 主站蜘蛛池模板: 安阳县| 六盘水市| 宣城市| 安远县| 永德县| 灯塔市| 东光县| 界首市| 成都市| 两当县| 长汀县| 安福县| 津市市| 丽江市| 亚东县| 台东市| 睢宁县| 洛扎县| 霍城县| 银川市| 错那县| 尉氏县| 密山市| 土默特右旗| 莫力| 江津市| 潜江市| 太和县| 鲜城| 会宁县| 甘肃省| 南漳县| 缙云县| 斗六市| 南雄市| 金坛市| 云阳县| 高淳县| 中阳县| 遵义县| 内乡县|