C语言复习习题及答案.ppt





《C语言复习习题及答案.ppt》由会员分享,可在线阅读,更多相关《C语言复习习题及答案.ppt(85页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数组数组 习题习题 单项选择题单项选择题单项选择题单项选择题 1 1在下列数组定义、初始化或赋值语句中,正确的是在下列数组定义、初始化或赋值语句中,正确的是.A A)int a8;a8=100;int a8;a8=100;B B)int x5=1,2,3,4,5,6;int x5=1,2,3,4,5,6;C C)int x=1,2,3,4,5,6;Dint x=1,2,3,4,5,6;D)int n=8;int scoren;int n=8;int scoren;2 2若已有定义:若已有定义:int i,a100;int i,a100;则下列语句中,不正确的是则下列语句中,不正确的是.A A)
2、for(i=0;i100;i+)ai=i;for(i=0;i100;i+)ai=i;B B)for(i=0;i100;i+)scanf(%d,&ai);for(i=0;i100;i+)scanf(%d,&ai);C C)scanf(%d,&a);scanf(%d,&a);D D)for(i=0;i100;i+)scanf(%d,a+i);for(i=0;i100;i+)scanf(%d,a+i);CC 返回目录数组数组 习题习题 单项选择题单项选择题单项选择题单项选择题 3 3与定义与定义char c=GOOD;char c=GOOD;不等价的是不等价的是.A A)char c=G,O,O,D
3、,0;char c=G,O,O,D,0;B B)char c=GOOD;char c=GOOD;C C)char c4=GOOD;char c4=GOOD;D D)char c5=G,O,O,D,0;char c5=G,O,O,D,0;4 4若已有定义:若已有定义:char c8=GOOD;char c8=GOOD;则下列语句中,不正确的则下列语句中,不正确的是是.A A)puts(c);puts(c);B B)for(i=0;ci!=0;i+)printf(%c,ci);for(i=0;ci!=0;i+)printf(%c,ci);C C)printf(%s,c);printf(%s,c);
4、D D)for(i=0;ci!=0;i+)putchar(c);for(i=0;ci!=0;i+)putchar(c);CD数组数组 习题习题 单项选择题单项选择题单项选择题单项选择题 5 5若定义若定义a 3=0,1,2,3,4,5,6,7;a 3=0,1,2,3,4,5,6,7;则则a a数组中行的大小是数组中行的大小是.A A)2 2B B)3 3C C)4 4D D)无确定值无确定值6 6以下程序的运行结果是以下程序的运行结果是.#include#include void f(int b )void f(int b )int i=0;int i=0;while(bi=10)while(
5、bi=10)bi+=2;bi+=2;i+;i+;A A)2 7 12 11 13 9 2 7 12 11 13 9 B B)1 7 12 11 13 7 1 7 12 11 13 7C C)1 7 12 11 13 9 1 7 12 11 13 9 D D)1 7 12 9 13 7 1 7 12 9 13 7BBmain()main()int i,a=1,5,10,9,13,7;int i,a=1,5,10,9,13,7;f(a+1);f(a+1);for(i=0;i6;i+)for(i=0;i6;i+)printf(%4d,ai);printf(%4d,ai);数组数组 习题习题 单项选择
6、题单项选择题单项选择题单项选择题 7 7若执行以下程序段,其运行结果是若执行以下程序段,其运行结果是.char c=a,b,0,c,0;char c=a,b,0,c,0;printf(%sn,c);printf(%sn,c);A A)ab cab c B B)ababC C)abcabcD D)abab8 8数组名作为参数传递给函数,作为实际参数的数组名被处理为数组名作为参数传递给函数,作为实际参数的数组名被处理为.A A)该数组长度)该数组长度 B B)该数组元素个数)该数组元素个数C C)该函数中各元素的值)该函数中各元素的值D D)该数组的首地址)该数组的首地址1111当接受用户输入的含
7、空格的字符串时,应使用函数当接受用户输入的含空格的字符串时,应使用函数.A A)scanf()Bscanf()B)gets()Cgets()C)getchar()D getchar()D)getc()getc()DDB数组数组 习题习题 单项选择题单项选择题单项选择题单项选择题 9 9执行下面的程序段后,变量执行下面的程序段后,变量k k中的值为中的值为.int k=3,s2=1;int k=3,s2=1;s0=k;s0=k;k=s1*10;k=s1*10;A A)不定值)不定值B B)33 33C C)30 30 D D)0 01010在定义在定义int a54;int a54;之后;对之后
8、;对a a的引用正确的是的引用正确的是.A A)a24a24B B)a50 a50 C C)a00a00D D)a0,0a0,0DC数组数组 习题习题 程序填空题程序填空题程序填空题程序填空题 1 1以下程序用来检查二维数组是否对称(即:对所有以下程序用来检查二维数组是否对称(即:对所有i i,j j都有都有aij=ajiaij=aji)。)。#include#include main()main()int a44=1,2,3,4,2,2,5,6,3,5,3,7,8,6,7,4;int a44=1,2,3,4,2,2,5,6,3,5,3,7,8,6,7,4;int i,j,found=0;in
9、t i,j,found=0;for(j=0;j4;j+)for(j=0;j4;j+)for(i=0;i4;i+)for(i=0;i4;i+)if (_)if (_)found=_;found=_;break;break;if(found)break;if(found)break;if(found)if(found)printf(printf(不对称不对称n);n);else else printf(printf(对称对称n);n);aij!=aji1数组数组 习题习题 程序填空题程序填空题程序填空题程序填空题 2 2以下程序是用来输入以下程序是用来输入5 5个整数,并存放在数组中,找出最大数与
10、最小数所在的下标位置,个整数,并存放在数组中,找出最大数与最小数所在的下标位置,并把两者对调,然后输出调整后的并把两者对调,然后输出调整后的5 5个数。个数。#include#include main()main()int a5,t,i,maxi,mini;int a5,t,i,maxi,mini;for(i=0;i5;i+)for(i=0;i5;i+)scanf(%d,&ai);scanf(%d,&ai);mini=maxi=_mini=maxi=_【3 3】_;_;for(i=1;i5;i+)for(i=1;iamaxi)_if(aiamaxi)_【5 5】_;_;printf(print
11、f(最小数的位置是最小数的位置是:%3dn,mini);:%3dn,mini);printf(printf(最大数的位置是最大数的位置是:%3dn,maxi);:%3dn,maxi);t=amaxi;_t=amaxi;_【6 6】_;_;amini=t;amini=t;printf(printf(调整后的数为调整后的数为:);:);for(i=0;i5;i+)for(i=0;iaimaxi=iamaxi=amini数组数组 习题习题 程序填空题程序填空题程序填空题程序填空题 3 3给定一给定一3 x 43 x 4的矩阵,求出其中的最大元素值,及其所在的行列号:的矩阵,求出其中的最大元素值,及其
12、所在的行列号:main()main()int i,j,row=0,colum=0,max;int i,j,row=0,colum=0,max;static int a34=1,2,3,4,9,8,7,6,10,-10,-4,4;static int a34=1,2,3,4,9,8,7,6,10,-10,-4,4;_【7 7】_;_;for(i=0;i=2;i+)for(i=0;i=2;i+)for(j=0;j=3;j+)for(j=0;jmax)max=aij;row=i;colum=j;数组数组 习题习题 程序填空题程序填空题程序填空题程序填空题 4 4下述函数用于确定给定字符串的长度,请完
13、成程序。下述函数用于确定给定字符串的长度,请完成程序。strlen(char s )strlen(char s )int i=0;int i=0;while(_while(_【1010】_)+i;_)+i;return(_return(_【1111】_);_);si!=0i数组数组 习题习题 程序填空题程序填空题程序填空题程序填空题 5 5以下程序的功能是从键盘上输入若干个字符(以回车键作为结束)以下程序的功能是从键盘上输入若干个字符(以回车键作为结束)组成一个字符数组,然后输出该字符数组中的字符串,请填空!组成一个字符数组,然后输出该字符数组中的字符串,请填空!#include#includ
14、emain()main()char str81;char str81;int i;int i;for(i=0;i80;i+)for(i=0;i80;i+)stri=getchar();stri=getchar();if(stri=n)break;if(stri=n)break;stri=0;stri=0;_【1212】_;_;while(stri!=0)putchar(_while(stri!=0)putchar(_【1313】_);_);i=0stri+数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 1 1写出下列程序的运行结果并
15、分析之:写出下列程序的运行结果并分析之:#include#include main()main()static int a45=1,2,3,4,0,2,2,0,0,0,3,4,5,0,0,6,0,0,0,0;static int a45=1,2,3,4,0,2,2,0,0,0,3,4,5,0,0,6,0,0,0,0;int j,k;int j,k;for(j=0;j4;j+)for(j=0;j4;j+)for(k=0;k5;k+)for(k=0;k5;k+)if(ajk=0)break;if(ajk=0)break;printf(%d,ajk);printf(%d,ajk);printf(n)
16、;printf(n);数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 2 2写出下列程序的运行结果并分析之:写出下列程序的运行结果并分析之:#include#include main()main()int a66,i,j;int a66,i,j;for(i=1;i6;i+)for(i=1;i6;i+)for(j=1;j6;j+)for(j=1;j6;j+)aij=i*j;aij=i*j;for(i=1;i6;i+)for(i=1;i6;i+)for(j=1;j6;j+)for(j=1;j6;j+)printf(%-4d ,aij);
17、printf(%-4d ,aij);printf(n);printf(n);数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 3 3写出下列程序的运行结果并分析之:写出下列程序的运行结果并分析之:#include#include main()main()int a=1,2,3,4,i,j,s=0;int a=1,2,3,4,i,j,s=0;j=1;j=1;for(i=3;i=0;i-)for(i=3;i=0;i-)s=s+ai*j;s=s+ai*j;j=j*10;j=j*10;printf(s=%dn,s);printf(s=%dn,
18、s);数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 4 4写出下列程序的运行结果并分析之:写出下列程序的运行结果并分析之:#include#include main()main()int a=0,2,5,8,12,15,23,35,60,65;int a=0,2,5,8,12,15,23,35,60,65;int x=15,i,n=10,m;int x=15,i,n=10,m;i=n/2+1;i=n/2+1;m=n/2;m=n/2;while(m!=0)while(m!=0)if(xai)i=i-m/2-1;m=m/2;if(xa
19、i)i=i+m/2+1;m=m/2;if(xai)i=i+m/2+1;m=m/2;elseelsebreak;break;printf(place=%d,i+1);printf(place=%d,i+1);数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 5 5写出下列程序的运行结果并分析之:写出下列程序的运行结果并分析之:#include#include main()main()int a=1,2,3,4,i,j,s=0;int a=1,2,3,4,i,j,s=0;j=1;j=1;for(i=3;i=0;i-)for(i=3;i=0
20、;i-)s=s+ai*j;s=s+ai*j;j=j*10;j=j*10;printf(s=%dn,s);printf(s=%dn,s);数组数组 习题习题 阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果阅读程序并写出运行结果 6 6写出下列程序的运行结果并分析之:写出下列程序的运行结果并分析之:#include#include main()main()char str=1a2b3c;char str=1a2b3c;int i;int i;for(i=0;stri!=0;i+)for(i=0;stri!=0;i+)if(stri=0&stri=0&stri=9)printf(
21、%c,stri);printf(%c,stri);printf(n);printf(n);数组数组 习题习题 编程题编程题编程题编程题 1 1编一程序用简单选择排序方法对编一程序用简单选择排序方法对1010个整数排序(从大到小)。排序思路为:首个整数排序(从大到小)。排序思路为:首先从先从n n个整数中选出值最大的整数,将它交换到第一个元素位置,再从剩余的个整数中选出值最大的整数,将它交换到第一个元素位置,再从剩余的n-1n-1个个整数中选出值次大的整数,将它交换到第二个元素位置,重复上述操作整数中选出值次大的整数,将它交换到第二个元素位置,重复上述操作n n次后,排序次后,排序结束。结束。2
22、 2编写一程序,实现两个字符串的连接(不用编写一程序,实现两个字符串的连接(不用strcat()strcat()函数)。函数)。3 3编写一个把字符串转换成浮点数的函数。编写一个把字符串转换成浮点数的函数。4 4若有说明:若有说明:int a34int a34 1,2,3,4,5,6,7,8,9,10,11,1,2,3,4,5,6,7,8,9,10,11,12 12 ;现要将;现要将a a的行和列的元素互换后存到另一个二维数组的行和列的元素互换后存到另一个二维数组b b中。试编程。中。试编程。5 5n n皇后问题:在皇后问题:在n*nn*n的方阵棋盘上,试放的方阵棋盘上,试放n n个皇后,每放
23、一个皇后,必须满足该个皇后,每放一个皇后,必须满足该皇后与其它皇后互不攻击(即不在同一行、同一列、同一对角线上),求出所有可皇后与其它皇后互不攻击(即不在同一行、同一列、同一对角线上),求出所有可能解。能解。6 6背包问题:有一个背包,能装入的物品总重量为背包问题:有一个背包,能装入的物品总重量为S S,设有,设有N N件物品,其重量分别件物品,其重量分别为为W1W1,W2W2,WNWN。希望从。希望从N N件物品中选择若干件物品,所选物品的重量之和恰能件物品中选择若干件物品,所选物品的重量之和恰能放入该背包,即所选物品的重量之和等于放入该背包,即所选物品的重量之和等于S S。试编程求解。试编
24、程求解。数组数组 习题习题 编程题编程题编程题编程题 参考源码:参考源码:参考源码:参考源码:函数习题函数习题 单项选择题单项选择题单项选择题单项选择题 1)1)C C语言中函数形参的缺省存储类型是语言中函数形参的缺省存储类型是 .2)2)A A)静态)静态(static)(static)B B)自动)自动(auto)(auto)3)3)C C)寄存器)寄存器(register)D(register)D)外部)外部(extern)(extern)2)2)函数调用语句函数调用语句function(exp1,exp2),18)function(exp1,exp2),18)中含有的实参个中含有的实参
25、个数为数为.A A)0 0 B B)1 1 C C)2 2D D)3 3BC 返回目录函数习题函数习题 单项选择题单项选择题单项选择题单项选择题 3)3)下面函数返回值的类型是下面函数返回值的类型是 .square(floatsquare(float x)x)return x*x;return x*x;A A)与参数)与参数x x的类型相同的类型相同B B)是)是voidvoid型型C C)无法确定)无法确定 D D)是)是intint型型4)4)C C语言规定,程序中各函数之间语言规定,程序中各函数之间 .A A)不允许直接递归调用,也不允许间接递归调用)不允许直接递归调用,也不允许间接递归
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习 习题 答案

限制150内