1. 有以下程序:
main( )
{int x=102,y=012;
printf(“%2d,%2d\n”,x,y);执行后输出结果是:(D )
A. 10,01 B. 012,12 C. 02,10 D. 102,10
2. 以下选项中,与k=n++完全等价的表达式是( A)
A. k=n,n=n+1 B. n=n+1,k=n C. k=++n D.k+=n+1
3. 有以下程序:
main( )
{char k; int i;
for(i=1;i<3;i++)
{scanf(“%c”,&k);
switch(k)
{case ‘0’:printf(“china\n”);
case’1’:printf(“world\n”);
}
}
}
程序运行时,从键盘输入:01,则执行后结果是:( )
A. china B. world C.china D.world
china china world world
world world world china
4. 将以下定义了的函数放在主调函数后面:
float aaa(float a,float b)
{return((a+b)/4);}则以下在主调函数中的函数原型声明错误的是:( )
A. float aaa(float x,float i); B. float aaa(float a,b);
C. float aaa(float,float ); D. float aaa(float a,float b);
5. 用8位无符号二进制数能表示的最大十进制数为( )
A. 127 B. 128 C.255 D.256
6. 以下叙述中正确的是( )
A. 静态(static)类别变量的生存期贯穿于整个程序的运行期间
B. 全局变量的作用域一定比局部变量的作用域范围大
C. 函数的形参都属于全局变量
D. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值
7. 已知x=1,y=2,z=3,表达式z+=x>y?++x:++y的值是 ( )
A. 6 B. 3 C. 5 D. 2
8. 在一个C程序中,下列正确的是:( )
A. main函数必须出现在固定位置
B.main函数必须出现在所有函数之后
C.main函数可以在任何地方出现
D.main函数必须出现在所有函数之前
9. 若用数组名做函数实参,则实际上传递给行参的是:( )
A. 数组中第一个元素的地址 B. 数组元素的个数
C. 数组第一个元素的值 D. 数组中所有元素的值
10. 下面几组选项中均为不合法标志符的是:( )
A. A,p_o,do; B.float,lui,_A;
C.pointer-1,goto,define; D._123,temp,INT;
11. 一个c语言程序总是从( )开始执行。
A 主过程 B 子程序 C 主函数 D 主程序
12. 已知:int (*p)();p是( )
A 指向int型的指针变量 B int型的指针数组
C 一个函数,该函数的返回值是指向int型的指针变量
D 一个指向函数的指针变量,该函数的返回值的返回值是int型
13. 已知:
struct
{ int i;
char c;
float a;
}test;
则sizeof(test)的值是( )
A 4 B 5 C 6 D 7
14. 已知:
struct sk
{ int a;float b;
}data,*p;
若有p=&data,则对data中的成员a的正确引用是( )
A (*p).data.a B (*p).a C p->data.a D p.data.a
15. 下面程序段的输出结果是多少,已知字符b的ASCII码是98( ):
char ch; int k;
ch=b;k=12;
printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);
A. b,b,k=12 B. b,98,k=12 C. 98,b,k=12 D. 98,12,k=12
16. C语言允许函数值型缺省定义,此时该函数值隐含的类型是( )
A. float型 B. int型 C. long型 D. double型
17. 已知:char b[5],*p=b;则正确的赋值语句是( )
A b="abcd"; B *b="abcd"; C p="abcd"; D *p="abcd";
18. 下列关于switch语句和break语句的结论中,正确的是( )
A break语句是switch语句中的一部分
B 在switch语句中可以根据需要使用或不使用break语句
C 在switch语句中必须使用break语句
D break语句是switch语句的一部分
19. 合法的数组说明语句语句是( )
A int a[ ]="string"; B int a[5]={0,1,2,3,4,5};
C char a="string"; D char a[ ]={0,1,2,3,4,5};
20. c语言主函数main最多有( )个参数
A 1 B 2 C 0 D 3
1. C语言中整形数据在内存中的存储形式是 1 ,字符型数据在内存中的存储形式是 2 。
2. 已知 int a=4,b=5,c; 则执行表达式 c=a=a>b后,变量a的值为___3____。
3. C源程序的基本单位是 4 。
4.表达式:5%2= 5 ,2/3= 6 。
5. C语言中,逻辑真用 7 表示,逻辑假用 8 表示。
6.C语言中实型的数据类型分为两种他们是 9 和 10 。
7.C语言程序设计的三种基本结构是: 11 、 12 、 13 。
8.令x=1,y=3,计算x=(x=1+2,x*2)的值 14 。
9.定义 int a=3,b=4,c=5;
!(a+b)&&!c||1的值为: 15 ,b-1+c&&a+c/2的值为: 16 。
10.在函数调用过程中又直接或间接地调用本身的函数调用过程叫: 17 。
11.指针变量也是变量,只是它里面存放的不是普通数据,而是: 18 。
12.定义结构体和共用体变量必须要用到的关键字分别是: 19 和 20 。
1. main()
{ int x=1,y=0,a=0,b=0;
switch(x)
{ case 1:switch(y)
{case 0: a++;break;
case 1: b++;break;
}
case 2:a++; b++;break;
}
printf("a=%d,b=%d\n",a,b);
}
2. main()
{ int i,j;
float s;
for (i=7; i>4; i--)
{ s=0;
for (j=i; j>3; j--)
s=s+i*j;
}
printf("s=%f\n",s);
3. main()
{int x[]={8,6,4,3,2,1},s,i;
for(i=0,s=1;i<3;i+=2)
s*=x[i];
printf("s=%d\n",s);
}
1. 下面的程序的功能是计算1-3+5-7+...-99+101的值存在s中,请填空。
main()
{ int i,t=1,s=0;
for(i=1;i<=101; ①i=i+2 )
{ s=s+i*t;
t= ② ;}
}
展开阅读全文