C语言12章课后题
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
D、4,3,5
13、执行如下程序段后,a的值为( )
int *p,a=10,b=1;
p=&a;a=*p+b;
A、12
B、11
C、10
D、编译出错
14、以下程序执行后的输出结果就是( )
int main()
{
int x[8]={8,7,6,5,0,0},*s;
s=x+3;
printf(“%d\n”,s[2]);
int main()
{
int i,sum;
for(;i<=100;i++)
sum+=i;
printfBiblioteka “%d\n”,sum);return 0;
}
5、将程序补充完整(输入两个整数并求最大值)。
#include<stdio、h>
int main()
{
int a,b,c;
printf(“input two numbers:\n”);
printf(“a%c b%c\tc%c\tabc\n”,c1,c2,c3);
printf(“\t\b%c %c”,c4,c5);
return 0;
}
5、写出以下程序的运行结果。
int main()
{
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
16、有定义语句“double x,*p;”,则以下表达式中正确的就是( )
A、*p=&x;
B、p=x;
C、p=&x;
D、*p=x;
17、下面程序的正确输出结果就是( )。(规定用U表示空格)
int main()
{
float x=5、783,y=-10、2345;
printf(“x=%-8、2f,y=%-8、2f\n”,x,y);
return 0;
}
2、以下程序的输出结果就是。
int main()
{
int x=23;
do
{
printf(“%d”,x--);
}while(!x);
return 0;
}
3、将程序补充完整(要求,输入任意两个整数a与b,若b不等于0,则输出a/b的值,结果保留两位小数)。
#include<stdio、h>
A、D
B、68
C、56
D、不确定的值
4、C语言中要求运算对象必须就是整型数据的运算符就是( )。
A、++
B、--
C、%
D、/
5、变量a为整型、b为实型、c为双精度型、d为字符型,则表达式a=a*b+d-c的类型就是( )。
A、整型
B、实型
C、双精度型
D、字符型
6、有以下定义语句,编译时会出现编译错误的就是( )。
D、C语言程序的执行就是从第一个函数开始的,到程序的main函数结束
2、若有语句“char a;”,并要将字符a赋给变量a,则下列赋值表达式正确的就是( )。
A、a=’a’;
B、a=’a’;
C、a=”97”;
D、a=’97’;
3、若有语句“int a=5;”,则执行语句“a++a*=10;”后,a的值就是( )。
5、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为( )。
6、若有定义“intm=5,n=3;”,则表达式m/=n+4的值就是( ),表达式m=(m=1,n=2,n-m)的值就是( ),表达式m+=m-=(m=1)*(n=2)的值就是( )。
三、简答题
1、简述’a’与”a”的区别。
return 0;
}
四、编程题
已知“int x=10,用2;”,写出将x与y的值相互交换的语句。
测试一
一、单项选择题
1、以下描述中正确的就是( )
A、C语言程序的执行就是从main函数开始的,到程序的最后一个函数结束
B、C语言程序的执行就是从第一个函数开始的,到程序的最后一个函数结束
C、C语言程序的执行就是从main函数开始的,到程序的main函数结束
D、a>=10 || a<=0
6、已有定义“int x=3,y=4;”,则表达式x>y&&y的值就是( )
A、true
B、0
C、false
D、1
7、有如下语句,则当x=5就是,c的值就是( )
int c=5,x;
scanf(“%d”,&x);
switch(x+1)
{
case 6:c++;
case 8:c++;break;
语言概述课后题一选择题1一个c语言程序总就是从a主过程开始执行b主函数开始执行c子程序开始执行d主程序开始执行a源程序b汇编程序c目标程序d可执行程序3以下叙述中正确的就是语言程序中的注释部分可以出现在程序中任意合适的地方b花括号与只能作为函数体的定界符c构成c语言程序的基本组成单位就是函数所有函数名都可以由用户命名d分号就是c语言语句之间的分隔符不就是语句的一部分4以下选项中不合法的c语言程序函数体就是a编辑程序b驱动程序c编译程序d诊断程序二填空题语言源程序文件名的后缀就是经过编译后生成的目标文件名的后缀就是
int main()
{
int a,b;float c;
printf(“input a,b:”);
scanf(“%d,%d”,&a,&b);
if()
c=1、0*a/b;
printf(“%、2f\n”,c);
return 0;
}
4、将程序补充完整(用for循环求1-100的与)。
#include<stdio、h>
B、花括号“{”与“”只能作为函数体的定界符
C、构成C语言程序的基本组成单位就是函数,所有函数名都可以由用户命名
D、分号就是C语言语句之间的分隔符,不就是语句的一部分
4、以下选项中,不合法的C语言程序函数体就是( )。
A、{;}
B、{ }
C、{ printf(“computer”); }
D、{int a=1;}
return 0;
}
A、i=10[CR]k=15[CR]
B、i=10,k=15[CR]
C、10U15[CR]
D、10,15[CR]
二、判断题
1、在一个C语言程序中,main函数必须出现在所有函数之前。( )
2、引用数组元素时,下标可以就是整型常量或整型表达式。( )
3、预处理命令都必须以“#”开头。( )
2、已知,“int m=12,m=15;”,为什么整型变量m的值在运算后不就是当初的12,而就是15?
3、将下面各数用八进制与十六进制数表示。
十进制数: 32 -1 -32768 2002 -128 0
八进制数:
十六进制数:
4、写出以下程序的运行结果
int main()
{
char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’116’;
10、实参向形参传递值可以就是单向传递,也可以就是双向传递。( )
三、填空题
1、若从键盘输入58,则以下程序的输出结果就是。
int main()
{
int a;
scanf(“%d”,&a);
if(a>50) printf(“%d”,a);
if(a>40) printf(“%d”,a);
if(a>30) printf(“%d”,a);
2、字符常量使用一对( )界定单个字符,而字符串常量使用一对( )来界定若干个字符的序列。
3、设“floatx=2、5;int a=7;float y=4、7;”,则表达式x+a%3*(int)(x+y)%2/4的值为( )。
4、已知“chara=’a’,b=’b’,c=’c’,i;”,则表达式i=a+b+c的值为( )。
A、行优先
B、列优先
C、由编译系统决定
D、由用户决定
11、以下程序的输出结果就是( )
int main()
{
char ch[]={‘1’,’2’,’\0’,’3’,’4’,’\0’};
printf(“%s”,ch);
return 0;
}
A、1234
B、12034
C、12
D、有语法错误
12、以下程序执行后输出的结果就是( )
4、函数的形参都属于全局变量。()
5、静态(static)类型变量在函数调用结束后仍然存在。( )
6、函数定义可以嵌套,函数调用不可以嵌套。( )
7、字符类型变量只能存储一个字符。( )
8、从功能上讲,“putchar(c);”等价与“printf(“%c”,c);”。( )
9、表达式(7-1)*2!=10的值为1。( )
void f(int x,int y)
{
int t;
if(x<y){t=x;x=y;y=t;}
}
int main()
{
int a=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf(“%d,%d,%d\n”,a,b,c);
return 0;
}
A、3,4,5
B、5,3,4
C、5,4,3
第一章C语言概述课后题
一、选择题
1、一个C语言程序总就是从( )。
A、主过程开始执行
B、主函数开始执行
C、子程序开始执行
D、主程序开始执行
2、C语言能直接执行的程序就是( )。
A、源程序
B、汇编程序
C、目标程序
D、可执行程序
3、以下叙述中正确的就是( )。
A、C语言程序中的注释部分可以出现在程序中任意合适的地方
5、要把高级语言编写的源程序转换为目标程序,需要使用( )。
A、编辑程序
B、驱动程序
C、编译程序
D、诊断程序
二、填空题
1、C语言程序的基本单位就是( )。
2、C语言源程序文件名的后缀就是( ),经过编译后生成的目标文件名的后缀就是( ),经过链接之后生成的可执行文件名的后缀就是( )。
3、计算机语言包括( )、( )与( )。其中计算机能够直接识别的语言就是( ),( )很接近人们习惯使用的自然语言与数学语言。
return 0;
}
A、x=5、78UUUU,y=-10、23UU
B、x=5、78,y=-10、23
C、5、78,-10、23
D、x=UUUU5、78,y=UU-10、23
18、sizeof(float)就是( )
A、一个浮点表达式
B、一个不合法的表达式
C、函数调用结果,就是一个整型表达式
D、一种函数调用
4、按照结构化程序设计原则,常见的程序基本结构有( )、( )与( )。
5、循环结构包含( )循环与( )循环。
三、简单题
1、什么就是程序?什么就是程序设计?
2、解释源程序、目标程序与可执行程序的含义。
3、写出C语言的特点。
四、编程题
1、参照本章例题,编写一个C语言程序,输出以下信息:happy new year!
int main()
{
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i<3;i++)
for(j=0;j<=i;j++)
s+=a[i][j];
printf(“%d\n”,s);
return 0;
}
A、18
B、19
C、20
D、21
10、C语言中,二维数组在内存中的存放顺序就是( )
return 0;
}
A、随机值
B、0
C、5
D、6
15、若要将text、txt文件打开用于追加信息,则以下格式正确的就是( )
A、fp=fopen(“text、txt”,”r”);
B、fp=fopen(“text、txt”,”r+”);
C、fp=fopen(“text、txt”,”a+”);
D、fp=fopen(“text、txt”,”w”);
A、55
B、100
C、60
D、105
4、设有“int x=11;”,则表达式(x++*1/3)的值就是( )。
A、3
B、4
C、11
D、12
5、能正确表达逻辑关系“a>=10”或“a<=0”的C语言表达式就是( )。
A、a>=10 or a<=0
B、a>=0 | a<=10
C、a>=10 && a<=0
19、下列数据中属于字符串常量的就是( )
A、’A’
B、”ABC”
C、ABC
D、’ABC’
20、用下面的scanf函数输入数据,使得i=10,k=15,正确的键盘输入方法就是( )(用[CR]表示回车,U表示空格)
int main()
{
int i,k;
scanf(“i=%d,k=%d”,&i,&k);
A、char a=’a’;
B、char a=’\n’;
C、char a=’aa’;
D、char a=’\x2d’;
7、设有语句“int a=3;”,执行语句printf(“%d %d”,a+1,a++);后输出的值就是( )。
A、4 3
B、3 4
C、4 4
D、3 3
二、填空题
1、在C语言中(以16位计算机为例),一个char型数据在内存中所占的字节数为( ),其数值范围就是( );一个int型数据在内存中所占的字节数为( ),其数值范围就是( );一个long型数据在内存中所占的字节数为(),其数值范围就是( );一个float型数据在内存中所占字节数为( ),其数值范围就是( )。
2、参照本章例题,编写程序求两个数中的较小值。
第二章C语言程序设计基础课后题
一、选择题
1、以下选项中,正确的整型数据就是( )。
A、1、2
B、-123
C、723 456
D、567 890
2、下面字符常量的表达形式中正确的就是( )。
A、“Z”
B、“\’
C、‘1’
D、‘\378’
3、ch为字符型变量,执行语句“ch=’C’+‘5’-‘4’;”,将ch按字符类型输出的结果就是( )。
default:c+=3;
}
printf(“%d”,c);
A、6
B、7
C、8
D、语法错误
8、若有以下程序,则语句a=a+1执行的次数就是( )
int main()
{
int x=1,a=1;
do
{
a=a+1;
}
while(x);
return 0;
}
A、0
B、1
C、无限次
D、有限次
9、以下程序的输出结果就是( )
13、执行如下程序段后,a的值为( )
int *p,a=10,b=1;
p=&a;a=*p+b;
A、12
B、11
C、10
D、编译出错
14、以下程序执行后的输出结果就是( )
int main()
{
int x[8]={8,7,6,5,0,0},*s;
s=x+3;
printf(“%d\n”,s[2]);
int main()
{
int i,sum;
for(;i<=100;i++)
sum+=i;
printfBiblioteka “%d\n”,sum);return 0;
}
5、将程序补充完整(输入两个整数并求最大值)。
#include<stdio、h>
int main()
{
int a,b,c;
printf(“input two numbers:\n”);
printf(“a%c b%c\tc%c\tabc\n”,c1,c2,c3);
printf(“\t\b%c %c”,c4,c5);
return 0;
}
5、写出以下程序的运行结果。
int main()
{
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
16、有定义语句“double x,*p;”,则以下表达式中正确的就是( )
A、*p=&x;
B、p=x;
C、p=&x;
D、*p=x;
17、下面程序的正确输出结果就是( )。(规定用U表示空格)
int main()
{
float x=5、783,y=-10、2345;
printf(“x=%-8、2f,y=%-8、2f\n”,x,y);
return 0;
}
2、以下程序的输出结果就是。
int main()
{
int x=23;
do
{
printf(“%d”,x--);
}while(!x);
return 0;
}
3、将程序补充完整(要求,输入任意两个整数a与b,若b不等于0,则输出a/b的值,结果保留两位小数)。
#include<stdio、h>
A、D
B、68
C、56
D、不确定的值
4、C语言中要求运算对象必须就是整型数据的运算符就是( )。
A、++
B、--
C、%
D、/
5、变量a为整型、b为实型、c为双精度型、d为字符型,则表达式a=a*b+d-c的类型就是( )。
A、整型
B、实型
C、双精度型
D、字符型
6、有以下定义语句,编译时会出现编译错误的就是( )。
D、C语言程序的执行就是从第一个函数开始的,到程序的main函数结束
2、若有语句“char a;”,并要将字符a赋给变量a,则下列赋值表达式正确的就是( )。
A、a=’a’;
B、a=’a’;
C、a=”97”;
D、a=’97’;
3、若有语句“int a=5;”,则执行语句“a++a*=10;”后,a的值就是( )。
5、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为( )。
6、若有定义“intm=5,n=3;”,则表达式m/=n+4的值就是( ),表达式m=(m=1,n=2,n-m)的值就是( ),表达式m+=m-=(m=1)*(n=2)的值就是( )。
三、简答题
1、简述’a’与”a”的区别。
return 0;
}
四、编程题
已知“int x=10,用2;”,写出将x与y的值相互交换的语句。
测试一
一、单项选择题
1、以下描述中正确的就是( )
A、C语言程序的执行就是从main函数开始的,到程序的最后一个函数结束
B、C语言程序的执行就是从第一个函数开始的,到程序的最后一个函数结束
C、C语言程序的执行就是从main函数开始的,到程序的main函数结束
D、a>=10 || a<=0
6、已有定义“int x=3,y=4;”,则表达式x>y&&y的值就是( )
A、true
B、0
C、false
D、1
7、有如下语句,则当x=5就是,c的值就是( )
int c=5,x;
scanf(“%d”,&x);
switch(x+1)
{
case 6:c++;
case 8:c++;break;
语言概述课后题一选择题1一个c语言程序总就是从a主过程开始执行b主函数开始执行c子程序开始执行d主程序开始执行a源程序b汇编程序c目标程序d可执行程序3以下叙述中正确的就是语言程序中的注释部分可以出现在程序中任意合适的地方b花括号与只能作为函数体的定界符c构成c语言程序的基本组成单位就是函数所有函数名都可以由用户命名d分号就是c语言语句之间的分隔符不就是语句的一部分4以下选项中不合法的c语言程序函数体就是a编辑程序b驱动程序c编译程序d诊断程序二填空题语言源程序文件名的后缀就是经过编译后生成的目标文件名的后缀就是
int main()
{
int a,b;float c;
printf(“input a,b:”);
scanf(“%d,%d”,&a,&b);
if()
c=1、0*a/b;
printf(“%、2f\n”,c);
return 0;
}
4、将程序补充完整(用for循环求1-100的与)。
#include<stdio、h>
B、花括号“{”与“”只能作为函数体的定界符
C、构成C语言程序的基本组成单位就是函数,所有函数名都可以由用户命名
D、分号就是C语言语句之间的分隔符,不就是语句的一部分
4、以下选项中,不合法的C语言程序函数体就是( )。
A、{;}
B、{ }
C、{ printf(“computer”); }
D、{int a=1;}
return 0;
}
A、i=10[CR]k=15[CR]
B、i=10,k=15[CR]
C、10U15[CR]
D、10,15[CR]
二、判断题
1、在一个C语言程序中,main函数必须出现在所有函数之前。( )
2、引用数组元素时,下标可以就是整型常量或整型表达式。( )
3、预处理命令都必须以“#”开头。( )
2、已知,“int m=12,m=15;”,为什么整型变量m的值在运算后不就是当初的12,而就是15?
3、将下面各数用八进制与十六进制数表示。
十进制数: 32 -1 -32768 2002 -128 0
八进制数:
十六进制数:
4、写出以下程序的运行结果
int main()
{
char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’116’;
10、实参向形参传递值可以就是单向传递,也可以就是双向传递。( )
三、填空题
1、若从键盘输入58,则以下程序的输出结果就是。
int main()
{
int a;
scanf(“%d”,&a);
if(a>50) printf(“%d”,a);
if(a>40) printf(“%d”,a);
if(a>30) printf(“%d”,a);
2、字符常量使用一对( )界定单个字符,而字符串常量使用一对( )来界定若干个字符的序列。
3、设“floatx=2、5;int a=7;float y=4、7;”,则表达式x+a%3*(int)(x+y)%2/4的值为( )。
4、已知“chara=’a’,b=’b’,c=’c’,i;”,则表达式i=a+b+c的值为( )。
A、行优先
B、列优先
C、由编译系统决定
D、由用户决定
11、以下程序的输出结果就是( )
int main()
{
char ch[]={‘1’,’2’,’\0’,’3’,’4’,’\0’};
printf(“%s”,ch);
return 0;
}
A、1234
B、12034
C、12
D、有语法错误
12、以下程序执行后输出的结果就是( )
4、函数的形参都属于全局变量。()
5、静态(static)类型变量在函数调用结束后仍然存在。( )
6、函数定义可以嵌套,函数调用不可以嵌套。( )
7、字符类型变量只能存储一个字符。( )
8、从功能上讲,“putchar(c);”等价与“printf(“%c”,c);”。( )
9、表达式(7-1)*2!=10的值为1。( )
void f(int x,int y)
{
int t;
if(x<y){t=x;x=y;y=t;}
}
int main()
{
int a=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf(“%d,%d,%d\n”,a,b,c);
return 0;
}
A、3,4,5
B、5,3,4
C、5,4,3
第一章C语言概述课后题
一、选择题
1、一个C语言程序总就是从( )。
A、主过程开始执行
B、主函数开始执行
C、子程序开始执行
D、主程序开始执行
2、C语言能直接执行的程序就是( )。
A、源程序
B、汇编程序
C、目标程序
D、可执行程序
3、以下叙述中正确的就是( )。
A、C语言程序中的注释部分可以出现在程序中任意合适的地方
5、要把高级语言编写的源程序转换为目标程序,需要使用( )。
A、编辑程序
B、驱动程序
C、编译程序
D、诊断程序
二、填空题
1、C语言程序的基本单位就是( )。
2、C语言源程序文件名的后缀就是( ),经过编译后生成的目标文件名的后缀就是( ),经过链接之后生成的可执行文件名的后缀就是( )。
3、计算机语言包括( )、( )与( )。其中计算机能够直接识别的语言就是( ),( )很接近人们习惯使用的自然语言与数学语言。
return 0;
}
A、x=5、78UUUU,y=-10、23UU
B、x=5、78,y=-10、23
C、5、78,-10、23
D、x=UUUU5、78,y=UU-10、23
18、sizeof(float)就是( )
A、一个浮点表达式
B、一个不合法的表达式
C、函数调用结果,就是一个整型表达式
D、一种函数调用
4、按照结构化程序设计原则,常见的程序基本结构有( )、( )与( )。
5、循环结构包含( )循环与( )循环。
三、简单题
1、什么就是程序?什么就是程序设计?
2、解释源程序、目标程序与可执行程序的含义。
3、写出C语言的特点。
四、编程题
1、参照本章例题,编写一个C语言程序,输出以下信息:happy new year!
int main()
{
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i<3;i++)
for(j=0;j<=i;j++)
s+=a[i][j];
printf(“%d\n”,s);
return 0;
}
A、18
B、19
C、20
D、21
10、C语言中,二维数组在内存中的存放顺序就是( )
return 0;
}
A、随机值
B、0
C、5
D、6
15、若要将text、txt文件打开用于追加信息,则以下格式正确的就是( )
A、fp=fopen(“text、txt”,”r”);
B、fp=fopen(“text、txt”,”r+”);
C、fp=fopen(“text、txt”,”a+”);
D、fp=fopen(“text、txt”,”w”);
A、55
B、100
C、60
D、105
4、设有“int x=11;”,则表达式(x++*1/3)的值就是( )。
A、3
B、4
C、11
D、12
5、能正确表达逻辑关系“a>=10”或“a<=0”的C语言表达式就是( )。
A、a>=10 or a<=0
B、a>=0 | a<=10
C、a>=10 && a<=0
19、下列数据中属于字符串常量的就是( )
A、’A’
B、”ABC”
C、ABC
D、’ABC’
20、用下面的scanf函数输入数据,使得i=10,k=15,正确的键盘输入方法就是( )(用[CR]表示回车,U表示空格)
int main()
{
int i,k;
scanf(“i=%d,k=%d”,&i,&k);
A、char a=’a’;
B、char a=’\n’;
C、char a=’aa’;
D、char a=’\x2d’;
7、设有语句“int a=3;”,执行语句printf(“%d %d”,a+1,a++);后输出的值就是( )。
A、4 3
B、3 4
C、4 4
D、3 3
二、填空题
1、在C语言中(以16位计算机为例),一个char型数据在内存中所占的字节数为( ),其数值范围就是( );一个int型数据在内存中所占的字节数为( ),其数值范围就是( );一个long型数据在内存中所占的字节数为(),其数值范围就是( );一个float型数据在内存中所占字节数为( ),其数值范围就是( )。
2、参照本章例题,编写程序求两个数中的较小值。
第二章C语言程序设计基础课后题
一、选择题
1、以下选项中,正确的整型数据就是( )。
A、1、2
B、-123
C、723 456
D、567 890
2、下面字符常量的表达形式中正确的就是( )。
A、“Z”
B、“\’
C、‘1’
D、‘\378’
3、ch为字符型变量,执行语句“ch=’C’+‘5’-‘4’;”,将ch按字符类型输出的结果就是( )。
default:c+=3;
}
printf(“%d”,c);
A、6
B、7
C、8
D、语法错误
8、若有以下程序,则语句a=a+1执行的次数就是( )
int main()
{
int x=1,a=1;
do
{
a=a+1;
}
while(x);
return 0;
}
A、0
B、1
C、无限次
D、有限次
9、以下程序的输出结果就是( )