c教材习题

发布时间 : 星期四 文章c教材习题更新完毕开始阅读

if (x<0.0) y=0.0;

else if(x<10.0) y=1.0/x; else y= l.0; printf(\ }

A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000 8.以下语法不正确的语句是___________。 A) if(x>y);

B) if(x<y){x++;y++;}

C) if(x=y)&&(x!=0) x+=y;

D) if(x!=y) scanf (\&x);else scanf(\; 9.以下程序输出结果为_________。 main()

{int x=2,y=-1,z=2; if(x<y)

if(y<0) z=0; else z+=1; printf(\,z); }

A) 3 B) 2 C) 1 D) 0 10.若输入字符B,以下程序的运行结果为___________。 main()

{ char grade;

scanf(\,&grade); switch(grade)

{ case 'A': printf(\; case 'B':

case 'C': printf(\; case 'D': printf(\; default: printf(\; }

A) >=85 B) >=60 C) >=60<60error D) error 11.有如下程序段: int score=5;

switch(score)

{ case 5: printf(\ good!\); case 4: printf(\!\); default : printf(\ error ! \

}

程序输出结果为_ 。

A) Very good! B) Good!

C) data error! D) Very good!Good! data error! 12.下列关于 switch语句和 break语句的说法中,只有___________是正确的。

A) break是 switch语句中的一部分。

B) 在switch语句中可以根据需要使用或不使用break语句。 C) 在switch语句中必须使用break语句。 D) 以上三种说法有两个是正确的。

二、填空题

1.设a=1, b=2, c=3,写出下列关系表达式的值 (1)(a(a=c 。 2.设a=1, b=2, c=3, d=4写出下列逻辑表达式的值 (1)a && b && c 。 (2)a || !b || !c 。 (3)a !=11 && b<4 。 3. 当a=1, b=2, c=3时执行下面语句后,a,b,c的值分别为_______、_______、________。 if(a>c)

b=c;a=c; c=b;

4.以下程序实现将两个数从大到小输出。 main()

{ float a,b,_____;

scanf(______,&a,&b); if (a

{ t=a ;

__________; b=t;

}

printf(\,%5.2f\\n\,a, b); } 三、编程题

1.输入一个整数,判别它是奇数还是偶数。

2.输入一个字符,如果输入的是大写字母,则将它转换成小写字母后输出,否则按原样输出。

3.输入一个考试分数,如果分数是60分以下输出“不及格”,90分以上输出“优秀”,否则输出“合格”。

4.输入员工的工作时间,计算并输出该员工的工资。公司规定每个雇员40小时以内的报酬为10.00美元/小时,超出40小时以外的按1.5工资付酬。

5.输入一个考试分数,要求输出成绩等级。如果不在0~100之间,显示出错信息:“数据错误”, 60分以下输出“不及格”, 60~69之间输出“及格”,70~79之间输出“中”,80~89之间输出“良”,90分以上输出“优”。 6.根据分段函数y=f(x),输入x,输出y的值。

?2x3?1?2?xf(x)???x?3x?2?x??1?1?x?00?x?1x?1

7.输入年、月、日三个整数值,计算并输出这一天是该年的第几天。

8.输入一个字符,判断输入字符的种类并输出,字符分为空格、数字字符、英文字母和其他字符。

9.根据某人的体重指数判断他的体重是属于何种类型,其中体重指数的计算公式为:体重指数t=体重w/(身高h)2 (其中体重w以千克为单位,身高h以米为单位)。而体重指数对肥胖程度的划分是:当t小于18时为体重偏轻;当18≤t<25时为体重正常;当25≤t<27时为体重超重;当t≥27时为肥胖。

第5章 循环结构程序设计

一、选择题

1. 设有如下程序段,则输出结果为k=( )。 int k=0,a;

for (a=1;a<=1000;a++) k=k+1; printf(\

A) 1 B) 1001 C) 1000 D) 溢出 2. 设有如下程序段,则最后输出的a=( )。 int a;

for (a=1;a<=1000;a++) printf(\

A) 1 B) 1001 C) 1000 D) 溢出 3. 设有如下程序段,则输出结果为a=( )。 int a;

for (a=1;a<=1000;a++) ; printf(\

A) 1 B) 1001 C) 1000 D) 溢出 4. 设有如下程序段,则输出结果为k=( )。 int k=0,a;

for (a=1;a<=1000;a++) {a=a+1;k=k+1;} printf(\

A) 1000 B) 499 C) 500 D) 501

5. 循环语句for(int i=1,j=10; i==j; i++,j--); 的循环次数是( )

A) 0 B) 5 C) 10 D) 无限 6. 语句for(x=0,y=0;y!=1&&x<4;x++); 是( )。

A)无限循环 B) 循环次数不定 C) 循环4次 D)循环3次

7. 设有程序段:int k=10;while(k=0)k=k- 1;则下面叙述正确的是( )。 A)while循环执行10次 B) 循环是无限循环

C)循环体语句执行一次 D)循环体语句一次也不执行 8. 与语句while(!x);等价的语句是( )。 A) while(x= =0); B)while(x!=1);

C)while(x!=0); D)while (x= =1); 9. 设有如下程序段,程序运行结果应为( )。 #include void main() { int i,j,k;

for(i=1;i<=2;i++) for(j=1;j<=2;j++) printf(\ } (A) (B)

i=1 j=1 i=1 j=1 i=1 j=2 i=2 j=1 i=2 j=1 i=1 j=2 i=2 j=2 i=2 j=2 (C) (D)

i=1 j=1 i=1 j=2 i=2 j=2 i=2 j=2

10. 下述有关break语句的描述中,错误的是( )。 A) break语句用于循环体内,它将结束该循环

B) break语句用于switch语句,它结束该switch语句 C) break语句用于if语句的内嵌语句内,它结束该if语句 D) break语句在一个循环体内可使用多次

11. 下面关于循环体的描述中,错误的是( )。 A) 循环体内可以包含有循环语句

B) 循环体内必须出现break语句和continue语句 C) 循环体内可以出现选择语句 D) 循环体可以是空语句 二、编程题

1. 用for循环语句编程输出1—20之间的所有整数,两数之间以空格分隔。 2. 用for循环语句编程输出20—1之间的所有整数,两数之间以空格分隔。

3. 用for循环语句编程输出A—Z,之间的所有字符,两字母之间以空格分隔,要求一行输出8个字符。

4. 输出100~200之间所有能被3和7整除的数(每行输出4个数)。

5. 输出1至1000之间所有满足用3除余2、用5除余3、用7除余2的数(要求每行只输出5个数)。

6. 先读入一个正整数n,然后计算并显示前n个偶数的和。例如n为5,则求2+4+6+8+10的值,即sum=30。

7. 计算 S=1+1/2+1/3+1/4+...+1/200的值并输出。 8. 计算1-3+5-7+?-99+101的值。 9. 输入6个整数并显示其平均值。

10. 输出Fibonacci数列的前几项,直到该项的值大于10000为止(每行输出5项)。fobinacci数列为1,1,2,3,5,8,13,21,34,…。即第一项和第二项为1,其他为前两项之和。

11. 输出10000至99999中所有的回文数(回文数是指从左到右读与从右到左读都一样的正整数,如11、22、3443、94249等)。

联系合同范文客服:xxxxx#qq.com(#替换为@)