C语言基础题及答案
1、一个C正确答案: A]。
A)必须有一个主函数
B)可以有多个主函数
C)必须有主函数和其他函数
D)可以没有主函数
2、关于C正确答案: B]。
A)C程序的第一个函数称为主函数,程序从该函数开始运行。
B)C程序的主函数即是main函数,程序从该函数开始运行。
C)C程序可以有多个主函数,程序从第一个主函数开始运行。
D)C程序可以没有主函数,程序从第一个函数开始运行。
3、C程序中,return正确答案: D]。
A)终止程序运行
B)返回到上层循环
C)返回到外层结构
D)返回到上层函数
4、C语言程序的3正确答案: A]。
A)顺序结构,选择结构,循环结构
B)递归结构,循环结构,转移结构
C)嵌套结构,递归结构,顺序结构
D)循环结构,转移结构,顺序结构
5、以下对C正确答案: A]。
A)C程序总是从main()函数开始执行。
B)C程序可以从程序中的任何函数开始执行。
C)C程序总是从第一个定义的函数开始执行。
D)C程序中的main()函数必须放在程序的开始部分。
6、关于C程序第1正确答案: D]。A)#include stdio.h
B)#include 'stdio.h'
C)#include (stdio.h)
D)#include
7、关于C正确答案: A]。
A)编辑→保存→编译→运行
B)编译→编辑→运行→保存
C)保存→运行→编辑→编译
D)运行→编译→保存→编辑
8、下列的哪个不是C正确答案: D]。
A)while
B)auto
C)break
D)printf
9、下列的哪个不是C正确答案: C]。
A)+
B)%
C)=
D)-
10、下列的哪个不是C正确答案: C]。
A)>=
B)<=
C)=
D)!=
11正确答案: D]。
A)代码如果没有缩排是错误的
B)程序总是从main函数开始执行
C)注释/*和*/不可以嵌套
D)C源文件经过编译先生成目标文件,再经过连接才能生成可执行文件
12正确答案: B]。
A)3ab
B)_isw
C)float
D)b-b
13正确答案: B]。
A)INT
B)int
C)year2009
D)my_program
14、以下选项中,合法的C正确答案: D]。
A)b-a
B)5ab
C)int
D)_5ab
15、以下选项中,三种类型都是C正确答案: C]。
A)int, long, real
B)integer, short, double
C)int, float, char
D)int, decimal, char
16、关于main正确答案: A]。
A)main { printf("Hello\n"); }
B)main() { printf("Hello\n"); }
C)int main(void) { printf("Hello\n"); }
D)void main() { printf("Hello\n"); }
17、把x,y定义成float类型,并赋同一初值3.14正确答案: C]。
A)float x,y=3.14;
B)float x,y=2*3.14;
C)float x=y=3.14;
D)float x=3.14,y=x;
18、若变量已正确定义并赋值,以下哪个表达式不符合C正确答案: B]。A)a*b/c
B)3.14%2
C)2,b
D)a/b/c
19、设int n,m; 使m为n正确答案: C]。
A)m = n/100;
B)m = n%100;
C)m = n/100%10;
D)m = n%10/100;
20、设float x,y; 使y为x正确答案: C]。
A)y = (int)x;
B)y = int(x);
C)y = x – (int)x;
D)y = x – int(x);
21、C正确答案: D]。
A)/
B)=
C)>=
D)%
22、设要定义n为整型变量,定义x正确答案: C]。A)int n, double x,
B)int n, double x;
C)int n; double x;
D)int n; double x,
23、设有int n; 从键盘上输入整数给变量n正确答案: D]。
A)scanf( n );
B)scanf( "n" );
C)scanf( "%d", n );
D)scanf( "%d", &n );
24、设有int n=10; 正确答案: C]。A)printf( n );
B)printf( "n=", n );
C)printf( "n=%d", n );
D)printf( "n=%d", &n );
25、以下哪条语句输出字符'a'的ASCII正确答案: B]。
A)printf("%d",a);
B)printf("%d",'a');
C)printf("%c",'a');
D)putchar(a);
26、设有定义 int a; char c; 执行输入语句
scanf("%d%c",&a,&c);
若要求a和c得到的值为10和'Y'正确答案: B]。
A)10,Y
B)10Y
C)10<空格>Y
D)10<回车>Y
27、设有如下语句int x,y; scanf("%d%d",&x,&y); 如果要使变量x得到数值11,变量y得到数值22,
正确答案: D]。
A)x=11□y=22↙
B)x=11↙y=22↙
C)11,12↙
D)11□22↙
28、设有char ch; 正确答案: B]。
A)scanf("%c",ch);
B)scanf("%c",&ch);
C)printf("%c",ch);
D)printf("%c",&ch);
29、语句printf("%.1f,%d\n",10./4,10/8); 正确答案: B]。
A)2.5,1.25
B)2.5,1
C)1,1.25
D)2,1.25
30正确答案: A]。
int a=1234;float x=56.789;
printf("%3d,%4.2f\n",a,x);
A)1234,56.79
B)1234 56.79
C)1234,56.789
D)1234 56.789
31、执行以下程序段后,c3正确答案: A]。
int c1=1,c2=2,c3;
c3=c1/c2;
A)0
B)2
C)0.5
D)1
32、变量a与b分别初始为10与20正确答案: B]。A)int a=10, int b=20;
B)int a=10, b=20;
C)int a=10; b=20;
D)int a=10; b=20,
33、下列的哪个不是C正确答案: C]。
A)!
B)&&
C)&
D)||
34正确答案: A]。
A)123.
B)-346
C)0x5A
D)0777
35、以下选项中正确的C正确答案: C]。
A)0xEfGh
B)'XYZ'
C)12.34e5
D)'\5A'
36、以下四项中不合法的C正确答案: A]。
A)'xab'
B)"x1f"
C)0x1234
D)2.1e3
37、以下选项中不能作为C正确答案: B]。
A)"\a"
B)'cd'
C)0.1e+6
D)'\011'
38正确答案: D]。
A)'\xcc'
B)'\"'
C)'\\'
D)'\018'
39正确答案: C]。
A)'n'
B)'\n'
C)"a"
D)'\101'
40、设有定义char c;且c表示一个小写字母,将小写字母转换为对应大写字母的表达式是
正确答案: C]。
A)c - a + A
B)c - A + a
C)c - 'a' + 'A'
D)c - 'A' + 'a'
41、设有变量定义 int i, j; 与表达式 i==0 && j==0 正确答案: B]。A)i||j
B)!i&&!j
C)!i==!j
D)i==j
42、设int n; 判断“n不为正确答案: D]。
A)n==0
B)!(n=0)
C)n=!0
D)n!=0
43、设int n; 判断“n为正确答案: D]。
A)n=0
B)n!=0
C)!(n=0)
D)n==0
44、设int n; 正确答案: C]。
A)n=0
B)n!=0
C)n=1
D)n=n
45、设有定义int a;判断a正确答案: D]。
A)a==2*n
B)a/2==0
C)a%2=0
D)a%2==0
46、以下关于C正确答案: C]。
A)逻辑真用true表示,逻辑假用false表示
B)逻辑真用yes表示,逻辑假用no表示
C)逻辑真用1表示,逻辑假用0表示
D)表达式(1+2)的逻辑值既不是真,也不是假
47、C正确答案: A]。
A)二进制
B)八进制
C)十进制
D)十六进制
48、设n为16位二进制整数,则n正确答案: B]。
A)-32768至32768
B)-32768至32767
C)0至65536
D)0至65535
49、下列关于long、int、short正确答案: C]。A)均占4个字节
B)根据数据的大小来决定所占内存的字节数
C)由C语言编译系统决定
D)由用户自己定义
50正确答案: B]。
A)1.234e04
B)1.234e0.4
C)1.234e+4
D)1.234e0
51、设有定义float x=3.567,y; 赋值使y为3.6正确答案: A]。
A)y = (int)(10*x+0.5)/10.0;
B)y = (int)(10*x)/10.0;
C)y = (int)(10*x)/10.0 + 0.5;
D)y = (%3.1f) x;
52、能正确表示逻辑关系:“a≥10或a≤0”的C正确答案: C]。A)a>=10 | a<=0
B)a>=10 && a<=0
C)a>=10 || a<=0
D)a>=10 or a<=0
53、C中执行下列代码后整型变量x和y正确答案: C]。
int x=100,y; y=x++;
A)x=100 y=100
B)x=100 y=101
C)x=101 y=100
D)x=101 y=101
54、计算表达式:x=(i=4,j=10,k=24)后,x正确答案: C]。
A)4
B)10
C)24
D)38
55正确答案: B]。
A)*
B)!
C)&&
D)>=
56、设有定义int m=1,n=6; 赋值使m为8正确答案: B]。
A)m = (n++) + 1;
B)m = 1 + (++n);
C)m += n==6?1:0;
D)m += n++;
57、设有定义int a=5,b; 赋值使b为9正确答案: D]。
A)b = ++a+4;
B)b = (a++)+3;
C)b = 8+!(a==5);
D)b = (a++==6)?8:9;
58、下面哪些是不正确的C正确答案: D]。
A)a=a+1;
B)i++;
C)a*=1,b=8;
D)a=3
59正确答案: C]。
y=10; x=y++;
A)x=10,y=10
B)x=11,y=11
C)x=10,y=11
D)x=11,y=10
60、若有定义语句:char c='\n'; 则变量正确答案: C]。
A)包含4个字符
B)包含2个字符
C)包含1个字符
D)说明不合法,c的值不确定
61、设有变量定义:int a=5, b=8;当执行完语句:b= a
正确答案: A]。
A)5和5
B)5和7
C)5和8
D)5和9
62、将字符变量a与b分别初始为'A'与'B'正确答案: D]。A)char a,b='A','B';
B)char a='A', char b='B';
C)char a="A", b="B";
D)char a='A', b='B';
63、为表示关系x≤y≤z,正确的C正确答案: A]。
A)(y>=x)&&(y<=z)
B)(x>=y)AND(y>=z)
C)(x>=y>=z)
D)(x>=y)&(y>=z)
64、要判断char型变量m正确答案: B]。A)0<=m && m<=9
B)m>='0' && m<='9'
C)"0"<=m && m<="9"
D)'0'<=m <='9'
65、设char ch; 判断“ch正确答案: A]。
A)ch>='0' && ch<='9'
B)ch>0 && ch<9
C)ch>='0' || ch<='9'
D)ch>=0 || ch<=9
66、设有int n; 则判断“n正确答案: D]。
A)10<=n<=99
B)10<=n || n<=99
C)10<=n, n<=99
D)10<=n && n<=99
67、设有int a,b; 正确答案: A]。
a是3的倍数,或者b不是5的倍数
A)a%3==0 || b%5!=0
B)a%3!=0 || b%5==0
C)a%3!=0 || b%5!=0
D)a%3==0 || b%5==0
68、下列常数中不能作为C正确答案: D]。
A)0xA5
B)2.5e-2
C)3e2
D)2e32.6
69、已知int i,a; 执行语句“i=(a=2*3,a*5),a+6;”后,变量i正确答案: C]。A)6
B)12
C)30
D)36
70、要定义字符型变量c正确答案: C]。
A)char c='\97';
B)char c="a"
C)char c=65;
D)char c='ab';
71、若变量已正确定义并赋值,符合C正确答案: B]。
A)a=a+7;
B)a=7+b+c,a++
C)int(12.3%4)
D)a=a+7=c+b
72、设有定义语句:char c1=92, c2=92; 正确答案: A]。A)c1^c2
B)c1&c2
C)~c2
D)c1|c2
73、表达式10 & 12和10 ^ 12正确答案: B]。
A)8和14
B)8和6
C)14和8
D)6和8
74、设有定义:int a=15; 则执行语句:a/=a+a; 后a正确答案: A]。
A)0
B)1
C)0.5
D)16
75、设有定义:int a, b, c=10; 下列选项中能将变量c的值赋给变量a和b正确答案: C]。
A)a=b, b=c, c=a;
B)c=a=b;
C)(a=c)&&(b=c);
D)(a=c)||(b=c);
76、与表达式:!a ? 10 : 20 正确答案: A]。
A)a==0 ? 10 : 20
B)a!=0 ? 10 : 20
C)a!=1 ? 10 : 20
D)a ? 10 : 20
77正确答案: A]。
A)'123'
B)"123"
C)0x1234
D)2.1e3
78正确答案: C]。
A)操作数乘以2
B)操作数乘以4
C)操作数除以2
D)操作数除以4
79正确答案: A]。
A)操作数乘以2
B)操作数除以2
C)操作数乘以4
D)操作数除以4
80、假设整数x正确答案: A]。
A)x%2==0
B)x%2>0
C)x%2
D)x/2*2-x!=0
81正确答案: D]。
char a='Z';
a = (a>='a'&&a<='z') ? a-'a'+'A' : a;
printf("%c",a);
A)a
B)A
C)z
D)Z
82、设整数n的值为十进制-8, 以16正确答案: D]。A)0000 0000 0000 1000
B)1000 0000 0000 1000
C)1111 1111 1111 0111
D)1111 1111 1111 1000
83、设int n=-1; 则n在内存中的16正确答案: A]。
A)1111 1111 1111 1111
B)1000 0000 0000 0001
C)1111 1111 1111 1110
D)0000 0000 0000 0000
84、设整数n的值为十进制-5, 以16正确答案: D]。A)0000 0000 0000 0101
B)1000 0000 0000 0101
C)1111 1111 1111 1010
D)1111 1111 1111 1011
85、求“abc\\12\正确答案: C]。
A)5
B)6
C)7
D)8
86、设x=7,执行语句y=++x,则y正确答案: D]。
A)6
B)7
C)9
D)8
87正确答案: D]。
A)4.18e3
B)0.46793
C)078
D)9738
88、在C中,char正确答案: D]。
A. 原码
B)反码
C)补码
D)ASCII码
89、若有定义“int x”,则下面能将x正确答案:
A]。
A)(double) x
B)double (x)
C)(x)double
D)x (double)
90正确答案: D]。
A)字符型变量不能赋予整数
B)任意整数都能表示字符
C)字符型变量可存放多个字符
D)字符数据的值是整数值
91、设变量int a = 5,b; 正确答案: A]表达式计算后,使得变量b的值等于2 ?A)b=a/2
B)b=6-(a--)
C)b=a%2
D)b=a>3?3:2
92正确答案: A]。
A)只能是逻辑型数据
B)只能是整型数据
C)只能是整型或字符型数据
D)可以是任何类型的数据
93、设变量x,y,a,b,c,d的值均为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的值分别是
正确答案: B]。
A)0,0
B)0,1
C)1,0
D)1,1
94、与语句“m += (x=5) + (--正确答案: C]。
A)m=m+x+y; x=5; y=y-1;
B)x=5; m=m+x+y; y=y-1;
C)x=5; y=y-1; m=m+x+y;
D)y=y-1; m=m+x+y; x=5;
95、设int x,y,t; 能正确交换变量x与y正确答案: C]。
A)x=y; y=x;
B)t=y; x=t; y=x;
C)t=x; x=y; y=t;
D)x=t; y=x; t=y;
96、如果要在屏幕上输出字符串“a%b=a\正确答案: B]printf语句能正确输出字符串。
A)printf("a%b=a\b");
B)printf("a%%b=a\\b");
C)printf("%a%b=%a\%b");
D)printf("%a%%b=%a\\%b");
97、当x=2.5,a=7,y=5.2,求算术表达式x+a%3*(int)(x+y)%2正确答案: D]。A)2.0
B)2.5
C)3.0
D)3.5
98、设a=3,b=4,c=5,执行!(x=a)&&(y=b)&&0逻辑表达式后,变量x和y正确答案: C]。
A)3、4
B)x和y中的值不确定
C)3、不确定
D)不确定、4
99、十进制数57,分别将其转换成C正确答案: C]。
A)71、39
B)71Q、39H
C)071、0x39
D)71Q、30x0
100、已知字母A的ASCII码值为十进制65正确答案: B]。
#include
int main(void)
{
char c1,c2;
c1='A'+'5'-'3';
c2='A'+'6'-'3';
printf("%d,%c",c1,c2);
return 0;
}
A)67,C
B)67,D
C)68,C
D)68,D
一、分支结构
1、与语句“x+=(a++==b)?c:--正确答案: A]。
A)if (a==b) { a=a+1; x=x+c; }
else { a=a+1; d=d-1; x=x+d; }
B)a=a+1; if (a==b) { x=x+c; }
else { d=d-1; x=x+d; }
C)if (a==b) { a=a+1; x=x+c; }
else { a=a+1; x=x+d; d=d-1; }
D)if (a==b) { a=a+1; x=c; }
else { a=a+1; d=d-1; x=d; }
2、为了避免嵌套的条件语句if-else的二义性,C语言规定:else正确答案: B]是正确的。
A)缩排位置相同的if
B)其之前最近尚未匹配的if
C)其之后的if
D)同一行上的if
3、下列关于switch与break正确答案: B]是正确的。
A)break语句是switch语句的一部分
B)在switch语句中可以根据需要使用或不使用break语句
C)在switch语句中必须使用break语句
D)以上3个描述有2个是正确的
4正确答案: A]语句与下列if语句等价。
if(a>b) s=a+b;
else s=a-b;
A
switch(a>b)
{
case 1:s=a+b;break;
case 0:s=a-b;break;
}
B
switch(a>b)
{
case 1:s=a+b;
case 0:s=a-b;
}
C
switch(a
{
case 1:s=a-b;
case 0:s=a+b;
}
D
switch(a
{
case 1:s=a-b;break;
case 0:s=a+b;break;
}
5正确答案: B]。#include
int main(void)
{
int a=0, b=0, c=0, x=0;
if(a) b--;
else if(b)
if(!c) x=3;
else x=4;
printf( "x=%d\n", x);
return 0;
}
A)x=-1
B)x=0
C)x=3
D)x=4
6、下列程序运行时输入58 98 18正确答案: B]。#include
int main(void)
{
int a,b,c,x,y;
scanf("%d%d%d",&a,&b,&c);
x = a>c ? a : c;
y = b>c ? b : c;
if (a>b)
printf("%d,%d,%d\n",x,a-x+y,b+c-y);
else
printf("%d,%d,%d\n",y,b-y+x,a+c-x);
return 0;
}
A)58,98,18
B)98,58,18
C)18,58,98
D)18,98,58
7、执行以下代码段后,a正确答案: A]。
int a=1,b=2,c=3;
if(a>b) a=b;
if(a>c) a=c;
A)1
B)2
C)3
D)不确定
8、执行以下程序段后,a,b,c正确答案: B]。
int a,b=100,c,x=10,y=9;
a=(--x==y++)?--x:++y;
if(x<9)b=x++; c=y;
A)9,9,9
B)8,8,10
C)9,10,9
D)1,11,10
9、设有定义int x=99; 正确答案: B]。
if( x==99)
printf(“$$”);
else
printf(“@@”);
printf(“00”);
A)$$
B)$$00
C)$$@@
D)$$@@00
10、if…else中为避免嵌套出现二义性,C规定else正确答案: B]if语句相匹配。
A)其之前最近的if语句
B)其之前最近且尚未配对的if语句
C)缩排位置相同的if语句
D)其之后最近的if语句
11、已知 int x=1, y=0; 执行下面程序段后,y正确答案: C]。
if(x) { if (x>0) y=1; } else y = -1 ;
A)-1
B)0
C)1
D)不确定
12、已知 int x=1, y=0, w ; 执行下面程序段后,w正确答案: A]。
if(x) if(y) w=x&&y; else w=y;
A)0
B)-1
C)1
D)不确定
13、设有int a=70; 正确答案: A]。
if ( a>=60 )
if (a>=80)
printf("Very Good");
else
printf("Good");
else
if (a>=40)
printf("Bad");
else
printf("Very Bad");
A)Good
B)Very Good
C)Bad
D)Very Bad
14、在C正确答案: B]。
A)if-else语句
B)switch语句
C)case语句
D)return语句
15、设有int n=60; 正确答案: A]。
switch (n/10)
{
case 6: printf("@"); break;
case 5: printf("#");
default: printf("$");
}
A)@
B)#$
C)$
D)@#$
二、循环结构
1、在C正确答案: A]。
A)for, while, do-while
B)for, while, do-until
C)for, loop, do-loop
D)for, for each, while
2、设有int i; 以下语句中,循环次数为100正确答案: B]。A)for ( i=0; i<=100; i++ )
B)for ( i=0; i<100; i++ )
C)for ( i=0; i<99; i++ )
D)for ( i=1; i<99; i++ )
3、设有int i=0; 正确答案: A]。
while (i<=6)
{ printf("%d",i);
i=i+1;
}
A)0123456
B)012345
C)01234
D)0123
4、设有in i; 正确答案: C]。
for (i=0;i<5;i++)
printf("%d",i);
A)0123456
B)012345
C)01234
D)0123
5、设有int i=0; 正确答案: B]。do {
printf("%d",i);
i=i+1;
} while (i<=5);
A)0123456
B)012345
C)01234
D)0123
6、设有char ch; 正确答案: C]。for(ch='B';ch<='F';ch++)
putchar(ch);
A)ABCDEFG
B)ABCDEF
C)BCDEF
D)BCDEFG
7正确答案: C]。
A)for (;2>=0;);
B)while (3/5,3+5);
C)for (;'\0';);
D)while (1);
8、若有int i;正确答案: A]。for (i=2;i==0;) printf("%d",i--);
A)0次
B)1次
C)2次
D)3次
9、循环语句中,break正确答案: C]。
A)终止程序运行
B)结束本次循环
C)从本循环体内跳出
D)跳出子函数
10正确答案: D]。
C语言基础知识_测试题
C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2]下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3.] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4]. 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6]. C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8]. 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处
2019年电大C语言考试题库(c语言小题+编程)
C语言程序设计课程期末复习练习 一、单选题 1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为( )。 A. main B. MAIN C. name D. function 2.每个C语言程序文件的编译错误分为()类。 A. 1 B. 2 C. 3 D. 4 3. 字符串"a+b=12\n"的长度为()。 A. 6 B. 7 C. 8 D. 9 4. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为()语句。 A. for B. if C. do D. while 5. 在下面的do-while循环语句中,其循环体语句被执行的次数为()。 int i=0; do i++; while(i<10); A. 4 B. 3 C. 5 D. 10 6. 将两个字符串连接起来组成一个字符串时,选用的函数为()。 A. strlen() B. strcap() C. strcat() D. strcmp() 7. 若用数组名作为函数调用的实参,传递给形参的是()。 A. 数组的首地址 B. 数组中第一个元素的值 C. 数组中全部元素的值 D. 数组元素的个数 8. 假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大( )个字节。 A. 4 B. 8 C. 16 D. 32 9. 假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p指向s所指向的字符串,则p应定义为()。 A. char *p=s; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s; 10. 从一个数据文件中读入以换行符结束的一行字符串的函数为()。 A. gets() B. fgets() C. getc() D. fgetc() 11. 由C语言目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. c 12. 设有两条语句为“int a=12; a+=a*a;”,则执行结束后,a的值为( )。 A. 12 B. 144 C. 156 D. 288 13. 带有随机函数调用的表达式rand()%20的值在( )区间内。 A. 1~19 B. 1~20 C. 0~19 D. 0~20 14. for循环语句“for(i=0; i C语言题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题吧。加油! 一单项选择题 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是( B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是( C )。 A) %x B) a+b C) a123 D) 123 8、下列四组字符串中都可以用作C语言程序中的标识符的是( A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 第一部分C语言基础 一、选择题 1、以下正确得C语言标识符就是() A。%X B。a+b?C.a123 D.test! 2、已定义int a,b;则以下不正确得C语句就是() A.a*=5;??B。b/=2;? C.a+=1、75;?D.b&&=a; 3、若x、i、j与k都就是整型变量,则执行下面表达式后x得值为( ) x=(i=4,j=16,k=32) A.4?B.16 ?C.32 D.52 4、C语言中得标识符只能由字母、数字与下划线三种字符组成,且第一个字符( ) A.必须就是字母???B.必须为下划线? C.必须为字母或下划线D.可以就是字母、数字、下划线中得任一字符 5、下面正确得字符常量就是( ) A.“c”? B。’\\”? C.‘w’??D.” 6、设int a=2,b=0,c;则执行语句c+=b&&a--后, c得结果为( )。 A.0,1B.1,0 ?C.2,0 D.不确定 7、以下不正确得C语言标识符就是()?A) int B)a_1_2?C)ab1exe D)_x 8、以下就是正确得C语言标识符就是( )。?A)#define?B)_123 C) %d D) \n 9、下列四组字符串中都可以用作C语言程序标识符得一组就是() 。?A) prin tB)i\am C)Pxq D)str_l ???oodbs tart$it line# _3d one_half My-〉bookCpp ? pow 10、下面各选项组中,均就是C语言关键字得组就是()。?A)auto,enu m,include B)switch,typedef,continue?C)signed,union,scanf?D)if,s truct,type 11、下列不属于C语言关键字得就是( ) 。 A)default?B)register C)enum ?D)external 12、C语言程序从main()函数开始执行,所以这个函数要写在( )。?A) 程序文件得开始?B)程序文件得最后?C)它所调用得函数得前面 D) 程序文件得任何位置 13、下列关于C语言得叙述错误得就是( ) A)大写字母与小写字母得意义相同?B) 不同类型得变量可以在一个表达式中 C)在赋值表达式中等号(=)左边得变量与右边得值可以就是不同类型?D) 同一个运算符号在不同得场合可以有不同得含义 14、在C语言中,错误得int类型得常数就是( ) 。?A)32768?B)0 C)037?D) 0xAF 15、将字符g赋给字符变量c,正确得表达式就是( )。 A) c=\147 ?B)c="\147" ?C)c='\147' 16、下列转义字符中错误得一个就是( )。 A) ’\000’ B)'\0014' ?C) ’\x111’ D) ’\2’ 17、将空格符赋给字符变量c,正确得赋值语句就是( )。 A) c=’\0’ B) c=NULL C)c=0 D)c=32 18、已知:char a=’\70’;则变量a中()。 A)包含1个字符?B)包含2个字符?C) 包含3个字符?D) 说明非法 19、字符串"\”EOF\n=-\61\””得长度就是( )。 A)8 ?B) 9?C)14?D)非法字符串 ================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。int a=10; printf("%d",a++); A、11 和10 B、11 和11 C、10 和11 D、10 和10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include 年C语言程序设计基础期 末考试试卷‘B’及答案 The following text is amended on 12 November 2020. 一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、 B. C. D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错 误的是( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语 句为( )。 变量说明:float x1,x2; 数据的输入方式:<回车> <回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%,%”,&x1,&x2); D、scanf(“%%”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围 7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次 9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、 x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式 第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。 三、判断题(10道小题,共10分) 1、C 语言具有简洁明了的特点。(1分) 正确 2、预处理命令的前面必须加一个“#”号。(1分) 正确 3、标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项。(1分) 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。(1 分) 正确 5、continue 不是结束本次循环,而是终止整个循环的执行。(1分) 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数(1分) 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递(1分) 正确 8、直接访问就是直接利用变量的地址进行存取直接访问(1分) 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。(1分) 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。(1分) 错误 11、C 语言标准格式输入函数scanf() 的参数表中要使用变量的地址值。(1分) 正确 12、浮点型常量的指数表示中,e 是可以省略的。(1分) 错误 13、任何表达式语句都是表达式加分号组成的。(1分) 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。(1分) 错误 15、do-while循环的while后的分号可以省略。(1分) 错误 16、用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志'\0'。正确 17、C语言函数返回类型的默认定义类型是void(1分) 错误 18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数(1分) 正确 19、枚举类型中的元素都具有一个整型值。(1分) 正确 20、C 语言是一种具有某些低级语言特征的高级语言。(1分) 正确 21、case语句后如没有break,顺序向下执行。(1分)正确 程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); } 【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p 一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy , C语言试题库 一、单项选择 第一章 C语言概述 (1)一个C程序的执行是从 A、本程序的MAIN函数开始,到MAIN 函数结束。 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C、本程序的MAIN函数开始,到本程序的最后一个函数结束。 D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。(2)以下叙述正确的是 A、在C程序中,MAIN函数必须位于程序的最前面。 B、 C程序的每行中只能写一条语句。 C、 C语言本身没有输入输出语句。 D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(3) C语言规定,在一个源程序中,MAIN主函数的位置是在: A、必须在最前面。 B、必须在系统调用的库函数的后面 C、可以在任意位置。 D、必须在最后面 (4)一个C程序是由: A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 (5)以下叙述不正确的是: A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个MAIN函数 C、 C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 第二章数据类型、运算符与表达式 (1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=( i=4, j=16, k=32) A、4 B、16 C、32 D、52 (2)下列四组选项中,均不是C语言键字的选项是 A、define , IF, type B、getc, char, printf C、include, scanf, case E、 if, struct, type (3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,do B、float,1a0, _A C、b-a, goto, int D、_123, temp, INT (4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3 B、3*a*e/bc C、3*a*e/b*c D、a*e/c/b*3 (5)已知各变量的类型说明如下: 精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。 C语言函数题库及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998 第六部分函数 一、单项选择题 1.C语言中的函数返回值的类型是由(D)决定 A.return语句中的表达式B.调用函数的主调函数 C.调用函数时临时D.定义函数时所指定的函数类型 2.下面不正确的描述是(B)。 A.调用函数时,实参可以是表达式 B.调用函数时,实参和形参可以共用内存单元 C.调用函数时,将形参分配内存单元 D.调用函数时,实参与形参的类型必须一致 3.在C语言中,调用一个函数时,实参变量和形参变量之间的数据传递是 (D) A.地址传递B.值传递 C.由实参传递给形参,并由形参传回给实参D.由用户指定传递方式 4.下面的函数调用语句中含有(A)个实参 inta,b,c; intsum(intx1,intx2); …… total=sum((a,b),c); A.2B.3C.4 D.5 5.在C语言中(C) A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义和调用均不可以嵌套 C.函数的定义不可以嵌套,但是函数的调用可以嵌套 D.函数的定义和调用均可以嵌套 6.关于C语言中的return语句正确的是(C) A.只能在主函数中出现 B.在每个函数中都必须出现 C.可以在一个函数中出现多次 D.只能在除主函数之外的函数中出现 7.两个形参中,第一个形参为指针类型、第二个形参为整型,则对函数形参的说明有错误的是(D) (floatx[],intn) (float*x,intn) (floatx[10],intn) (floatx,intn) 8.在C语言中,函数的数据类型是指(A) A.函数返回值的数据类型 B.函数形参的数据类型 C.调用该函数时的实参的数据类型 D.任意指定的数据类型 9.已知如下定义的函数: fun1(a) {printf("\n%d",a); } 则该函数的数据类型是(C) C语言编程基础考试试题 文档名称文档密级 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C 语言的标 准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐, X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main() { char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数 中的成对括号构成的代码) 4、设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) 1 文档名称文档密级 pulPtr = pulArray; *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10 课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】 三、判断题(10道小题,共10分) 1、c语言具有简洁明了的特点。 正确 2、预处理命令的前面必须加一个“#”号。正确 3、标准格式输入函数seanf()可以从键盘上接收不同数据类型的数据项。 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{} 括起来组成一个复合语句。 正确 5、continue不是结束本次循环,而是终止整个循环的执行。 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递 正确 8、直接访问就是直接利用变量的地址进行存取直接访问 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。 错误 11、C语言标准格式输入函数scanfO的参数表中要使用变量的地址值。 正确 12、浮点型常量的指数表示中,6是可以省略的。 错误 13、任何表达式语句都是表达式加分号组成的。 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。 错误 15、do-while循环的while后的分号可以省略。 错误 16、用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志'\0'。 正确 17、C语言函数返回类型的默认定义类型是void( 错误 18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数正确 19、枚举类型中的元素都具有一个整型值。 正确 20、C语言是一种具有某些低级语言特征的高级语言。 正确 21、c ase语句后如没有break,顺序向下执行。正确 22、d o-while循环至少要执行一次循环语句。正确 C语言理论上机考试选择题部分(共200题,仅针对11级定向专业) 1、下面程序的输出是___D______ #include<> void main() { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是________D____. A) true B) 非零值 C) 0 D) 1 5、C语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC码 D) ASCII码 7、C语言程序的基本单位是_____C______.A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句a+=a-=a*a后,a的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include<> void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include<> void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include<> void main() {int x=10,y=3; printf("%d\n",y=x/y); } 国家二级C语言机试(C语言基础知识)模拟试卷8 (总分:60.00,做题时间:90分钟) 一、选择题(总题数:30,分数:60.00) 1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是 (分数:2.00) A.一条C语句可能会被转换成多条机器指令 B.一条C语句对应转换成一条机器指令√ C.一条C语句可能会被转换成零条机器指令 D.某种类型和格式的C语句被转换成机器指令的条数是固定的 解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。 2.以下选项中不属于C语言程序运算符的是 (分数:2.00) A.sizeof B.() C.<> √ D.&& 解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。而<>不是C语言的运算符,C语言中!=表示不等于。 3.若变量已正确定义并赋值,以下不能构成C语句的选项是 (分数:2.00) A.A=a+b: B.B++; C.a=a+b √ D.A?a:b; 解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。 4.以下叙述中正确的是 (分数:2.00) A.程序必须包含所有三种基本结构才能成为一种算法 B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达 C.只有简单算法才能在有限的操作步骤之后结束 D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令√ 解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来捕述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。 5.下列选项中,不能用作标识符的是 (分数:2.00) A._1234 B._1_2 C.int_2_ D.2_int_ √ 解析:解析:C语言中标以符必须以字母或者下划线开始,选项D)中是以数字开始的不能作为标识符。6.以下选项中作为C语言合法常量的是 (分数:2.00) A.-80.√ B.-080C语言题库及答案
C语言程序设计基础试题及答案
大学c语言考试题库含答案
C语言考试题库及答案复习整理
年C语言程序设计基础期末考试试卷‘B’及答案
C语言试题及答案
(完整版)C语言考试题库之判断题(2)
C语言程序设计程序填空题库及答案
C语言考试试题基础版
C语言试题库(完整版)
大学C语言考试题库及答案
C语言函数题库及答案
C语言编程基础考试试题
c语言期末测试题(附答案)
C语言考试题库之判断题[1]_共5页
历年C语言考试题库及答案
国家二级C语言机试(C语言基础知识)模拟试卷8