《c语言》课程综合复习资料。
一、单项选择。
1. 若有如下语句: int *p1,*p2; 则其中int所指的是( )
a. p1的类型
b. *p1和*p2的类型
c. p2的类型
d. p1和p2所能指向变量的类型。
2. 下列程序段的输出结果是( )x=9; while(x>7) ab. *
c. *d
3. 下列变量的定义及赋值正确的是( )
a. int i=0;j;
b. char c=”a”;
c. double x,y,z; x=y=z=100;
d. float a=b=100
4. 设有语句:int x=10; x = x -=x - x; ,则执行语句后,x的值为( )
a. 30
b. 20
c. 10
d. 405. 设有语句:float x=1,y; y=x 3/2; 则y的值是( )
a. 1 b. 2
c. 2.0
d. 2.5
6. 设有如下定义和执行语句,其输出结果为( )int a=3,b=3; a = b + 1; printf(“%d %d”,a,b);
a. 3 2
b. 4 2
c. 2 2
d. 2 3
7. 设有两字符串“beijing”、“china”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“china”连接到“beijing”之后的为( )
a. strcpy(str1,str2);
b. strcpy(str1, “china”);
c. strcat(str1,“china”)
d. strcat(“beijing”,str2
8. 设有定义语句:char str[20]=,p=str; 则printf(""d"",strlen(p+20));输出结果是( )
a. 0 b. 5
c. 7 d. 20
9. 设有定义int a[ ]p=a 3;则*(p-2),*a 4)的值是( )
a. 5 11
b. 1 9
c. 5 9
d. 有错误。
10. 设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y,z的值分别是( )
a. 1,1,1
b. 1,2,0
c. 0,1,1
d. 0,2,0
11. 设有定义:int x=12,n=5; 则表达式 x%=(n%2) 的值为( )
a. 0 b. 1
c. 2 d. 3
12. 设有定义 int a=3,b=4,c=5; ,则以下表达式中,值为0的表达式是。
a. a&&b
b. a<=b
c. a||b c&&b-c
d. !a<b)&&c||1)
13. 设有定义 int a[ ]p=a 3; 则*(p-2) ,a 4) 的值是。
a. 5 11
b. 1 9
c. 5 9
d. 有错误。
14. 设有定义 char *p=“abcde\0fghjik\0”; 则printf(“%d”,strlen(p));输出结果是( )
a. 12
b. 15
c. 6 d. 5
15. 设有int x=11;则表达式(x *1/3)的值是。
a. 3 b. 4
c. 11
d. 1216. 设a=3,b=4,c=-5,则逻辑表达式:a ||b c &&b==c 的值是。
a. 1 b. 0
c. 非0
d. 语法错。
17. 若有以下定义:int a[10],*p=a; 则*(p+3)表示的是。
a. 元素a[3]的地址
b. 元素a[3]的值
c. 元素a[4]的地址
d. 元素a[4]的值。
18. 若有以下定义:char s[20]= programming",*ps=s;则不能代表字符g的表达式是。
a. ps 3
b. s[3]
c. ps[3]
d. ps =3,*ps
19. c语言中,函数返回值的类型是由。
a. return语句中的表达式类型决定
b. 调用函数的主调函数类型决定
c. 调用函数时的临时类型决定
d. 定义函数时所指定的函数类型决定。
20. c语言提供的合法关键字是( )
a. swicth
b. cha
c. case
d. default
二、读程序题。
#include <
void main()
int a=4,x=3,y=2,z=1;
printf(""d"",a<x ? a : z<y ? z : x));
#include <
void main()
int x=12,y=0;
if(x>=0)
else y=-10;
printf(“y=%d”,y);
#include <
void main()
int k=1;
switch(k)
case 0: printf(""a"")break;
case 1:printf(""b"")
case 2:printf(""i"")
case 3: printf(""g"")break;
default: printf(""e"")
#include <
#define s(x) x*x
void main()
int a,k=3,m=1;
a=s(k+m);
printf(""d"",a);
#include <
int fun(int a, int b)
if(a>b) return(a);
else return(b);
void main()
int x=3, y=8, z=6, r;
r=fun(fun(x,y), 2*z);
printf(""d"",r);
#include <
void main()
int k=4,n=0;
for( ;n<k; )
n++;if(n%3!=0) continue;
k- -printf(""d,%d"",k,n);
三、编程题。
1. 写一个判断素数的函数。要求在主函数中输入一个整数并输出相应的判断信息。
2. 编程序计算 s=1!-2!+3!-4!+ 10!,并输出结果。
c语言》课程综合复习资料参***。
一、单项选择。
二、读程序题。
1. 答案:1
2. 答案:y=10
3. 答案:big
4. 答案:7
5. 答案:12
6. 答案:3,3
三、编程题。
1. 参考**:
#include <>
void main()
intn,i;
printf(“please enter a integer number,n=?”
scanf(“%d”,&n);
for(i=2;i<=n-1;i++)
if(n%i==0)break;
if(ielseprintf(“%d is a prime number.”,n);
2.参考**:
#include <>
void main()
inti,k=1,njie=1;
float sum=0;
for(i=1;i<=10;i++)
njie=njie*i;
sum=sum+njie*k;
k=-1*k;
printf("%f",sum);
C语言期末考试复习题
单选复习题。下列定义变量的语句中错误的是 a int int b double int c char for d float us 答案 d知识点 常量 变量和标识符。以下不合法的用户标识符是 a j2 key b double c 4dd 8 答案 c知识点 常量 变量和标识符。以下4组用户定义标...
C语言期末考试复习题
给定程序中,函数fun的功能是 将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。例如,输入一个数 27638496,新的数 为739。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意 源程序存放在考生文...
C语言期末考试复习题
单选复习题。下列定义变量的语句中错误的是 a int int b double int c char for d float us 答案 d知识点 常量 变量和标识符。以下不合法的用户标识符是 a j2 key b double c 4dd 8 答案 c知识点 常量 变量和标识符。以下4组用户定义标...