C语言填空题大全

C语言填空题大全
C语言填空题大全

1. 以下程序中,函数fun的功能是计算x2-2x+6,主函数中将调用fun函数计算: y1=(x+8)2-2(x+8)+6

y2= sin2(x)-2sin(x)+6

请填空。

#include "math.h"

double fun(double x){ return (x*x-2*x+6);}

main()

{ double x,y1,y2;

printf ("Enter x: "); scanf ("%lf",&x);

y1=fun(__x+8____);

y2=fun(_sin(x)_____);

printf ("y1=%1f,y2=%1f\n",y1,y2);

}

2. 执行以下程序时输入1234567,则输出结果是__12 34____。

#include

main()

{ int a=1,b;

scanf("%2d%2d",&a,&b); printf("%d %d\n",a,b);

}

3. 若有以下程序

int f(int x,int y)

{ return(y-x)*x; }

main()

{ int a=3,b=4,c=5,d;

d=f(f(3,4),f(3,5));

printf("%d\n",d);

}

执行后输出结果是__9____。

4. 以下程序的输出结果是_ACE_____。

#include

main()

{ int i;

for(i='a';i<'f';i++,i++) printf("%c",i-'a'+'A');

printf("\n");

}

5. 下面fun函数的功能是将形参x的值转换成二进制数,所得二进制数的每一位数放在数组中返回,二进制数的最低位放在下标为0的元素中,其它依此类推。请填空。

fun(int x,int b[ ])

{ int k=0,r;

do

{ r=x%___2___;

b[k++]=r;

x/=___2___;

}while(x);

}

6. 以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和,请填空。

main()

{ int i,a[20],sum,count;

sum=count=0;

for(i=0;i<20;i++) scanf("%d",______ );

fro(i=0;i<20;i++)

{ if(a[i]>0)

{ count++;

sum+= ______ ;

}

}

printf("sum=%d,count=%d\n",sum,count);

}

&a[i]

a[i]

7. 以下程序运行后的输出结果是___220.000000___。

main()

{char c; int n=100;

float f=10; double x;

x=f*=n/=(c=50);

printf("%d%f\n",n,x);

}

8. 以下程序中, for循环体执行的次数是_4_____。

#define N 2

#define M N+1

#define K M+1*M/2

main()

{ int i;

for(i=1;i

{ ... }

...

}

9. 以下程序运行后的输出结果是__1 3 7 15____。

main()

{ int i,n[]={0,0,0,0,0};

for(i=1;i<=4;i++)

{ n[i]=n[i-1]*2+1;

printf("%d ",n[i]);

}

}

9. 下列程序中字符串中各单词之间有一个空格,则程序的输出结果是__How does she____。

# include

main( )

{ char str1[ ]="How do you do", *p1=str1;

strcpy(str1+strlen(str1)/2,"es she");

printf("%s\n",p1);

}

10. 以下程序的输出结果是___261___。

main()

{ int a=177;

printf("%o\n",a);

}

11. 下面程序的运行结果是:__1000 10__。

#define N 10

#define s(x) x*x

#define f(x) (x*x)

main()

{int i1,i2;

i1=1000/s(N);i2=1000/f(N);

printf("%d %d\n",i1,i2);

}

12. 已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是_1 B_____。

#include

main()

{ char a,b;

a=getchar();scanf("%d",&b);

a=a-'A'+'0';b=b*2;

printf("%c %c\n",a,b);

}

13. 以下程序运行后的输出结果是_17_____。

main()

{int x=15;

while(x>10&&x<50)

{x++;

if(x/3){x++;break;}

else continue;

}

printf("%d\n",x);

}

14. 函数sstrcmp()的功能是对两个字符串进行比较。当s 所指字符串和t所指字符相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{while(*s&&*t&&*s==_*t_____)

{s++;t++; }

return __*s-*t____;

}

15. 以下程序的输出结果是___7___。

main()

{ int x=0;

sub(&x,8,1);

printf("%d\n",x);

}

sub(int *a,int n,int k)

{ if(k<=n) sub(a,n/2,2*k);

*a+=k;

}

16. 以下程序段用于构成一个简单的单向链表,填空。

struct STRU

{ int x,y;

float rate;

___struct STRU*___ p;

}a,b;

a.x=0;a.y=0;a.rate=0;a.p=&b;

b.x=0;b.y=0;b.rate=0;b.p=NULL;

17. 以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空。

int isprime(int a)

{ int i;

for(i=2;i<=a/2;i++)

if(a%i==0) __return 0____;

__return 1____;

}

18. 设有如下程序:

main()

{ int n1,n2;

scanf("%d",&n2);

while(n2!=0)

{ n1=n2%10;

n2=n2/10;

printf("%d",n1);

}

}

程序运行后,如果从键盘上输入1298,则输出结果为_8921_ __。

19. 以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值。请填空。void fun(int,int,int(*)[4],int *);

main()

{ int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;

fun(3,4,a,b);

for(i=0;i<3;i++) printf("%4d",b[i]);

printf("\n");

}

void fun(int m,int n,int ar[][4],int *br)

{ int i,j,x;

for(i=0;i

{ x=ar[i][0];

for(j=0;j

______=x;

}

}

br[i]

20. 已知字符A的ASCII码为65,以下程序运行后的输出结果是__67G____。

main()

{ char a,b;

a='A'+'5'-'3'; b=a+'6'-'2';

printf("%d%c\n",a,b);

}

21. 以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。

main()

{ int x[10],a[9],i;

for(i=0;i<10;i++) scanf("%d",&x[i]);

for( ______; i<10;i++)

a[i-1]=x[i]+______;

for(i=0;i<9;i++ ) printf("%d",a[i] ) ;

printf("\n" );

}

i=1 x[i-1]

22. 函数mycmp(char *s,char *t)的功能是比较字符串s和t的大小,当s等于t时返回0,当s>t返回正值,当s

mycmp( char *s,char *t)

{ while (*s==*t)

{ if (*s=='\0')return 0;

++s;++t;

}

return(______);

}

*s-*t

23. 有以下程序

main()

{ int n=0,m=1,x=2;

if(!n) x-=1;

if(m) x-=2;

if(x) x-=3;

printf("%d\n",x);

}

执行后输出的结果是__-4____。

24. 设有定义:float x=123.4567;,则执行以下语句后的输出结果是

___123.460000___。

printf("%f\n"(int)(x*100+0.5)/100.0);

25. 以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。

#define M 2

#define N 4

void SumColumMin(int a[M][N],int *sum)

{ int i,j,k,s=0;

for(i=0;i

{ k=0;

for(j=1;j

if(a[k][i]>a[j][i])k=j;

s+=______ ;

}

______ =s;

}

main()

{ int x[M][N]={3,2,5,1,4,1,8,3},s;

SumColumMin(______);

printf("%d\n",s);

}

a[k][i] *sum x,&s

26. 已知字符A的ASCII码值为65,以下语句的输出结果是______。

char ch='B';

printf("%c %d\n",ch,ch);

B 66

27. 设函数findbig已定义为求3个数中的最大值。以下程序将利用函数指针调用findbig函数。请填空。

main()

{ int findbig(int,int,int);

int (*f)(),x,y,z,big;

f=______;

scanf("%d%d%d",&x,&y,&z);

big=(*f)(x,y,z);

printf("big=%d\n",big);

}

findbig

28. 下面程序的输出是______。

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);

}

12

29. 以下函数fun用于求两个整数a和b的最大公约数。

fun(a,b)

int a,b;

{int i,j,m,n;

if(a>b)

{m=a;a=b;______;}

i=a;j=b;

while((n=______)!=0)

{j=i;i=______;}

return(i);

}

故本题答案为:b=m和j%i和n。

30. 以下程序中,select函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标,请填空。

#define N 3

#define M 3

select(int a[N][M],int *n)

{ int i,j,row=0,colum=0;

for(i=0;i

for(j=0;i

if(a[i][j]>a[row][colum]){row=i;colum=j;}

*n=______;

return( ______ );

}

main()

{ int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;

max=select(a,&n);

printf("max=%d,line=%d\n",max,n);

}

row a[row][colum]

31. 以下sum函数的功能是计算下列级数之和。

S=1+x+x^2/2!+x^3/3!+…+x^n/n!

请给函数中的各变量正确赋初值。

double sum(double x,int n)

{ int i;

double a,b,s;

______

for(i=1;i<=n;i++)

{a=a*x;b=b*i;s=s+a/b;}

return s;

}

a=1.0,b=1.0,s=1.0

32以下函数的功能是:求x的y次方,请填空。

double fun(double x,int y)

{ int i;

double z;

for(i=1,z=x;i

return z;

}

x

33. 以下程序的输出结果是______。

main()

{ int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0; for(i=0;i<3;i++) s+=a[i][i]+ a[i][3-i-1];

printf("%d\n",s);

}

30

34. 以下程序的输出结果是______。

#define MCRA(m) 2*m

#define MCRB(n,m) 2*MCRA(n)+m

main()

{ int i=2,j=3;

printf("%d\n",MCRB(j,MCRA(i)));

}

16

35. 设有以下程序:

main()

{ int a,b,k=4,m=6,*p1=&k,*p2=&m;

a=p1==&m;

b=(*p1)/(*p2)+7;

printf("a=%d\n",a);

printf("b=%d\n",b);

}

执行该程序后,a的值为__ __,b的值为__ ___。

0 7

36. 以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中的其他数据不变。

# define N 4

void rotate(int a[][N],int b[][N])

{ int i,j;

for(i=0;i

{ b[i][N-1]=______;

______=a[N-1][i];}

}

a[0][i] b[i][0]

37有以下程序:

#include

main()

{char c;

while((c=getchar())!='?') putchar(--c);

}

程序运行时,如果从键盘输入:Y?N?↙,则输出结果为______。

x

38. 以上程序运行后的输出结果是______。

main()

{ int i=10,j=0;

do

{ j=j+i; i--;}

while(i>2);

printf("%d\n",j);

}

52

39. 若有如下结构体说明:

struct STRU

{ int a,b;char c: double d;

struct STRU *p1,*p2;

};

请填空,以完成对t数组的定义,t数组的每个元素为该结构体类型。

______t[20]

struct STRU

41. 以下程序的输出结果是______。

void fun()

{

static int a = 0;

a += 2;

printf("%d",a);

}

main()

{

int cc;

for(cc = 1;cc < 4; cc++) fun();

printf("\n");

}

246

42. 以下程序运行后的输出结果是______。

#include

main()

{ char ch[]="abc",x[3][4]; int i;

for(i=0;i<3;i++) strcpy(x[i],ch);

for(i=0;i<3;i++) printf("%s",&x[i][i]);

printf("\n");

}

. abcbcc

43. 以下程序的输出结果是______。

#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);

}

7

44. 设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为______。

3

45. 以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9-10,并输出结果。请填空。

int fun ( int n)

{ int m=0,f=1,i;

for(i=1; i<=n; i++)

{ m+=i*f;

f=______;

}

return m;

}

main()

{ printf("m=%d\n",______);}

-f fun(10)

46. 若有程序

main()

{ int i,j;

scanf("i=%d,j=%d",&i,&j);

printf("i=%d,j=%d\n ",i,j);

}

要求给i赋10,给j赋20,则应该从键盘输入______。

I=10,j=20

47. 语句;X++;、++X;、X=X+1;、X=1+X;,执行后都使变量X中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)__ ___。

X+=1

48. 下面的函数strcat(str1,str2)实现将字符串str2拼接到字符串str1后面的功能。请填空使之完整。

char *strcat(str1,str2)

char *str1,*str2;

{ char *t=str1;

while(______)str1++;

while(______);

return(t);}

*str1!=NULL和*str1++=*str2++

49. 以下程序的输出结果是______。

main()

{ char *p="abcdefgh",*r;

long *q;

q=(long*)p;

q++;

r=(char*)q;

printf("%s\n",r);

}

efgh

50. 以下程序运行后的输出结果是______。

main ()

{ char a[]="Language",b[]="Programe";

char *p1,*p2; int k;

p1=a; p2=b;

for(k=0;k<=7;k++)

if(*(p1+k)==*(p2+k)) printf("%c",*(p1+k)); }

gae

51. 以下程序的功能是输出如下形式的方阵:

13 14 15 16

9 10 11 12

5 6 7 8

1 2 3 4

请填空。

main()

{ int i,j,x;

for(j=4;j______;j--)

{ for(i=1;i<=4;i++)

{ x=(j-1)*4+______;

printf("%4d",x);

}

printf("\n");

}

}

>=1

i

52. 下列程序的输出结果是______。

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);

}

5 6

53. 若有语句

int i=-19,j=i%4;

printf("%d\n",j);

则输出的结果是______。

-3

54. 有以下程序

int sub(int n) { return(n/10+n%10); }

main()

{ int x,y;

scanf("%d",&x);

y=sub(sub(sub(x)));

printf("%d\n",y);

}

若运行时输入:1234<回车>,程序的输出结果是______。

10

55. 下面程序的运行结果是:______。

typedef union student

{char name[10];

long sno;

char sex;

float score[4];

}STU;

main()

{STU a[5];

printf("%d\n",sizeof(a));

}

80

56. 以下程序通过函数SunFun和f(x),x=0到10,这里f(x)=x^2+1,由F函数实现,请填空。

main()

{ printf("The sun=%d\n",SunFun(10));}

SunFun(int n)

{ int x,s=0;

for(x=0;x<=n;x++)s+F(______);

return s;

}

F(int x)

{ return (______);}

X x*x+1

57. 以下程序运行后的输出结果是______。

main()

{ int p=30;

printf("%d\n",(p/3>0 ? p/10 :p%3));

}

3

58. 以下程序运行后的输出结果是______。

main()

{ int a=3,b=4,c=5,t=99;

if(b

if(a

printf("%d %d %d\n",a,b,c);

}

4 5 99

59. 以下程序运行后的输出结果是______。

main()

{ int a,b,c;

a=10; b=20; c=(a%b<1)||(a/b>1);

printf("%d %d %d\n",a,b,c);

}

10 20 0

60. 以下程序的功能是:将输入的正整数按逆序输出。例如:若输入135则输出531。请填空。

#include

main()

{ int n, s;

printf ("Enter a number: "); scanf ("%d",&n);

printf ("Output: ");

do

{ s = n%10; printf ("%d",s); ______; }

while (n!=0);

printf ("\n");

}

.n/=10

61. 以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下:

A B C D E

F G H I

J K L

M N

O

请填空完成该程序。

main()

{ int i,j,n; char ch='A';

scanf("%d",&n);

if(n<11)

{ for(i=1;i<=n;i++)

{ for(j=1; j<=n-i+1;j++)

{ printf("%2c",ch);

______;

}

______;

}

}

else printf ("n is too large!\n");

printf("\n");

}

.ch++ printf(“\n”)

62. 以下程序的定义语句中,x[1]的初值是______,程序运行后输出的内容是______。#include

main()

{ int x[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;

for(i=0;i<4;i++)

{ p[i]=&x[2*i+1];

printf("%d",p[i][0]);

}

printf("\n");

}

2 2468

63. 以下函数inverse的功能是使一个字符串按逆序存放。

inverse(str)

char str[];

{

char m;

int i,j;

for(i=0,j=strlen(str);i

{

m=str[i];

str[i]=______;

______;

}

}

.i++ str[j-1] str[j-1]=m

64. 以下程序的输出结果是______。

#include

main()

{ int j,a[]={1,3,5,7,9,11,13,15},*p=a+5;

for(j=3; j; j--)

{ switch(j)

{ case 1:

case 2: printf("%d",*p++); break;

case 3: printf("%d",*(--p));

}

}

}

9911

65. 若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是______。 int b,c; float a;

scanf("%f,%d,c=%d",&a,&b,&c)

5.0,4,c=3

66. mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。int mystrlen(char *str)

{ int i;

for(i=0;______!='\0';i++);

return( ______ );

}

Str[i]

67. 以下程序运行后的输出结果是______。

main()

{ int x=1,y=0,a=0,b=0;

switch(x)

{case 1:switch(y)

{ case 0:a++; break;

case 1:b++; break;

}

case 2:a++;b++; break;

}

printf("%d %d\n",a,b);

}

2 1

68. 以下程序中函数huiwen的功能是检查一个字符串是否是回文,当字符串是回文时,函数返回字符串:yes!,否则函数返回字符串:no!,并在主函数中输出,所谓回文即正向与反向的拼写都一样,例如:adgda。请填空。

#include

char *huiwen(char *str)

{ char *p1,*p2; int i,t=0;

p1=str;p2=______;

for(i=0;i<=strlen(str)/2;i++)

if(*p1++!=*p2--){t=1;break;}

if(______) return("yes!");

else return("no!");

}

main()

{ char str[50];

printf("Input:"); scanf("%s",str);

printf("%s\n",______);

}

p1+(strlen(str)-1)

t==0 或 !(t!=0)

huiwen(str)

69.若输入字符串:abcde↙,则以下while循环体将执行______次。

while( (ch=getchar())=='e')printf("*");

70.以下程序运行后的输出结果是______。

main()

{int x=15;

while(x>10&&x<50)

{x++;

if(x/3){x++;break;}

else continue;

}

printf("%d\n",x);

}

17

71.下列程序段的输出结果是______。

main()

{ char b[]="Hello,you";

b[5]=0;

printf("%s\n",b);

}

Hello

72.若给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;

}

6354

73以下程序运行后的输出结果是______。

main()

{ char a[]="123456789",*p;

int i=0;

p=a;

while(*p)

C语言常见复习题(选择填空)及参考答案

C语言常见复习题及参考答案 一、选择题 1.下述标识符中,()是合法的用户标识符。 A.A#C B.getch C.void D.ab* 2.在C语言中,字符型数据在内存中是以()形式存放的。 A.原码 B.BCD码 C.反码 D.ASCII码 3.以下选项中不合法的用户标识符是()。 A.abc.c B.file C.Main D.PRONTF 4.以下选项中不合法的用户标识符是()。 A.123 B.printf C.Anbsp; D.Dim 5.可以在C语言程序中用做用户标识符的一组标识符是()。 A.void B.as-b3 C.for D.2c define -123 -abc Do WORD If cas SIG 6.在以下各组标识符中,合法的用户标识符是(1)、(2)、(3)。 (1)A.001 B.table_1 C.0_t D.k% Int t*.1 W10 point (2)A.Fast_ B.void C.pbl D. Fast+Big abs fabs beep (3)A.xy_ B.longdouble C.*p D.CHAR 变量1 signed history Float 7.()是构成C语言的基本单位。 A.函数 B.过程 C.子程序 D.子例程 8.若有说明:char s1='\067';char s2="1";char s3='1';则s1中(1),s2中(2),s3中(3)。

(1).A.包含3个字符 B.包含2个字符 C.包含1个字符 D.无定值,说明不合法 (2).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 (3).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 9.若x为int型变量,则执行以下语句后,x的值为 x=6; x+=x-=x*x A.36 B.-60 C.60 D.-24 10.在C语言中,char 型数据在内存中是以()形式存储的。 A.原码 B.补码 C.ASCII码 D.反码 11.以下运算符中优先级最低的算符为(),优先级最高的为()。 A.&& B.& C.|= D.|| E.?: F.!= 12.若有运算符>、*=、<<、%、sizeof,则它们按优先级(由低至高)的正确排列顺序为 A.*= << > % sizeof B.<< *= > % sizeof C.*= > << sizeof % D.*= > << % sizeof 13.若有以下类型说明语句 char w; int x; float y; double z; 则表达式w*x+z-y 的结果是()类型。 A.float B.char C.int D.double 14.若w,x,y,z 均为int 型变量,则执行下面的语句后, w=(1), x=(2), y=(3), z=(4)。 w=5; x=4; y=w++*w++*w++; z=--x*=--x*--x;

C语言题库(填空题部分)

二、填空题 1、C语言中对文件读写之前必须先打开文件,文件的打开是通过调用________函数来实现。 答案: 1:fopen#fopen()#fopen() 知识点:知识点/基本理论/C11文件/C11_2文件函数 2、C语言中文件操作结束节后,必须关闭文件。而且关闭文件是通过调用__________函数来实现。 答案: 1:fclose#fclose()#fclose() 知识点:知识点/基本理论/C11文件/C11_2文件函数 3、字符串函数________用于从指定的磁盘文件中读出一个字符串。 答案: 1:fgets#fgets() 知识点:知识点/基本理论/C11文件/C11_2文件函数 4、字符串函数___________用于把一个字符串写入指定的磁盘文件中。 答案: 1:fputs#fputs() 知识点:知识点/基本理论/C11文件/C11_2文件函数 5、字符读写函数____________是用于从磁盘文件中读出一个字符。 答案: 1:fgetc#fgetc()#getc#getc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 6、字符读写函数____________是用于把一个字符写入磁盘文件。 答案: 1:fputc#fputc()#putc#putc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 7、共用体类型变量的定义关键字是________。 答案: 1:union 知识点:知识点/基本理论/C10共用体与枚举类型 8、定义枚举类型时采用的关键字是__________。 答案: 1:enum 知识点:知识点/基本理论/C10共用体与枚举类型 9、在C语言中,从参数的形式看,函数可以分为两类:无参函数和____________函数。 答案: 1:有参 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 10、在C语言中,函数的返回值是由___________语句传递的。 答案: 1:return#return() 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 11、在C语言中,按函数在程序中出现的位置可分为以下三种调用方式:函数语句、函数表达式和函数 __________。 答案: 1:参数 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 12、在C语言中,在调用一个函数的过程中又出现__________或间接地调用该函数本身,这一现象称为函数的递归调用。 答案: 1:直接 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 13、在C语言中,若确实不要求返回函数值,则应将函数定义为___________类型。 答案: 1:void 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 14、在C语言中,假使X为基本整型变量,如果我们采用printf("格式控制",X)格式输出X,那么"格式控制"具体表示为"__"。

C语言填空题

1、在考生目录下,给定程序FILL1、C的功能就是: 计算正整数num的各位上的数字之积。 例如,若输入:252,则输出应该就是:20。 若输入:202,则输出应该就是:0。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include #include main( ) {long int num,k; /************found************/ _____(1)_______ k=1; clrscr() ; printf("\Please enter a number:") ; scanf("%ld",&num) ; do { k*=num%10 ; /************found************/ _____(2)______ num=num/10 ; } while(num) ; printf("\n%ld\n",k) ; } 2、在考生目录下,给定程序FILL1、C的功能就是:从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字 符串转换成一个十进制数。 例如:从键盘上输入2345,则程序运行的结果应当为: n=2345。 程序有两个空(1)、(2)需要补充完整。请将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include "stdio、h" main() { char s[10]; int i; long int n=0; clrscr(); /**************found************/ ___(1)___; scanf("%s",s); /**************found************/ for(i=0;___(2)___;s[i] != ‘\0’ ;i++) n=n*10+s[i]-'0'; printf("n=%ld\n",n);

2011__C语言上机填空题

1 给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:S r π=2,在程序中定义的变量名要与公式的变量相同)。 例如,输入圆的半径值:19.527,输出为:s=598.949991。 2 请补充main 函数,该函数的功能是:计算两个自然数n 和m(m<10000)之间所有数的和(n 和m 从键盘输入)。 例如,当n=1,m=100时 ,sum=5050; 当 n=100,m=1000 时,sum=495550。 3 给定程序的功能是:判断字符ch 是否与串str 中的某个字符相同,若相同什么也不做,若不同则插在串的最后。 4 请补充函数fun,该函数的功能是:把ASCII 码为偶数的字符从字符串str 中删除,结果仍然保存在字符串str 中,字符串str 从键盘输入,其长度作为参数传入函数fun 。 例如,输入"abcdef",输出"ace"。 5 请补充函数fun,该函数的功能是:判断某一个年份是否为闰年。 例如,1900年不是闰年,2004是闰年。 6 请补充函数fun,函数fun 的功能是求n 的阶乘。 7 请补充函数fun,该函数的功能是:整除x 且是偶数的数,把这些数保存在数组bb 中,并按从大到小的顺序输出。 例如当x=20时,依次输出:20 10 4 2。 8 请补充函数fun,它的功能是:计算并输出n(包括n)以内所有能被3或7整除的自然数的倒数之和。 例如,在主函数中从键盘给n 输入30后,输出为:s=1.226323。 9 请补充main 函数,该函数的功能是:计算每个学生成绩的平均分,并把结果保存在数组 bb 中 。 例 如 ,当 score[N][M]={{83.5,82,86,65,67},{80, 91.5 ,84,99,95},{90.5,95,86,95,97}}时,三个学生的平均分为76.7,89.9,92.7。 10 请补充函数fun(char*s),该函数的功能是:把字符串中的内容逆置。 例如,字符串中原有的字符串为abcde,则调用该函数后,串中的内容为edcba 。 11 请补充main 函数,该函数的功能是:输出一个N N ?矩阵,要求非周边元素赋值0,周边元素赋值1。 12 请补充main 函数,该函数的功能是:从键盘输入一个字符串及一个指定字符,然后把这个字符及其后面的所有字符全部删除。结果仍然保存在原串中。 例如,输入"abcdef",指定字符为"e",则输出"abcd"。 13 请补充main 函数,该函数的功能是:从键盘输入3个整数,然后找出最大的数并输出。 例如,输入12,45,43,最大值为45。 14 函数fun 的功能是:从三个形参a 、b 、c 中找出中间的数,作为函数值返回。 例如,当a=3,b=5,c=4时,中间的数为4。 15 函数fun 的功能是:统计长整数n 的各位上出现数字1、2、3的次数,并用外部(全局)变量c1、c2、c3返回主函数。 例如,当n=123114350时,结果应该为:c1=3 c2=1 c3=2。 16 请补充main 函数,该函数的功能是:打印出1 1000中满足个位数字的立方等于其本身所有数。 本题的结果为:1 64 125 216 729 17 请补充main 函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有三位数。 本题的结果为: 111 222 333 444 555 666 777 888 999。 18 请补充main 函数。该函数的功能是:求1 100(不包括100)以内所有素数的平均值。 程序运行后的结果为42.40。 19 请补充函数fun,该函数的功能是:求一维数组x[N]的平均值,并对所得结果进行四舍五入(保留两位小数)。 例如,当x[10]={15.6,19.9,16.7,15.2,18.3,12.1,15.5,11.0,10.0,16.0},结果为:avg=15.030000。 20 请补充函数fun,该函数的功能是:把一个整数转换成字符串,并倒序保存在字符数组str 中。例如,当 n=13572468 时,str="86427531"。 21 请补充函数fun,该函数的功能是:将字符串tt 中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Are you come from Sichuan?",则输出"are you come from sichuan?"。 22 请补充main 函数,该函数的功能是:从键盘输入一个长整数,如果这个数是负数,则取它的绝对值,并显示出来。例如,输入:-3847652,结果为:3847652。 23 请补充main 函数,该函数的功能是:从键 盘输入若干字符放到一个字符数组中,当按回车键时结束输入,最后输出这个字符数组中的所有字符。 24 请补充main 函数,该函数的功能是求方程ax 2+bx+c=0的两个实数根。方程的系数a 、b 、c 从键盘输入,如果判别式(disc=b 2-4ac)小于0,则要求重新输入a 、b 、c 的值。 例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.00,x2=-1.00。 25 请补充main 函数,该函数的功能是:从键盘输入两个字符串并分别保存在字符数组str1和str2中,用字符串str2替换字符串str1前面的所有字符。注意:str2的长度不大于str1,否则需要重新输入。 例如,如果输入str1="abced",str2="fk",则输出"fkced"。 26 给定程序中,函数fun 的功能是:将形参指针所指结构体数组中的三个元素按num 成员进行升序排列。 27 给定程序中,函数fun 的功能是:把形参s 所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动 (注:字符串的长度不小于2)。 例如,形参s 所指的字符串为:abcdefgh,执行结果为:ahcbedgf 。 28 给定程序的功能是:分别统计字符串中大写字母和小写字母的个数。 例如,给字符串ss 输入:AaaaBBbl23CCccccd,则输出结果应为:upper=5,lower=9。 29 请补充main 函数,该函数的功能是:先以只写方式打开文件"out29.dat",再把字符串str 中的字符保存到这个磁盘文件中。 30 请补充main 函数,该函数的功能是:把文本文件B 中的内容追加到文本文件A 的内容之后。 例如,文件B 的内容为"I m ten.",文件A 的内容为"I m a student!",追加之后文件A 的内容为"I m a student ! I m ten."。 31 请补充main 函数,该函数的功能是:求n!。 例如,7!=5040。 32 请补允函数fun,该函数的功能是:计算并输出下列多项式的值。 111 S =1+ + ++ 1+2 1+2+3 1+2+3+ 例如,若主函数从键盘给n 输入50后,则输出为S=1.960784。 33

C语言填空题以及答案

1. 一条简单语句是以________字符作为结束符的,一条复合语句是分别以 ________字符和________字符作为开始符和结束符的。 2. 任何一个C++程序至少且只能包含一个________函数,且程序总是从这个函数开始执行,不论这个函数的位置如何。一个函数定义由________和________两部分组成。 3. C++头文件和源程序文件的扩展名分别为________和________。 4. cout与操作符_______配合使用才能显示输出,cin与操作符_____配合使用才能实现输入。 5. 数据类型int,char,bool,float,double, int * 等的类型长度分别为________、________、________、________、________和________。 6. 数值常量46、0173和0x62对应的十进制值分别为________、________和________。 7. 字符串”It\’s\40a\40C++programe!”中包含有__________个字符。 8. 若x=5,y=10,则计算y*=++x表达式后,x和y的值分别为________和 ________。 9. 若x=25,则计算y=x--表达式后,x和y的值分别为________和________。 10. 假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)的值分别为________和________。 11. 假定x=64,y=88,则x<<2和y>>2的值分别为________和________。 12. 假定x是一个逻辑量,则x&&true的值与________的值相同,x||false的值也与________的值相同。 13. 假定x是一个逻辑量,则x&&!x和x||!x的值分别为________和________。 14. 假定x=10,则表达式x<=10?20:30的值为________。 15. 表达式sqrt(81)和pow(6,3)的值分别为______________和 ______________。 16. 数学算式(1+x)sin48°和axbex+1对应的算术表达式分别为________和 ________。 17. 逻辑表达式:a>=x||b>2*y+10的相反式为:________。 18. 在嵌套的if语句中,每个else关键字与它前面最接近的________关键字相配套。 19. 在for语句中,假定循环体被执行次数为n,则<表达式1>共被计算________次,<表达式2>共被计算________次,<表达式3>共被计算________次。20. 执行for和while循环时,每次是先进行________的判断,然后再执行 ________,执行do循环时则相反。

c语言程序填空题

导出题库试题(1~100) 共计104道试题 一、程序填空答案(104题) 【程序填空】 1功能:求两个非负整数的最大公约数和最小公倍数。 【1】r != 0 或r 【2】r=m%n 或r=m-m/n*n 【3】n 【4】gcd,lcm 或n,lcm 2功能:下面的程序是求1!+3!+5!+……+n!的和。 【1】s=0 【2】i+=2 或i=i+2 或i++,i++ 【3】j<=i 或i>=j 或jj 【4】f= f * j 3功能:将一个字符串中下标为m的字符开始的全部字符复制成为另 一个字符串。 【1】p1= str1 + m 【2】*p2++=*p1++ 或*(p2++)=*(p1++) 或*p2=*p1,p2++,p1++ 或*p2=*p1++,p2++ 或*p2++=*p1,p1++ 【3】*p2='\0' 或*p2=0 或*p2=NULL【4】strcopy(str1,str2,m) 4功能:以下程序是用选择法对10个整数按升序排序。 【1】#define N 10 【2】k=I 【3】jj 或j<=N-1 或N-1>=j【4】k != i 5功能:删除一个字符串中的所有数字字符。 【1】s[i]!= 或*(s+i)!= 或*(i+s)!= 【2】|| 【3】s[j]=s[i] 或*(s+j)=*(s+i) 或s[j]=*(s+i) 或*(s+j)=s[i] 【4】delnum(item) 6功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出 其和。 【1】n=0 【2】i<=300 或i<300 或300>=i 或300>i 【3】i%7 == 0 || i%17 == 0 或!(i%7)||!(i%17) 或!(i%17)||!(i%7) 或!(i%7&&i%17) 【4】n%5 == 0 或!(n%5) 或n/5*5==n 7功能:求100-999之间的水仙花数 说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。 例如:153=1^3+5^3+3^3)。 【1】k=0 【2】j=m%10 或j=m-m/10*10 或j=m-10*(m/10) 【3】return(1) 【4】fun(i) 8功能:输出9*9口诀。 【1】i<10 或10>i 【2】j++ 或++j 或j=j+1 【3】result 9功能:输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。 【1】k=0 【2】n%10 或n-n/10*10 或n-10*(n/10) 【3】while(n>0) 或while(0

c语言程序填空题完整

三、程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ① ; b= ② ; a= ③ ; printf("a=%d,b=%d\n",a,b); }

【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ① ; return( ② ); } 【3.3】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言填空题

1. 在考生目录下,给定程序FILL1.C的功能是: 计算正整数num的各位上的数字之积。 例如,若输入:252,则输出应该是:20。 若输入:202,则输出应该是:0。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构! #include #include main( ) {long int num,k; /************found************/ _____(1)_______ k=1; clrscr() ; printf("\Please enter a number:") ; scanf("%ld",&num) ; do { k*=num%10 ; /************found************/ _____(2)______ num=num/10 ; } while(num) ; printf("\n%ld\n",k) ; } 2. 在考生目录下,给定程序FILL1.C的功能是:从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字符串转换成一个十进制数。 例如:从键盘上输入2345,则程序运行的结果应当为:n=2345。 程序有两个空(1)、(2)需要补充完整。请将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构! #include "stdio.h" main() { char s[10]; int i; long int n=0; clrscr();

/**************found************/ ___(1)___; scanf("%s",s); /**************found************/ for(i=0;___(2)___;s[i] != ‘\0’ ;i++) n=n*10+s[i]-'0'; printf("n=%ld\n",n); } 3. 在考生目录下,给定程序FILL1.C的功能是:输出Fabonacci数列:1,1,2,3,5,8,……的前20项的 项值,要求每行输出5个数。请填空。 程序有两个空(1)、(2)需要补充完整。请将程序调试出 所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include "stdio.h" main() { long int f[20]={1,1}; int i; clrscr(); /**************found************/ ___(1)___; printf("%8ld,%8ld",f[0],f[1]); for(i=2;i<20;i++) { f[i]=f[i-1]+f[i-2]; /**************found************/ if(___(2)i%5==0) printf("\n"); printf("%8ld",f[i]); } printf("\n"); } 4. 在考生目录下,给定程序FILL1.C的功能是:实现在N行M列的二维数组中,找出每一行上的最大值,且原数组值不变。 例如:如果二维数组元素的值为: 1 5 7 4 2 6 4 3 8 2 3 1 时,程序的运行结果应为: The max value in line 0 is 7 The max value in line 1 is 6

c语言经典选择填空题1

选择题(30分)(第一部分分10分,第二部分12分,第三部分8分) 第一部分:简单类题目(50个题目,从中选择10,每题1分) 1、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为(C)A.4B.16 C.32D.522 2.以下程序的输出结果(B)。 main( ) { int x1=3, x2=0, x3=0; if (x1=x2+x3) printf("* * * *"); else printf("# # # #"); } A.输出:* * * * B.输出:# # # # C.存在语法错误D.无输出结果 3.下面四个选项中,均是合法转义字符的选项是(A)。 A.'\'' '\\' '\n' B.'\' '\017' '\"' C.'\018' '\f' 'xab' D.'\\0' '\101' 'xlf' 4.若有说明:int a=1,b=2,c=3,d=4;则表达式a

c语言填空题题库

二,填空题(10道小题,共20分) 1、一个C源程序中至少应包含一个[main] 函数。 2、a是整型变量,则执行表达式a=25/3%3后a的值为。[2] 3、int m=5,y=2;则表达式y+=y- =m*=y的值为。[-16] 4、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf("%d , %d \n", a,b );的输出结果分别是[2,1] 5、条件表达式的格式为表达式1?表达式2:表达式3,若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较[高]的类型 6、当运行以下程序时,从键盘键入right?(代表回车),则下面程序的运行结果是。 #include main( ) { char c; while((c=getchar())! ='?') putchar(++c) } [sjhiu?] 7、C语言中的数组必须先[定义],然后使用。 8、如果需要从被调用函数返回一个函数值,被调用函数必须包含【return】语句。 9、已知:float f1=3.2,f2,*pf1=&f1;f2=f1,则*f2的值为。[3.2] 10、以下程序 void fun(char *a, char *b) { a=b; (*a)++; } main ()

{ char c1="A", c2="a", *p1, *p2; p1=&c1; p2=&c2; fun(p1,p2); printf(“&c&c\n”,c1,c2); } 运行后的输出结果是。[&c&c] 11、字符串常量“123”在内存中的字节数是。[8字节] 12、已有定义 :int x=3 ;则表达式 :x=x+1.78 的值是。【4】 13、int a=24; printf("%o ", a );输出结果是。【30】 14、当a=3,b=2,c=1时,表达式f=a>b>c的值是。【0】 15、下面程序的运行结果是。【x=1,y=20】 #include main() { int i,x,y; i=x=y=0; do {++i; if(i%2!=0) {x=x+i;i++;} y=y+i++; } while (i<=7); printf("x=%d,y=%d\n",x,y); } 16、以下语句char str[10]={"China"}; printf("%d",strlen(str))的输出结果是。[5] 17、为了便于区别全局变量和局部变量,通常将全局变量的首字母。[用大写字母表示] 18、已知:int b=5,*p=&b;并且b的地址为4000,则“printf("%d,%d",p,*p);”的输出结果是。【4000,5】 19、程序main() { int a[2][3]={{1,2,3},{4,5,6}};

大学计算机C语言程序设计(填空题)

一、填空共219题 第1题题号:422 设有以下结构类型说明和变量定义,则变量a在内存所占字节数是【1】 . Struct stud { char num[6]; int s[4]; double ave; } a,*p; 答案: 1). 22 第2题题号:533 设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】. for (x=0,y=0;y!=123&&x<3;x++) scanf ("%d",&y); 答案: 1). 3 第3题题号:496 静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是 在【2】时进行的. 答案: 1). 编译 2). 函数调用 第4题题号:96 已知a=13,b=6, a&b的十进制数值为【1】. 答案: 1). 4 第5题题号:398

程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次. 答案: 1). 0 第6题题号:651 设w=5;w+= -2;则w的值为【1】. 答案: 1). 3 第7题题号:258 下面程序段的输出结果是【1】. int a=12; a=a&0377;pritnf("%d\n",a); 答案: 1). 12 第8题题号:457 设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2 后,t的值是【1】. 答案: 1). 1 第9题题号:402 设a取二进制数00101101,若想通过a^b运算使a的高4位取反,低4位不变,则b的 二进制数是【1】. 答案: 1). 11110000 第10题题号:311 若所用变量均已正确定义,则执行下面程序段后的值是【1】. for(i=0 ; i<2 ; i++ ) printf("YES"); printf("\n"); 答案: 1). YESYES

C语言程序填空题及答案

程序填空题 1、 #include void main() { int n,k=0; scanf("%d",&n); while( _____1_____ ) // 1)n 2) n!=0; { k++; _____2_____; n=n/10 } printf("%d\n",k); } 2、 #include #include #define f(x) x*x-5*x+sin(x) void main() { int x; float max; ______1______ // max=f(1); for(x=2;x<=10;x++) ______2______ // if(f(i)>max) max=f(i); printf("%f\n",max); } 3、 #include void main() { char c; c=getchar(); if(______1______) // c>='a' && c<'v' c=c+5; else if (c>='v' && c<='z') ______2______ //c=c-21; putchar(c); } 4、

#include void Dec2Bin(int m) { int bin[32],j; for(j=0;m!=0;j++) { bin[j]= ______1______; // m%2 m=m/2; } for(;j!=0;j--) printf("%d", ______2______ ); // bin[j-1] } void main() { int n; scanf("%d",&n); Dec2Bin(n); } 5、 #include #include void main() { int n,s=0; scanf("%d",&n); ______ 1 ______ //n=(n>0?n:-n) ; 2)n=fabs(n); while(n!=0) { ______ 2 ______ // s=s+n%10; n=n/10; } printf("%d\n",s); } 6、 /#include void swap(______1______) //int *pa , int *pb { /*交换两个数的位置*/ int temp; temp = *pa; *pa = *pb;

C语言考试填空题(全部答案)

计算机程序设计基础(C语言) 程序填空练习题 程序填空:阅读程序。在划线处填写适当的表达式或语句,使程序完整并符合题目要求 1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。 main( ) 参考答案: { char ch; ch=getchar(); if( ) ch>='a'&&ch<='z'|| ch>='A'&&ch<='Z' printf("It is an English character\n"); else if( ) ch>='0'&&ch<='9' printf("It is a digit character\n"); else if( ) ch==' ' printf("It is a space character\n"); else printf("It is other character\n"); } 2.10个学生成绩按交换法排序。 main() { float score[10], temp1; int i, j; printf("Please enter score:\n"); for (i=0; i<10; i++) scanf("%f",&score[i]); for (i=0; i<9; i++) for (j=i+1; j<10; j++) if (score[j] > score[i]) { temp1=score[j]; score[j]=score[i]; score[i]=temp1; } printf("Sorted results:\n"); for (i=0; i<10; i++) printf("%4.0f\n", score[i]); } 11.排序函数:用交换法按成绩由高到低对学生成绩重新排序 void Sort(float score[ ],int n) { int i, j; float temp1; for (i=0; i score[i] { temp1 = score[j]; ; score[j]=score[i]; score[i] = temp1; } } }

C语言中常见的填空题

填空题: 1 若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量c中的值是_9____ . c=(a-=(b-5)); c=(a%11)+(b=3); 2 getchar()函数只能接收一个_字符____. 3 当a=1,b=2,c=3时,执行以下程序段后b=___2__. if (a>c) b=a; a=c; c=b; 4若输入字符串:abcde<回车>,则以下while循环体将执行__0___ 次. while((ch=getchar())=='e') printf("*"); 5 字符串的结束标志是___\0 '\0' 0 6 如果函数不要求返回值,可用__void___来定义函数为空类型. 7 将函数funl 的入口地址赋给指针变量p的语句是_p=funl; 8 设有以下共用体类型说明和变量定义,则变量d在内存所占字节数是__12___。union stud { short int num; char name[8];float score[3]; double ave; } d,stu[3]; 1. 设x的值为15,n的值为2,则表达式x%=(n+=3)运算后x的值是_0____. 2. 以下程序的输出结果为_9,10____, #include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a,j--);} 3. 设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句 t=!(a+b)+c-1&&b+c/2 后,t的值是__1___. 4. 若输入字符串:abcde<回车>,则以下while循环体将执行 ____0_ 次. while((ch=getchar())=='e') printf("*"); 5. 若有以下数组a,数组元素:a[0]~a[9],其值为 9 4 12 8 2 10 7 5 1 3 该数组的元素中,数值最小的元素的下标值是_8____. 6. 函数不可以进行嵌套定义,但可以进行嵌套_调用____. 7. 在c程序中,只能给指针变量赋NULL值和__地址___值. 8. 设有以下共用体类型说明和变量定义,则变量a在内存所占字节数是 _16____。 union stud { char num[6]; float s[4]; double ave; } a,*p;

C语言程序填空题

导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); } 【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0;long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【3.3】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言期末复习填空题部分

期末复习填空题部分 一、填空题 1 设x为int型变量,写出描述“x是偶数与y是奇数”的表达式是 x%2==0 && y%2==1 。 2 以下程序的输出结果是 -27 。 #include<> void main() { char c; c=0345; printf("%d\n",c); } 3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是 -12 。 4 若float x;以下程序段的输出结果是 x=; printf("%f\n",(int)(x*1000+/(float)1000); 5 下面的程序运行时从键盘上输入90<回车>,程序的输出结果是a=123,b=,c=789。 #include<> void main() { int a; float b,c; scanf("%3d%3f%3f",&a,&b,&c); printf("a=%d,b=%.1f,c=%.0f",a,b,c); } 6 若输入字符串:abcdefg<回车>,则以下while循环体将执行 0 次。 while((ch=getchar())=='g') printf("*"); 7 下面程序的输出结果是_67,D__。 main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } 8 执行下面的语句:printf("%d\n",(a=3*5,a*4,a+5));,输出是 20 。 9 下列程序的输出结果是 3,2 -1 。 main() { int x=0,y=5,z=3; while(z-->0 && ++x<5) y=y-1; printf("%d,%d,%d\n",x,y,z); } 10 下列程序的输出结果是 54 。

相关文档
最新文档