山东理工大学成人高等教育程序设计基础(C语言) 复习题
一、填空题
1、一个C程序总是从 函数开始执行,并在其中结束。 2、C语言的函数由 和 两部分组成。 3、在C语言中,字符串“ABDEF”的长度是 。
4、C语言的一个源程序有且只有一个 函数,C函数由 、 两部分组成。
5、C语言的数据类型转换有两种,它们是自动转换和 。 6、C语言变量名中的字符有 之分。 7、求a、b较大值的条件表达式是 。 8、表达式5+6<8 的值是 。
9、已知整型变量i的值是24,则表达式i%5的值是 10、C语言数组下标的最小值是 。 11.C语言的标识符只能由字母、数字和 组成。 12.有符号整数在内存中是以二进制 码形式存储的。 13.若有int n=3.96;则n的结果为 。
二、判断题
1.一个C语言程序总是从main()函数开始执行的。( )
2.C语言中不区分字母的大小写。( ) 3.'a'和'\\n'都是字符型常量。( ) 4.5%3的结果是2。( )
5.在C语言中表示逻辑运算结果时,以1表示真,以0表示假。( ) 三、阅读理解程序,写出输出结果 1、设有以下程序: main( )
{ int i, a[10];
for (i=0;i<10;i++) a[i]=i ;
printf(“%d %d %d”,a[1],a[2],a[3]); } 输出结果: 2、设有以下程序: main( )
{ int i=1,sum=0;
while (i<=5) { sum=sum+i; i++;} printf(“i=%d, sum=%d” ,i,sum); }
输出结果: 3、设有以下程序: main( )
{ int a,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; printf(“a=%d,b=%d”,a,b); }
输出结果: 4、 设有以下程序:
main()
{ int x,y,m,n; m =10; n=13; x=--m; y=n--; printf(“MMMM”,m,n,x,y); } 输出结果:
5、main() 运行结果为: {int f[6]={1,2,3,4,5,6},i; for(i=5;i>=0;i--) printf(\}
6、main() 运行结果为: {int a=6,b=3,t; t=a;a=b;b=t;
printf(\
}
四、程序填空
1、用子函数的方式求两个数的和。 main()
{ double add(double x,double y); double a,b,c; scanf(“%lf%lf”,&a,&b); c=add(___ _,__ __); printf(“sum is %f”,c); }
double add(double x,double y)
{ _____ _; z=___ ___; return(_ ___); } 2、用子函数的方式编程,求出两个数中的较大值。 main() {int a,b,c;
scanf(“_____,_______”,&a,&b); c=________; printf(“Max is %d”, ______); }
max(int x, int y)
{int z; z=_______; return(z); }
3、程序功能:求斐波那契数列的前20项。 main() {int i;
int f[20]={ }; for(i=2; ;i++) f[i]= ; for(i= ; i<20;i++) printf(\ ); }
五、程序编写
1、给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 成绩:在90分以上为‘A’,80-89分为‘B’,70-79分为‘C’,60-69分为‘D’,60分以下为‘E’。 2、输入一串字符,以‘?’结束,统计其中数字和小写字母个数。
3、用循环编程序求10的阶乘。
?2x?1若x?0?4、已知y??1若x?0。从键盘输入x的值,求y的值并输出。
?2x?1若x?0?六、单选
1、C语言程序的基本单位( )
A、子程序 B、程序 C、过程 D、函数 2、C语言程序由函数组成,它的( )。 A、函数可以嵌套定义,也可以嵌套调用。 B、函数可以嵌套定义,不可以嵌套调用。 C、函数不可以嵌套定义,但可以嵌套调用。 D、函数不可以嵌套定义,也不可以嵌套调用。
3、已知一个函数定义是:void abc( ) {……}则void的含义是( )。 A、 执行该函数后函数没有返回值。 B、执行该函数后不返回。
C、 该函数返回任意类型数据。 D、以上三个全错。
4、下面合法的C标识符是( )。
D、 A、3hj B、_h3j C、ab-3 D、ab , 3 5、以下函数的函数值类型是( ) Fun (int x)
{ int y; y=3*x-4; return y; }
A、int B、不确定 C、void D、float
参考答案
一、 填空题 1、主(main)
2、函数的首部,函数体 3、5
4、主 函数的首部 函数体 5、强制转换 6、大小写 7、a>b?a:b 8、0 9、4 10、0
11. 下划线
12. 补 13. 3
二、 判断题
1-5√×√√√
三、阅读理解程序,写出输出结果 1、输出结果:1 2 3
2、输出结果:i=6 ,sum=15 3、输出结果:a=0,b=7
4、输出结果:9 12 9 13 5、输出结果:6 5 4 3 2 1 6、输出结果:3 6
四、程序填空
1、 a b double z a+b z 2、%d %d max(a,b) c a>b?a:b 3、1,1 i<=19 f[i-2]+f[i-1] i=0 f[i]
五、程序编写
1、给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 成绩:在90分以上为‘A’,80-89分为‘B’,70-79分为‘C’,60-69分为‘D’,60分以下为‘E’。
参考答案: main()
{int grade,k; char c; scanf(“%d”,&grade); k=grade/10;
if (k==10) printf(“A”); switch(k)
{case 9:printf(“A”);break; case 8:printf(“B”);break; case 7:printf(“C”);break; case 6:printf(“D”);break; default:printf(“E”); } }
2、输入一串字符,以‘?’结束,统计其中数字和小写字母个数。 参考答案: main()
{ char ch; int m=0,n=0; scanf(\ while (ch!='?')
{ if(ch>='0' && ch<='9') m++; if(ch>='a' && ch<='z') n++; scanf(\
程序设计基础(C语言)复习题山东理工大学



