(3)a+b==c。
(4)a+b>=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()
{floata,b,_____;
scanf(______,&a,&b);
if(a
{t=a;
__________;
b=t;
}
printf("%5.2f,%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的值。
7.输入年、月、日三个整数值,计算并输出这一天是该年的第几天。
8.输入一个字符,判断输入字符的种类并输出,字符分为空格、数字字符、英文字母和其他字符。
9.根据某人的体重指数判断他的体重是属于何种类型,其中体重指数的计算公式为:
体重指数t=体重w/(身高h)2(其中体重w以千克为单位,身高h以米为单位)。
而体重指数对肥胖程度的划分是:
当t小于18时为体重偏轻;当18≤t<25时为体重正常;当25≤t<27时为体重超重;当t≥27时为肥胖。
第5章循环结构程序设计
一、选择题
1.设有如下程序段,则输出结果为k=()。
intk=0,a;
for(a=1;a<=1000;a++)k=k+1;
printf("k=%d",k);
A)1B)1001C)1000D)溢出
2.设有如下程序段,则最后输出的a=()。
inta;
for(a=1;a<=1000;a++)printf("a=%d",a);
A)1B)1001C)1000D)溢出
3.设有如下程序段,则输出结果为a=()。
inta;
for(a=1;a<=1000;a++);
printf("a=%d",a);
A)1B)1001C)1000D)溢出
4.设有如下程序段,则输出结果为k=()。
intk=0,a;
for(a=1;a<=1000;a++){a=a+1;k=k+1;}
printf("k=%d",k);
A)1000B)499C)500D)501
5.循环语句for(inti=1,j=10;i==j;i++,j--);的循环次数是()
A)0B)5C)10D)无限
6.语句for(x=0,y=0;y!
=1&&x<4;x++);是()。
A)无限循环B)循环次数不定C)循环4次D)循环3次
7.设有程序段:
intk=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
voidmain()
{inti,j,k;
for(i=1;i<=2;i++)
for(j=1;j<=2;j++)
printf("i=%d\tj=%d\t\n",i,j);
}
(A)(B)
i=1j=1i=1j=1
i=1j=2i=2j=1
i=2j=1i=1j=2
i=2j=2i=2j=2
(C)(D)
i=1j=1i=1j=2
i=2j=2i=2j=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等)。
12.找出所有“水仙花数”。
所谓的“水仙花数”是指一个三位整数,其各位数字立方和等于该数本身。
例如,153是水仙花数,因为153=13+53+33。
13.输出1至100之间所有各位数之积大于各位数之和的数,例如23,因为2*3>2+3。
14.输入一个整数,计算该整数的位数及各位之和。
15.一个正整数如果恰好等于它的因子之和,这个数就称为“完数”。
例如,6的因子为1、2、3,且6=1+2+3,因此6是“完数”。
输入一个数,判断该数是否为完数。
16.输出“九九乘法表”。
17.输出如下图形:
A
BBB
CCCCC
DDDDDDD
18.输出如下图案:
*
***
*****
*******
*****
***
*
19.找出10000之内的所有完数。
20.找出500内的所有素数。
21.有一分数序列2/1,3/2,5/3,8/5,13/8,21/13,……求出这个数列的前20项之和。
22.计算100至999之间有多少个数其各位数字之和是5。
23.编写程序,输出1500至3000年间的所有闰年,要求每行输出8个数据。
24.求一个二位整数AB(其中AB分别为两位整数的十位和个位),使AB-BA=45成立。
25.36块砖,36人搬。
男搬4,女搬3,两个小孩抬一砖。
一次刚好搬完,问男、女、小孩各多少人?
26.编程求解马克思手稿中的数学题:
有30个人,在一家饭馆里吃饭共花了50先令,每个男人各花3先令,每个女人各花2先令,每个小孩各花1先令,问男人、女人和小孩各有几人?
第6章函数
二、选择题
1.C语言程序由函数组成。
正确的说法是__________。
A)主函数写在必须写在其他函数之前,函数内可以嵌套定义函数
B)主函数可以写在其他函数之后,函数内不可以嵌套定义函数
C)主函数必须写在其他函数之前,函数内不可以嵌套定义函数
D)主函数必须在写其他函数之后,函数内可以嵌套定义函数
2.一个C语言程序的基本组成单位是__________。
A)主程序B)子程序C)函数D)过程
3.以下说法正确的是__________。
A)C语言程序总是从第一个定义的函数开始执行
B)C语言程序中,被调用的函数必须在main()函数中定义
C)C语言程序总是从主函数main()开始执行。
D)C程序中的main()函数必须放在程序的开始处
4.已知函数fun类型为void,则void的含义是__________。
A)执行函数fun后,函数没有返回值B)执行函数fun后,可以返回任意类型的值
C)执行函数fun后,函数不再返回D)以上三个答案都是错误的
5.下列对C语言函数的描述中,正确的是__________。
A)在C语言中,调用函数时只能将实参的值传递给形参,形参的值不能传递给实参
B)函数必须有返回值
C)C语言函数既可以嵌套定义又可以递归调用
D)C程序中有调用关系的所有函数都必须放在同一源程序文件中
6.以下叙述中错误的是__________。
A)函数形参是存储类型为自动类型的局部变量
B)外部变量的缺省存储类别是自动的。
C)在调用函数时,实参和对应形参在类型上只需赋值兼容
D)函数中的自动变量可以赋初值,每调用一次赋一次初值
7.C语言中的函数__________。
A)不可以嵌套调用B)可以嵌套调用,但不能递归调用
C)可以嵌套定义D)嵌套调用和递归调用均可
8.C语言中函数返回值类型由_________决定。
A)调用该函数的主调函数类型B)函数参数类型
C)return语句中的表达式类型D)定义函数时指定的函数类型
9.C语言规定,调用一个函数,实参与形参之间的数据传递方式是________。
A)由实参传给形参,并由形参传回来给实参B)按地址传递
C)由用户指定方式传递D)按值传递
10.下列叙述错误的是__________。
A)形参是局部变量
B)复合语句中定义的变量只在该复合语句中有效
C)主函数中定义的变量在整个程序中都有效
D)其他函数中定义的变量在主函数中不能使用
11.若函数类型和return语句中的表达式类型不一致,则__________。
A)运行时出现不确定结果B)返回值的类型以函数类型为准
C)编译时出错D)返回值的类型以return语句中表达式的类型为准
12.下面函数定义正确的是__________。
A)doublefun(doubleu,v)