C语言复习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、判断或填空

1、[ ] 数组的定义时下标不能是变量,在引用时可以是变量。

2、[ ] 在函数传值调用时,实在参数可以是常量、变量、表达式。

3、[ ] a-=7; 等价于a=a-7; 。

4、[ ] 用scanf()函数可以对结构变量整体进行。

5、[ ] 静态局部变量的作用范围是该函数或分程序。

6、[ ] C语言没有提供单目运算。

7、[ ] main()函数不允许带形式参数。

8、[ ] 结构与联合的主要区别是其变量的成员调用方式不同。

9、[ ] C对磁盘文件的读写是通过“流”来进行的。

10、[ ]同类型的两个结构变量可以整体直接赋值。

11、[ ] C语言没有提供单目运算。

12、[ ] 在函数传址调用时,实在参数可以是常量、变量、表达式。

13、设变量定义为 int a[3]={1,4,7},*p=&a[2];则*p的值是。

14、表示条件:10

15、在编译时出现statement missing ; in function main表示错误。

16、C语言的数组元素的下标是从开始的。

17、若有代数式3ae/bc,则正确的c语言表达式是。

18、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式。

19、在编译时出现undefined symbol ‘x0’ in function main表示错误。

20、有定义int a=1,b=3; 输出格式为a=1,b=3的语句是:。

21、有定义int arry[2][3]={1,2,3,4,5,6} 表示arry[1][2]元素的其它两种方式为:

22、为表示关系x≥y≥z,应使用C语言表达式为。

23、设变量定义为 int a[3]={1,4,7},*p=&a[2];则*p的值是。

24、若有代数式3xy/bc,则正确的c语言表达式是。

25、有下列结构体struct student { int m; float n; }stu, *p;,且p=&stu对该结构体变量stu的成员n的引用的两种方式有和。

26、有定义int a=1,b=3; 输出格式为a=1,b=3的语句是:。

27、有定义int td[2][3]={1,2,3,4,5,6} 表示td[i][j]元素的其它两种方式为:

28、为表示关系x ≥y ≥z,应使用C 语言表达式为 。

29、一个C 语言程序由若干个函数构成,必须有一个 函数。

30、若 int x=10;printf("%3d",x);输出结果为:

31、已知int i=1, x=5; while(i){x+ +; - - i;} 执行上述代码后 x 应该为

32、若float a[3]={1,2,3}, *ap; ap=a; 则a[2]使用指针可以表达为:

33、 若struct student{ int num; char name[20]; float score; }stu1, *sp; 使用指针sp 给stu1赋初值使得stu1.num=3,="LiSan",且 stu1.score=99.实现上述的键盘输入语句应该为

34、若 int a=10; float b=1.1; 输出a, b 格式的语句应该为:

35、能描述x>10 或者0

36、若char ch[20]="Xiangtan"; 执行 printf("%d",strlen(ch)); 结果是:

37、若int a[10]={1,2,3,4,5,6,7,8,9,0}, *ap; ap=&a[1]; 则*(ap+5)的值

应该为

38、若struct student{ int num; char name[20]; float score; }stu1={18,

"LiFeng",59};

输出stu1的所有成员的语句应为

二、算法描述

1、打印99乘法表。

2、输入一个人的年龄,输出是青年(<30)、中年(30~50)还是老年(>50)?

3、计算

三、设计首部(只要写出函数首部,不要写实现细节,不要写调用)

1、函数求已知勾股的弦。

2、函数给一个已知整数组排序,数组及数组的个数有调用者给出。

3、函数判断一个一元二次方程是否有实根,有的话返回1和两个实根,没有则返回0。

4、函数接受一行文字,找出其中大写字母、小写字母、数字字符各有多少?

5、函数开一个窗口,窗口的大小和颜色由调用者给出。

6、函数判断一个整数是否为素数。

7、函数在链表的num 成员中寻找与所给的数相等的节点,并删除该节点。 (结构为 struct stu{ int num; struct stu *next})

8、函数产生一个数组及数组的大小给调用者。

9、函数求出两个非零正整数的最大公约数。

11、函数为一个大于等于6的偶数寻找两个素数, 这两个素数之和等于该偶数∑100

12∑=1001i i

(这是著名的哥德巴赫猜想1+1=2)。

12、函数判断一个整数是否为素数。

13、函数实现对具有n个元素的数组按从小到大的顺序进行排序。

14、函数求已知勾股的弦。

15、函数判断一个一元二次方程是否有实根,有的话返回1和两个实根,无根返回0。

16、函数给一个已知整数组排序,数组及数组的个数有调用者给出。

四、编程题

1、用递归编写程序求 F=(n+m)!+n!

2、用radom函数产生20个随机数,并输出,再按从大到小排序,后输出。

3、由1,2,3,4,5组成的五位数(数字不重复),共有120个,由小到大排列,12345是第一个,54321是最后一个,编程输出所有符合条件的数。

4、用命令行方式编写程序,显示文本文件内容,文件名由命令行给出。

5、打印输出99乘法表。

6、输出1000以内个位数为6且能被3整除的所有数。

7、编程求出1000以内的素数个数

8、编写程序显示文本文件d:\myfile.txt内容。

9、用random函数随机生产一个3*4的矩阵和一个4*3的矩阵,计算它们的乘积。

10、已知:F(0)=F(1)=1,F(2)=0,F(N)=F(N-1)-2F(N-2)+F(N-3) (N>2)编程计算F(0)到F(50)中的最大数。

11、用递归编写程序求 F=n!

12、输入三个整数x,y,z,请把这三个数由小到大输

13、输入一个正整数,判断该数是奇数还是偶数。

14、从键盘上输入一个四位整数,输出他们的各位数字之和。

15、求10!。

16、某歌手大赛,共有10个评委给歌手打分,分数采用百分制,去掉一个最高分,去掉一个最低分,然后取平均分,得到歌手的成绩。编程序实现。

17、用random函数产生20个随机数,并输出,再按从大到小排序,后输出

18、把一个字符串逆序输出。

19、计算随机生产一个3*4的矩阵和一个4*3的矩阵,计算它们的乘积。

20、随机产生10个数,实现排序输出(用指针实现)

21、输入一行文字,找出其中大写字母、小写字母、空格、数字以及其他字符各有多少?

相关文档
最新文档