1:表示"整数x的绝对值大于5"时值为"真"的C语言表达式是______。
2:函数pi的功能是根据以下近似n公式求n值:
(n*n)/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)
请在下面的函数中填空,完成求n的功能。
#include "math.h"
double pi(long n)
{
double s = 0.0;
long i;
for(i = 1; i <= n; i++)s = s + ______;
return (sqrt(6*s));
}
4:若由以下定义,则不移动指针p,且通过指针p引用值为98的数组元素
的表达式是______。
int w[10] = {23,54,10,33,47,98,72,80,61},*p = w;
5:设在主函数中有以下定义和函数调用语句。且fun函数为void型;请写
出fun函数的首部______。要求形参名为b。
main()
{
double s[10][22];
int n;
.
.
.
fun(s);
.
.
.
}
6:以下程序的输出结果是______。
void fun()
{
static int a = 0;
a += 2;
printf("%d",a);
}
main()
{
int cc;
for(cc = 1;cc < 4; cc++) fun();
printf("\n");
}
7:以下程序的输出结果是______。
#define MAX(x,y) (x)>(y)?(x):(y)
main()
{
int a = 5, b = 2,c = 3, d = 3, t;
t = MAX(a + b, c + d)*10;
printf("%d\n", t);
}
8:若要使指针p指向一个double类型的动态存储单元,请填空。
p = ______malloc(sizeof(double));
9:函数mycmp(char *s,char *t)的功能是比较字符串s和t的大小,当s等
于t时返回0,当s>t返回正值,当s<t时返回负值。请填空。
mycmp( char *s,char *t)
{ while (*s==*t)
{ if (*s=='\0')return 0;
++s;++t;
}
return(______);
}
10:下面程序的输出是______。
#define MAX 5
int a[MAX],k;
main( )
{ fun1( );fun3( );
fun2( );fun3( );
printf("\n");
}
fun1( )
{ for (k=0;k<MAX;k++)a[k]=k+k;}
fun2( )
{ int a[MAX],k;
for (k=1;k<5;k++)a[k]=k;
}
fun3( )
{ int k;
for (k=0;k<MAX;k++)printf("%d",*(a+k) );
}
11:执行以下程序段后,s的值为______。
static char ch[]="600";
int a,s=0;
for(a=0;ch[a]>='0'&&ch[a]<='9';a++)
s=10*s+ch[a]-'0';
12:下列程序的运行结果是______。
main()
{ union EXAMPLE
{ struct
{ int x; int y; } in;
int a;
int b;
}e;
e.a=1;e.b=2;
e.in.x=e.a*e.b;
e.in.y=e.a+e.b;
printf("%d,%d\n",e.in.x,e.in.y);
}sizeof是什么
13:下面程序的输出是______。
main()
{int arr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
for(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n",k);}
14:若给fun函数的形参s传送字符串:" 6354abc",则函数的返回值
是______。(字符串中包括空格)
long fun(char s[ ])
{ long n; int sign;
for (; isspace(*s);s++);
sign=(*s=='-')?-1:1;
if (*s=='+' || *s=='-') s++;
for (n=0;isdigit(*s);s++)
n=10*n+(*s-'0');
return sign*n;
}
15:以下程序段的输出结果为______。
char *p;int i,d;
p="PDP1-0";
for(i=0;i<7;i++)
{
d=isdigit(*(p+i) );
if(d!=0)
printf("%c\n",*(p+i) );
}
16:若有以下定义和语句,则使指针p指向值为36的数组元素的表达式是
______。
int a[10]={19,23,44,17,37,28,49,36},*p;
p=a;
17:若a=10,b=20,则表达式!(a<b)的值是______。
18:下面程序的输出是______。
main ( )
{ enum em { em1=3,em2=1,em3};
char * aa[ ]={"AA","BB","CC","DD"};
printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);
}
19:若已经定义int a=25,b=14,c=19;,以下三目运算符(?:)所构成的语
句的执行结果是______。
a++<=2&&b--<=2&&c++? printf("* * * a=%d,b=%d,c=%d
\n",a,b,c):printf("a=%d,b=%d,c=%d\n",a,b,c);
20:在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应
当调用的函数是______函数。
22:若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是
______。
int b,c; float a;
scanf("%f,%d,c=%d",&a,&b,&c)
23:下列程序的输出结果是______。
# include<string.h>
main()
{ char b[30],*chp;
strcpy(&b[0],"GH");
strcpy(&b[1],"DEF");
strcpy(&b[2],"ABC");
printf("%s\n",b);
}
24:下列程序的输出结果是______。
int t(int x,int y,int cp,int dp)
{ cp=x * x+y*y;
dp=x*x-y*y;
}
main( )
{ int a=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d %d\n",c,d);
}
25:下列程序中字符串中各单词之间有一个空格,则程序的输出结果是
______。
# include<string.h>
main( )
{ char str1[ ]="How do you do", *p1=str1;
strcpy(str1+strlen(str1)/2,"es she");
printf("%s\n",p1);
}
26:下面fun函数的功能是将形参x的值转换成二进制数,所得二进制数的
每一位数放在数组中返回,二进制数的最低位放在下标为0的元素中,
其它依此类推。请填空。
fun(int x,int b[ ])
{ int k=0,r;
do
{ r=x%______;
b[k++]=r;
x/=______;
}while(x);
}
27:执行下列程序段后,x和i的值分别是______和______。
int x,i;
for (i=1,x=1;i<=50;i++)
{ if(x>=10) break;
if(x%2==1){x+=5;continue;}
x-=3;
}
28:下面程序把从终端读入的文本(用@作为文本结束标志)复制到一个名
为bi.dat的新文件中。请填空。
# include <stdio.h>
FILE *fp;
main( )
{ char ch;
if ( ( fp=fopen(______) )==NULL)exit(0);
while((ch=getchar( ) )!='@')fputc(ch,fp);______;
}
30:有以下定义和语句,则sizeof(a)的值是______,而sizeof(a.share)
的值是______。
struct date
{ int day;
int mouth;
int year;
union { int share1;
float share2;
}share;
} a;
31:以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束
输入)存放到此文件中,形成文本文件,并将字符的个数写到文件的尾
部。请填空。
# include <stdio.h>
main( )
{ FILE *fp;
char ch,fname[32]; int count=0;
printf("Input the filename :");
scanf("%s",fname);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论