《C语言程序设计基础》教材参考答案-20140211

《C语言程序设计基础》教材参考答案

do{ i++; 5.有以下程序段 int k=0;

do{

s=s*i; s=s*i; i++; }while(i<=10);

}while(i<=10);

while(k=1) k++;

while循环执行的次数是( )。

A.无限次

B.1次

C.语法错误,不能执行

D.一次也不执行

二.填空题

1.若输入字符串:abcde<回车>,则以下while循环体将执行 次。 while((ch=getchar())==’e’) printf(\*\); 2.以下程序执行后的输出结果是 。 #include

void main() { int i;

for(i=0;i<3;i++)

switch(i)

{ case 1: printf(\ case 2: printf(\ default: printf(\ } }

3.下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数,请填空。 #include

void main() { int i,j;

for(i=0; ;i++) { j=i*10+6;

if( ) continue; printf(\ } }

4.有以下程序 #include

void main()

36

《C语言程序设计基础》教材参考答案

{ int x=23; do

{ printf(\

}while(!x);

}

该程序执行的结果为 。

5.以下程序的功能是计算1-3+5-7+…-99+101的值,请将程序补充完整。 #include

void main() {

int i,t=1,s=0; for(i=1;i<=101;i+=2) {

s=s+ ; ; }

printf(\ }

*******************************************************************************

习题答案:

一.选择题

1.B

2.B

3.B

4.C

5.A

二.填空题

1.0

2.011122

3.i<10 j%3!=0 4.23

5.s*t t=-t

*******************************************************************************

四.实训指导 实训指导【1】

1. 某选秀节目有十个评委,选手的得分为十个评委评分后的平均分,试编程实现评分功能,

即输入评委给出的10个分数,输出平均分。(要求:分别用三种循环语句完成)

37

《C语言程序设计基础》教材参考答案

(1)用while语句完成 #include void main() { }

(2)用do-while语句完成 #include void main() { }

(3)用for语句完成 #include void main() { }

38

int i=1;

double score,sum=0,ave; { }

ave=sum/10;

printf(\选手最终得分为:%.2lf.\\n\

printf(\请输入第%d位评委分数:\scanf(\sum+=score;

while(i<=10)

i++;

int i=1;

double score,sum=0,ave; {

printf(\请输入第%d位评委分数:\scanf(\sum+=score;

do

i++; }while(i<=10); ave=sum/10;

printf(\选手最终得分为:%.2lf.\\n\

int i;

double score,sum=0,ave; { }

ave=sum/10;

printf(\选手最终得分为:%.2lf.\\n\

printf(\请输入第%d位评委分数:\scanf(\sum+=score;

for(i=1;i<=10;i++)

《C语言程序设计基础》教材参考答案

2. 某黑夜一司机碰伤行人之后落荒而逃,经警方调查,有三个目击者。甲说:车牌号的

前两位相同;乙说:车牌号的后两位加起来等于6;丙说:车牌号是一个四位数并且能被2整除。根据上述线索,编程列出可能的车牌号。 #include void main() { }

3.输出2000~2050年中所有的闰年,要求每行输出四个年号。

#include void main() { }

4.(课外完成)完成【引例】中的题目。

#include #include

#include //getch()函数 #include //exit()函数 void main() {

double a,b,c,area,s; char ch; while(1)

39

int a1,a2,a3,a4,a; { }

a1=a/1000; a2=a/100; a3=a/10; a4=a;

if(a1==a2&&(a3+a4)==6&&a4%2==0)

printf(\可能的车牌号为:%d.\\n\

for(a=1000;a<10000;a++)

int i=0,year;

printf(\年中所有的闰年为:\\n\{ }

if(year%4==0&&year0!=0||year@0==0)

{ }

printf(\i++; if(i%4==0)

putchar('\\n');

for(year=2000;year<=2050;year++)

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4