2012年 - 秋 - 浙江省高等学校(C语言)

更新时间:2023-12-29 06:23:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、程序阅读与填空(24小题,每小题3分,共72分)

1. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】

输入一个正整数n,再输入n个整数,判断它们是否按从大到小的次序排列。 运行示例: Enter n:6

Enter 6 integers:1 3 6 40 12 50 Sorted:No Enter n:5

Enter 5 integers:10 8 7 3 1 Sorted:Yes 【程序】

#include void main() { intcur,i,n,pre; printf(\scanf(\

(1)

scanf(\ for(i=1;i<n;i++){ (2)

if(cur>pre) (3) ; (4) }

if(i>=n) printf(\else printf(\}

【供选择的答案】 (1)

A、printf(\B、printf(\C、printf(\D、printf(\(2)

A、scanf(\ B、;

C、scanf(\ D、scanf(\(3)

A、cur=n B、break C、pre=n D、continue (4)

A、pre=cur; B、cur=0 C、cur=pre D、pre=0

2. 输出10到99之间各位数字之和为12的所有整数,要求定义和调用函数sumdigit(n)计算

整数n的各位数字之和。 运行示例:

39 48 57 66 75 84 93

【程序】

#include main() {

int i; intsumdigit(int n); for(i=10;i<=99;i++)

if( (5) ) printf(\printf(\}

intsumdigit(int n) { int sum; (6) do{ (7) (8)

}while(n!=0); return sum; }

【供选择的答案】 (5)

A、sumdigit(i)==12 B、sumdigit(i)==i C、sumdigit(n)==n D、sumdigit(n)==12 (6)

A、sum=sum ; B、sum=0; C、; D、sum=n; (7)

A、sum=0; B、sum=sum+n; C、sum=sum+n; D、sum=sum+n/10; (8)

A、n=n*10 B、n=n; C、n=n-10 D、n=n/10;

3. 输入一个字符串(少于80个字符),将其现两端分别加上括号后组成一个新字符串。要求定义和调用函数cat(s,t),该函数将字符串t连接到字符串s。 运行示例:

Enter a string:Hello After:(Hello)

【程序】

#include

void cat(char *s,char *t) { inti,j; i=0;

while(s[i]!='\\0') i++;

(9)

while(t[j]!='\\0'){ (10) j++; }

(11) }

main() {

char s[80]=\printf(\gets(t); (12) cat(s,\

printf(\puts(s); }

【供选择的答案】 (9)

A、j=0; B、s[i]='\\0'; C、i--;j=0; D、j=i; (10)

A、s[i]=t[j]; B、t[j]=s[i]; C、s[i+j]=t[j] ; D、t[i]=s[j]; (11)

A、t[j]= '\\0'; B、s[i+j]= '\\0'; C、s[j]= '\\0'; D、t[i]= '\\0'; (12)

A、cat(\ B、cat(t,t); C、cat(\ D、cat(s,t) ;

4. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】

#include void f1(int n)

{

while(n--)

printf(\printf(\}

int f2(int n) {

if(n<=2) return 1;

else return f2(n-1)+f2(n-2); }

main() {

int a=4;

printf(\printf(\f1(3);

printf(\}

【问题】

(13)程序运行时,第1行输出(13)。 A、0 1 B、1 0 C、0 4 D、1 10 (14)程序运行时,第2行输出(14)。 A、1 4 B、0 5 C、0 4 D、0 1 (15)程序运行时,第3行输出(15)。 A、3 2 1 0 B、3 1 C、2 1 0 -1 D、2 1 0 (16)程序运行时,第4行输出(16)。 A、3 4 B、2 3 C、5 8 D、3 5

5. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】 程序1

#include main() {

inti,j,n=4;

for(i=1;i

程序2

#include int f(int n) {

staticint k=1; k++;

return 2*n+k; }

main() {

printf(\printf(\}

【问题】

(17)程序1运行时,第1行输出(17)。

A、***** B、**** C、** D、* (18)程序1运行时,第2行输出(18)。

A、***** B、**** C、** D、* (19)程序2运行时,第1行输出(19)。

A、26 B、10 C、22 D、6 (20)程序2运行时,第2行输出(20)。

A、26 B、7 C、22 D、6

6. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】

#include main() { inti,j;

char *s[4]={\for(i=0;i<4;i++) for(j=i;j<4-i;j++) printf(\}

【问题】

(21)程序运行时,第1行输出(21)。 A、three B、five C、four D、seven (22)程序运行时,第2行输出(22)。

A、our B、hree C、even D、ive (23)程序运行时,第3行输出(23)。 A、ve B、ree C、ur D、ven (24)程序运行时,第4行输出(24)。 A、n B、r C、e D、en

二、程序编写(每题14分,共28分) 1. 输入一个正整数n(1≤n≤6),再输入一个n行n列的矩阵,统计并输出该矩阵中非零元素的数量。 2.

(1)定义函数power(x,n)计算x的n次幂(即????),函数返回值类型是double。

(2)定义函数main(),输入正整数n,计算并输出下列算式的值。要求调用函数power(x,n)计算x的n次幂。

s=2+22+23+?+2??

二、程序编写(每题14分,共28分) 1. 输入一个正整数n(1≤n≤6),再输入一个n行n列的矩阵,统计并输出该矩阵中非零元素的数量。 2.

(1)定义函数power(x,n)计算x的n次幂(即????),函数返回值类型是double。

(2)定义函数main(),输入正整数n,计算并输出下列算式的值。要求调用函数power(x,n)计算x的n次幂。

s=2+22+23+?+2??

本文来源:https://www.bwwdw.com/article/r1qx.html

Top