|
江南大学现代远程教育 第一阶段练习题
考试科目:《计算机语言(C)》第1章至第6章(总分100分)
学习中心(教学点) 批次: 层次:
专业: 学号: 身份证号:
姓名: 得分: 一、选择题(每题2分,共30分)
1.在C程序中,各语句之间( )分隔。
A. 可以用, B. 必须用, C. 必须用; D.可以用,或;
2.以下各标识符中,合法的用户标识符为( )。
A.pad和p#d B. scanf和a10 C. void和max_1 D._a*和temp
3.设有变量说明“int x;”,则表达式”(x=4*5,x*5),x+25"的值为( )。
A. 20 B. 45 C. 100 D. 125
4. 数学式在C程序中对应的正确的表达式为( )。
A.exp(x)+exp(-x)/(a+b) B.(exp(x)十exp(-x))/a+b
C.(exp(x)+exp(-x))/(a+b) D.(e^x+e^(-x))/(a+b)
5. 设整型变量x的当前值为3,执行以下循环语句后,输出的结果是( )。
do
printf(”%d\t”,x-=2);
while(!(--x));
A. 0 B. 1 -2 C. 3 0 D. 死循环,输出许多值
6.设i,x都是int类型,则下面的for循环体可执行( )次?
for(i=0,x=0;i<=9&&x!=876;i++) printf("*");
A.9次 B.876次 C.10次 D.无限循环
7.在C语言中能代表逻辑“真”的是( )。
A. true B. 大于0的数 C. 非0整数 D.非0的数
8.下面程序段的输出结果是( )。
I=6; while(I>0) printf(“%d”,I+1);
A.7 8 9 10 11 12 B. 7 7 7 7 …无限循环 C.1 2 3 4 5 6 D.一次也不循环
9. 下列表达式中,错误的是( )。
A. 4.0%2.0 B. k+++j C. a+b>c+d?a:b D. x*=y+25
10. 以下程序段的输出结果是( )。
int a=0,b=4,k=2;k=a+1>0||(++a<0)&&(!(b--<=0));
printf(“%d,%d,%d”,k,a,b);
A. 1,1,3 B. 1,1,4 C. 1,0,3 D. 1,0,4
11. 在C语言中(以16为PC机为例),5种基本数据类型的存储空间长度的排列顺序为( )。
A. char < int < long int <= float < double
B. char = int < long int <= float < double
C. char < int < long int <= float = double
D. char = int = long int <= float < double
12.putchar函数可以向终端输出一个( )。
A. 整型变量表达式值 B. 实型变量值
C. 字符串 D. 字符或字符型变量值
13.以下程序的输出结果是( )。(注:□表示空格)
main( )
{ printf(“\n* s1=%15s *”,”chinabeijing”);
printf(“\n* s2=%-5s *”,”chi”);
}
A. * s1=chinabeijing□□□ * B. * s1=chinabeijing□□□ *
* s2= * *chi * * s2= chi□□ *
C. * s1=* □□chinabeijing * D. * s1=□□□chinabeijing *
* s2=□□chi * * s2= chi□□ *
14.判断char型变量c1是否为小写字母的正确表达式为( )。
A.‘a’<=c1<=‘z’ B. (c1>=a)&&(c1<=z)
C.(‘a’>=c1)||(‘z’<=c1) D. (c1>=‘a’)&&(c1<=‘z’)
15. 以下程序的输出为( )。
#include <stdio.h>
main()
{
int m=7,n=4;
float a=38.4,b=6.4,x;
x=m/2+n*a/b+1/2;
printf(“%f\n”,x);
}
A. 27.000000 B. 27.500000 C. 28.000000 D. 28.500000二、填空题(每空3分,共45分)
1. C程序包括三种结构,它们分别是顺序结构、 结构和 结构。
2. C语言中对于嵌套if语句规定else总是与 配对。
3. 写出判断闰年的条件表达式 。(设年份用y表示)
4. 下列程序的输出是________。
#include <stdio.h>
main()
{
int a=4,b=7;
printf("%d\n",(a=a+1,b+a,b+1));}
5.下面程序用来求出100—300和500—700之间的全部素数,要求每行输出10个数。
判断素数的方法是:让某一个数m被2—除,若能被其中一个整数整除,则m不是素数。
#include”math.h”
main()
{ int m,k,I,n=0;
for(m=101;m<=700;m=m+2)
{ if(m>300 m<500) ;
if(n%10==0) ;
k=sqrt(m);
for(I=2;I<=k;I++)
if(m%I==0) ;
if( )
{printf(“%d “,m); n=n+1;}
}
}
6.下面程序的功能是求1-100之间偶数的和,请完善程序。
main( )
{ int j,sum=0;
for(j=1;j<=100;j++)
if( )
sum= ;
printf(“结果为:%d”,sum);
}
7.根据以下函数关系,对输入的每个x值,计算相应的y值,请完善程序。
x
y
x<0
0
0<=x<10
x
10<=x<20
10
20<=x<40
-0.5x+20
main( )
{ int x,c,m;
float y;
scanf(“%d”,&x);
if( ) c=-1;
else c= ;
switch( c )
{ case – 1:y=0;break;
case 0:y=x;break;
case 1:y=10;break;
case 2:
case 3:y=-0.5*x+20;break;
default:y=-2;
}
if( ) printf(“y=%f”,y);
else printf(“error\n”);
}三、编程题(共25分)
1. 用100元钱买100只鸡,每只公鸡5元,每只母鸡3元,1元买3只小鸡。要求每一种鸡至少买一只,且每一种鸡必须是整只,编程求出各种鸡各买多少只。列出每一种购买方案并统计共有多少种买鸡方法。(15分)2.利用循环编程实现求n!,n从键盘上输入。(10分)
奥鹏作业答案
江南大学
|
|