C语言题目Word文档下载推荐.docx
《C语言题目Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言题目Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
F'
}
则正确的是(D)
A、A和B完全相同B、A和B只是长度相同
C、A和B不同,A为指针数组D、A数组比B数组长
6.以下错误的是(B)
A、宏替换只是字符替换
B、宏名必须用大写字母
C、宏替换是在预处理时进行的
D、程序中引用常参数的宏时,对参数的数据类型无限制
7.对于如下数据定义:
floatx,y;
为使x和y分别为1.23和4.56,输入如下内容:
x=1.23y=4.56<
回车>
则正确的scanf调用是(D)
A、scanf(“%f%f”,&
x,&
y)
B、scanf(“%f,%f”,&
C、scanf(“x=%fy=%f”,&
x,&
D、scanf("
x=%f,y=%f"
&
8、以下共同体类型和变量的定义,正确的是(C)
A、unionstudent
{intnumber,
charname[20],
}s;
B、union
{intnumber,
C、unionstudent
{intnumber;
charname[20];
D、unionstudent
{intnumber;
};
s;
★.以下结构体类型和变量的定义,正确的是(C)
A、structstudent
{intnumber,
charname[20];
}s;
B、struct
charname[20],
s
C、structstudent
{intnumber;
D、structstudent
charname[20];
9.已知字母a的ASCⅡ十进制代码为97,则执行以下语句
后输出为(C)
chara='
a'
;
a--;
printf("
%d,%c\n"
a+"
2"
-"
0"
a+"
3"
)
A、b,cB、运算不合法,有语法错误
C、98,cD、格式描述和输出项不匹配,输出无定值
[%d输出数值,%c输出字符]
10.在以下运算符中,优先级最高的是(C)
A、?
;
B、++C、&
&
D、+=
11.intj;
floaty;
charname[50]
当执行以下C语句时
scanf(“%2d%f%2s”,&
j,&
y,name);
输入以下字符:
55566777%
则y的值是(C)
A、55566.0B、777.0C、566.0D、566777.0
12.关于下面的程序判断
#defineA,3
#defineB(a)((A+1)*a)
intx;
x=3*(A+B(7));
正确的是(B)
A、程序错误,不允许嵌套宏定义
B、x值为93
C、x值为21
D、程序错误,宏定义不允许有参数
13.选出正确的赋值语句(C),设charb[5],*P=b;
A、b="
abcd"
B、"
C、P="
D、*P"
14.以下对二维数组a的正确说明是(A)
A、inta[][3]={0};
B、inta[3][]={{1},{2},{3}};
C、inta[1][3]={1,2,3,4};
D、inta[2][3]={{1,2},{3,4},{5,6}};
[行数可以空,列数不可]
15.合法的实型常量是(D)
A、123eB、3e-0.5C、e3D、-2.0e-2
16.下列关于switch语句和break语句的说法中,正确的是(B)
A、break语句时switch语句中的一部分
B、在switch语句中可以按需要使用或不使用break语句
C、在switch语句中必须使用break语句
D、以上三个结论中有两个正确
17.以下for循环(B)
for(x=0,y=0;
(y!
=123)&
(x<4);
x++);
A、执行三次
B、执行四次
C、循环次数不定
D、无限循环
二、填空
1.定义intx=10,y,z,执行y=z=x,x=y=z后,变量x的值为1
2.charstr[20],str=“string”这种字符串赋值方式是1的(正确填“1”,错误填“0”)
3.构成数组的各元素必须具有相同的数据类型
4.C语言三种基本程序结构是顺序、选择和循环
5.表达式(1/2)*10.0的值为0
6.将一维数组x的第i个元素的地址赋给指针变量P的语句为P=&
x[i]
7.定义inti=1,执行while(i++<5)后i的值为6
8.设a=7,b=6,c=5,写出表达式(a+b)>(c*c)&
b的值是0
9.在C语言程序中,函数的形参的存储类别是auto型
10.执行下列语句char,s[4]="
DEF"
*P,P=s后,*(P+3)的值是10
11.若整型变量a=5,b=4,c=3,则a>b‖b>c为1
12.已知a=3,b=5,c=7,则b>c?
b:
a为3
13.字符串“ab\034\\\679”的长度为5个字符
[a占一字符;
b占一字符;
\0**表示十六进制数,占一字符;
\\占一字符;
\***表示八进制数,占一字符:
共5个字符]
14.以下程序片段输出为4,4
inta=3,*P=&
a;
(*P)++;
printf("
%d%d"
a,*P);
三、程序填空(不考此题型)
输出由数字组成的三角图案,行数n从键盘输入,如果行数n为6,则图案如图:
AAAAAA
BBBBB
CCCC
DDD
EE
F
#include<
stdio.h>
main()
{
inti,j,n;
Pleaseinputnumberofrows:
"
);
scanf("
%d"
n);
for(i=0;
i<n;
i++)
{
for(j=n;
j>i,j--)
putchar('
+i);
putchar('
\n'
4、阅读理解
1.#include<
intx=5;
main()
{intx=10;
fun(x);
x);
}
fun(intx)
x=15;
return;
输出结果为:
10
2.main()
{staticintx[]=(10,7,5,8);
ints,i,p;
s=1,p=x
for(i=0;
i<
4;
s*=*(p+i);
%d\n"
s)
10,70,35,40
3.main()
staticintx[]={5,9,28,67}
ints,*P;
s=0;
for(P=x;
P<
x+3;
P++)
s+=1/(*P)
printf("
}
4.inti=2;
{inti=5;
sub1(),sub1();
sub2(),sub2();
printf("
i);
sub1()
{staticinti=6;
i++;
%d,"
sub2()
{inti=3;
i++;
7,8,4,4
5、简答题
1.什么是算术运算、关系运算、逻辑运算
2.描述函数结构的组成,举例
3.C语言中对标识符的定义有什么要求
4.while语句和do-while语句的区别,for语句呢?
5.break语句的作用,举例
6.逗号表达式的运算规则
7.C语言如何表示“真”or“假”?
系统如何判断一个量的“真”or“假”
8.C程序基本结构有哪些,相应的有什么特点
9.continue语句的作用是什么,请举例
10.变量的存储类别及各自的特点
6、程序设计题
1、求2X2+bX+c=0的根,其中要考虑Δ的三种情况
2、编程计算1-1/2+1/4-1/6+1/8-·
·
+1/2n,(n由键盘输入)
3、输入整数n(0<
n<
99999),计算其各位数字的平均数
4、编程实现将文件C:
\DOS\A.DAT中的字符串按ASCⅡ玛的值由小到大排序的结果写入文件C:
\DOS\B.DAT中
5、求100~200间的全部素数
6、有一个3×
4矩阵,编程求最大值元素的值
7、编程打印出下列图案(n行,n需要输入)
*
**
***
****
8、从键盘中输入10个数,按由大到小顺序输出
9、递归法求n!
10、输出Fibonacci数列前20项
11、编程打印(共n行)
1
11
111
1111
12、输入5个实数,去掉最大值和最小值,求平均数
(结果保留一位小数)
13、将数组a中10个整数逆序排列