C语言第7--10章习题
一、单项选择题
1.下面程序输出结果是【1】
main()
{ int x,a[]={2,3,4,5,6,7,8,9};
x=f(a,3);
printf("%d\n",x);
}
f(int b[],int n){int i,r;
r=1;
for(i=0;i<=n;i++) r=r*b[i];
return r;
}
A)6 B)24 C)120 D)720
2.以下程序运行后,输出结果是【2】
void fun(int x,int y,int z)
{ z=x*x+y*y;}
main()
{
int a=31;
fun(5,2,a);
printf("%d\n",a);
}
A) 0 B)29 C)31 D)不确定值
3.如有定义char s[10]= "abc";,则下面程序段的功能是【3】。
FILE *fp;
fp=fopen("t2.txt","w")
fputs(s,fp);
fclose(fp);
A) 把t2.txt中的字符串写入到s中 B) 把s中的字符串写入到t2.txt中
C) 从fp指向的文件中读取字符串 D) 从s中读取字符串
4.C语言中自己定义函数时,允许省写函数类型,此时函数的类型默认为【4】
A) int型 B) void型 C) float型 D) double型
5.有下列函数调用语句,函数fun1()实参个数是【5】
fun1(a+b,(y=9,y*x),fun2(y,n,k));
A)6 B) 5 C) 4 D) 3
6.执行下列程序段后,输出结果是【6】
int c[5]={1,2,11,12,21}, *p, *q=&c[1];
p=q; printf("%d",*(p+2));
A)12 B) 11 C) 4 D) 3
7.执行下列程序段后,输出结果是【7】。
char s[ ]="world";
printf("%c",*s+2);
A) r B) y C) rld D) y的ASCII码值
8.设有如下定义:
int a=2,b, *p=&a,*t=&b;
要将变量a的值赋值给变量b,可以执行赋值语句【8】。
A) *t=p; B) *t=*p; C) t=p; D) t=&a;
9.设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是【9】。
A) k=*p1+*p2; B) p2=k; C) p1=p2; D) k=*p1 * (*p2);
10.以下对枚举类型名的定义中正确的是【10】
A) enum a={one,two,three}; B) enum a{"one","two","three"};
C) enum a= {"one","two","three"}; D) enum a {one=9,two=-1,three};
11.下列程序段的输出结果是【11】。
struct abc{int a; int b;int c;};
struct abc s[2]={1,2,3,4,5,6};
printf("%d",s[0].a+s[1].b);
A)5 B) 6 C) 7 D)8
12.如果int在内存占2个字节,以下程序的运行结果是【12】。
#include "stdio.h"
main()
{ struct date
{ int year,month,day;}today;
printf("%d\n",sizeof(struct date));}
A)6 B) 8 C) 10 D)3
二、填空题
1.下列程序的运行结果是 。
main()
{ int i,x;
for (i=1,x=1; i<=50; i++)
{ if (x>=6) break;
if (x%2==1)
{ x+=5; continue; }
x-=3;
}
printf("%d %d\n",x,i );
}
2.下列程序段的运行结果是 。c语言中struct
fun3(int x)
{static int a=3;
a+=x;
return(a);
}
main()
{ int k=2,m=1,n,p;
n=fun3(k); p=fun3(m);
printf("%d %d \n",n,p);
}
3.下列程序段的输出结果是 。
#include "stdio.h"
struct num
{ int a;
int b;
float f;
char g[10];};
main()
{ struct num n={1,3,5.0, "chang"},*pn=&n;
printf("%d %.1f %s",pn->b/n.a*++pn->b,(*pn).a+pn->f,n.g);
}
4.下列程序的输出结果是 。
main()
{printf("%d\n",fun(9));}
fun(int x){int p;
if(x==0||x==1) return(3);
p=x-fun(x-2);
return p; }
三.程序填空题
下列程序中,函数amin( )的功能是求一个一维整型数组中的最小值。
在main( )函数中定义了数组a,共10个元素,并调用amin( )函数求数组a中所有元素的最小值。
#include <stdio.h>
int amin(int b[],int n)
{ int min,k;
min=b[0]
for(k=1;k<n;k++)
if ( 【1】 ) min=b[k];
【2】 ;
}
void main()
{
int a[10]={1,2,3,4,5,99,7,8,9,10},m;
m= 【3】 ;
printf("最小值=%d\n",m);
}
C语言第7--10章习题
一、单项选择题
1.下面程序输出结果是【1】
main()
{ int x,a[]={2,3,4,5,6,7,8,9};
x=f(a,3);
printf("%d\n",x);
}
f(int b[],int n){int i,r;
r=1;
for(i=0;i<=n;i++) r=r*b[i];
return r;
}
A)6 B)24 C)120 D)720
2.以下程序运行后,输出结果是【2】
void fun(int x,int y,int z)
{ z=x*x+y*y;}
main()
{
int a=31;
fun(5,2,a);
printf("%d\n",a);
}
A) 0 B)29 C)31 D)不确定值
3.如有定义char s[10]= "abc";,则下面程序段的功能是【3】。
FILE *fp;
fp=fopen("t2.txt","w")
fputs(s,fp);
fclose(fp);
A) 把t2.txt中的字符串写入到s中 B) 把s中的字符串写入到t2.txt中
C) 从fp指向的文件中读取字符串 D) 从s中读取字符串
4.C语言中自己定义函数时,允许省写函数类型,此时函数的类型默认为【4】
A) int型 B) void型 C) float型 D) double型
5.有下列函数调用语句,函数fun1()实参个数是【5】
fun1(a+b,(y=9,y*x),fun2(y,n,k));
A)6 B) 5 C) 4 D) 3
6.执行下列程序段后,输出结果是【6】
int c[5]={1,2,11,12,21}, *p, *q=&c[1];
p=q; printf("%d",*(p+2));
A)12 B) 11 C) 4 D) 3
7.执行下列程序段后,输出结果是【7】。
char s[ ]="world";
printf("%c",*s+2);
A) r B) y C) rld D) y的ASCII码值
8.设有如下定义:
int a=2,b, *p=&a,*t=&b;
要将变量a的值赋值给变量b,可以执行赋值语句【8】。
A) *t=p; B) *t=*p; C) t=p; D) t=&a;
9.设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是【9】。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论