c语言习题汇总610章.docx
- 文档编号:3012872
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:26
- 大小:30.71KB
c语言习题汇总610章.docx
《c语言习题汇总610章.docx》由会员分享,可在线阅读,更多相关《c语言习题汇总610章.docx(26页珍藏版)》请在冰豆网上搜索。
c语言习题汇总610章
习题(第6章)
1.选择题
(1)若有以下数组说明,则数值最小的和最大的元素下标分别是()。
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
A.1,12B.0,11C.1,11D.0,12
(2)若有以下说明,则数值为4的表达式是()。
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc=’a’,d,g;
A.a[g-c]B.a[4]C.a['d'-'c']D.a['d'-c]
(3)设有定义:
chars[12]="string";则printf("%d\n",strlen(s));的输出是()。
A.6B.7C.11D.12
(4)设有定义:
chars[12]="string";则printf("%d\n",sizeof(s));的输出是()。
A.6B.7C.11D.12
(5)合法的数组定义是()。
A.chara[]="string";B.inta[5]={0,1,2,3,4,5};
C.chara="string";D.chara[]={0,1,2,3,4,5}
(6)合法的数组定义是()。
A.inta[3][]={0,1,2,3,4,5};B.inta[][3]={0,1,2,3,4};
C.inta[2][3]={0,1,2,3,4,5,6};D.inta[2][3]={0,1,2,3,4,5,};
(7)函数调用strcat(strcpy(str1,str2),str3);的功能是()。
A.将字符串str1复制到字符串str2中后再连接到字符串str3之后
B.将字符串str1连接到字符串str2之后再复制到字符串str3之后
C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后
D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中
(8)有字符数组定义如下,则不能比较a,b两个字符串大小的表达式是()。
chara[]="abcdefg",b[]="abcdefh";
A.strcmp(a,b)==0B.strcmp(a,b)>0
C.strcmp(a,b)<0D.a
(9)设有如下定义,则正确的叙述为()。
charx[]="abcdefg";
chary[]={'a','b','c','d','e','f','g'};
A.数组x和数组y等价B.数组x和数组y长度相同
C.数组x的长度大于数组y的长度D.数组x的长度小于数组y的长度
(10)设有二维数组定义如下,则不正确的元素引用是()。
inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
A.a[2][3]B.a[a[0][0]][1]C.a[7]D.a[2]['c'-'a']
2.填空题
(1)C语言中,数组的各元素必须具有相同的,元素的下标下限为,但在程序执行过程中,不检查元素下标是否。
下标必须是正整数、0、或者。
(2)C语言中,数组在内存中占一片的存储区,由代表它的首地址。
数组名是一个常量,不能对它进行赋值运算。
(3)执行intb[5],a[][3]={1,2,3,4,5,6};后,b[4]=,a[1][2]=。
(4)设有定义语句chara[10]="abcd";则a[3]值为,a[5]值为。
(5)若在程序中用到putchar()函数,应在程序开头写上包含命令,若在程序中用到strlen()函数,应在程序开头写上包含命令。
(6)下面程序的功能是输出数组s中最大元素的下标,请填空。
#include
voidmain()
{
intk,p;
ints[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++)
if(s[p]>s[k]);
printf("%d\n",k);
}
(7)下面程序在a数组中查找与x值相同的元素所在位置,数据从a[1]元素开始存放,请填空。
#include
voidmain()
{
inta[11],i,x;
printf("输入10个整数:
");
for(i=1;i<=10;i++)
scanf("%d",&a[i]);
printf("输入要找的数x:
");
scanf("%d",);
a[0]=x;i=10;
while(x!
=);
if()
printf("与x值相同的元素位置是:
%d\n",i);
else
printf("找不到与x值相同的元素!
\n");
}
(8)下面程序的功能是将一个字符串str的内容颠倒过来,请填空。
#include"string.h"
voidmain()
{
inti,j,;
charstr[]="1234567";
for(i=0,j=str1en(str);;i++,j--)/*头尾交换,直到中间*/
{k=str[i];str[i]=str[j];str[j]=k;}
puts(str);
}
(9)从键盘输入一串字符,下面程序能统计输入字符中各个大写字母的个数。
用#号结束输入,请填空。
(该程序利用了字符的ASCII码和整数的对应方法,数组c的下标为0到25,当输入为ca='A'则ca-65=0,c[0]的值加1,依此类推。
而输出时c[i]的下标i+65正好又是相应的字母。
)
#include
voidmain()
{
intc[26],i;charca;
for(i=0;i<26;i++)c[i]=;
scanf("%c",&ca);
while()
{
if((ca>='A')&&(ca<='Z'))c[ca-65]+=;
;
}
for(i=0;i<26;i++)
if(c[i])printf("%c:
%d个\n",i+,c[i]);
}
3.程序阅读题
(1)阅读程序,写出运行结果。
#include
voidmain()
{
inta[6]={12,4,17,25,27,16},b[6]={27,13,4,25,23,16},i,j;
for(i=0;i<6;i++)
{
for(j=0;j<6;j++)
if(a[i]==b[j])break;
if(j<6)printf("%d",a[i]);
}
printf("\n");
}
(2)阅读程序,写出运行结果。
#include
voidmain()
{
chara[8],temp;intj,k;
for(j=0;j<7;j++)
a[j]='a'+j;
a[7]='\0';
for(j=0;j<3;j++)
{
temp=a[6];
for(k=6;k>0;k--)
a[k]=a[k-1];
a[0]=temp;
printf("%s\n",a);
}
}
(3)阅读下列程序,写出程序运行的输出结果。
#include
#include
voidmain()
{
inti;
charstr1[]="*******";
for(i=0;i<4;i++)
{
printf("%s\n",str1);
str1[i]='';
str1[strlen(str1)-1]='\0';
}
}
(4)阅读下列程序,写出程序运行的输出结果。
#include
voidmain()
{
inta[8]={1,0,1,0,1,0,1,0},i;
for(i=2;i<8;i++)
a[i]+=a[i-1]+a[i-2];
for(i=0;i<8;i++)
printf("%d",a[i]);
printf("\n");
}
(5)写出下列程序的运行结果。
#include
voidmain()
{
chara[]={'*','*','*','*','*'};
inti,j,k;
for(i=0;i<5;i++)
{
printf("\n");
for(j=0;j
for(k=0;k<5;k++)printf("%c",a[k]);
}
}
4.程序设计题
(1)编程序。
输入单精度型一维数组a[10],计算并输出a数组中所有元素的平均值。
(2)求一个3×3矩阵对角线元素之和。
(3)编程序按下列公式计算s的值(其中x1、x2、…、xn由键盘输入)。
(其中x0是x1、x2、…、xn的平均值)
(4)输入一个字符串,将其中所有大写字母改为小写字母,并把所有小写字母全部改为大写字母,然后输出。
(5)某班50名学生的成绩表如下:
课程一课程二课程三
… … …
试编一个程序,输入这50名学生的三科成绩,计算并输出每科成绩的平均分。
(6)输入10个数,保存在数组a中,找出其中的最小数与第一个数交换位置,再输出这10个数。
(7)假设有10个数存放在数组a中,并且已经按照从小到大顺序排列,现输入一个数,将其插入到数组a中,要求保持数组a的有序性。
(8)输入一个十进制整数,将其转换为二进制数输出。
习题(第七章)
1.选择题
(1)在C语言程序中,有关函数的定义正确的是()。
A.函数的定义可以嵌套,但函数的调用不可以嵌套
B.函数的定义不可以嵌套,但函数的调用可以嵌套
C.函数的定义和函数的调用均不可以嵌套
D.函数的定义和函数的调用均可以嵌套
(2)以下对C语言函数的有关描述中,正确的是()。
A.在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B.C函数既可以嵌套定义又可递归调用
C.函数必须有返回值,否则不能使用函数
D.C程序中有调用关系的所有函数必须放在同一个源程序文件中
(3)函数调用语句f((e1,e2),(e3,e4,e5));中参数个数是()。
A.5B.4C.2D.1
(4)C语言中,若对函数类型未加显式说明,则函数的隐含类型为()。
A.voidB.doubleC.charD.int
(5)C语言中函数的隐含存储类型是()。
A.autoB.staticC.externD.无存储类型
(6)能把函数处理结果的两个数据返回给主调函数,在下面的方法中不正
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题 汇总 610