文档库 最新最全的文档下载
当前位置:文档库 › 程序填空题

程序填空题

程序填空题
程序填空题

1.下列程序由键盘输入一个文件名,然后把从键盘输入的字符依次存放到磁盘文件中,直到输入一个"#"为止。

#include ""

main( )

{ FILE *fp;

char ch,filename[10];

scanf("%s",filename); /*用户输入存在磁盘上的文件名*/

if((fp= ⑦ (filename,"w"))==NULL)

{ printf("cannot open file\n");

exit(0);

}

while((ch=getchar())!='#')

⑧ ;

fclose(fp);

}

2.下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。

#include <>

main()

{ int x, ① ;

scanf("%d",&x);

y= ② ;

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

}

3.下列程序的功能是输出1~100之间能被7整除的所有整数。将程序补充完整,填在空内。

main()

{ int i;

for(i=1; ③ ;i++)

{ if(i%7) ④ ;

printf("%d ",i);

}

}

4.以下程序用以删除字符串中所有的空格,请填空。

main()

{ char s[100]={"Our teacher teach C language!"};

int i,j;

for(i=j=0;s[i]!= '\0';i++)

if(s[i]!= ' ') { ⑤ ;j++;}

s[j]= ⑥ ;

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

}

5.结构体数组中存有三个人的姓名和年龄,以下函数fun的功能是输出三人中最年长者的姓名和年龄。

struct man

{ char name[20];int age;}person[]={{"Mary",16},{"Tom",21},{"Jim",18}};

void fun( ⑦ person[ ] )

{ int i,old=0;

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

if(person[old].age

printf("%s %d", person[old].name, person[old].age);

}

6.程序实现当输入的字符为小写字母时,输出对应的大写字母。

#include ""

main()

{ char ch1,ch2;

printf("请输入一个小写字符:");

scanf("%c", &ch1);

if( ① )

{ ch2 = ch1- ② ;

printf("%c",ch2);

}

else

printf("输入出错!");

}

7.求1!+2!+3!+…+10!。将程序补充完整,填在空内。

#include <>

main()

{ float s=0,t=1;

int n;

for(n=1; ③ ;n++)

{ t*=n;

④ ;

}

printf("1!+2!+3!+...+10!=%.0f",s);

}

8.下面的程序是使输入的一个字符串按反序存放,在主函数中输入和输出字符串。 #include ""

main()

{ int inverse(char str[]);

char str[100];

printf("Input String:");

scanf("%s", str);

⑤ ;

printf("Inverse string:%s", str);

}

int inverse(char str[])

{ char t;

int i,j;

for(i=0, j=strlen(str); ⑥ ; i++,j--)

{ t = str[i]; str[i] = str[j-1]; str[j-1]=t;} }

9.下列程序的功能是实现两个变量x和y的值的交换。

main()

{ int ① =10,y=20;

x+=y;

y=x-y;

② ;

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

}

10.下面程序的功能是输出两个字符串中对应相等的字符。

#include <>

main()

{

int i=0;

char x[]="programming";

char y[]="Fortran";

while( ③ )

{

if(x[i]==y[i])

putchar(x[i]) ;

④ ;

}

}

11.以下函数用来在w数组中插入x。n所指向的存储单元中存放w数组中字符个数。数组w中的字符已按从小到大的顺序排列,插入后数组w中的字符仍有序。

void fun(char *w,char x,int *n)

{ int i,p;

p=0;

w[*n]=x;

while(x>w[p]) p++;

for(i=*n-1;i>=p;i--) ⑤ ;

w[p]=x;

}

12.以下程序用来判断指定文本文件“”是否能正常打开,请填空

#include <>

main( )

if ((fp=fopen(" ", " r "))==

printf("未能打开文件!\n ");

else

printf("文件打开成功!\n ");

fclose(fp);

}

13.以下程序的功能是计算:s=1+12+123+1234+12345。请填空。

main()

{ int t=0, ① ,i;

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

{ t=i+ ② ; s=s+t; }

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

}

14.下面程序的功能是输出以下形式的金字塔图案,请填空。

*

***

*****

*******

main( )

{ int i,j;

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

{ for(j=1;j<= ③ ;j++) printf(“”);

for(j=1;j<= ④ ;j++) printf(“*”);

printf(“\n”);

}

}

15.函数fun的功能是将s所指字符串中的所有非数字字符移到所有数字字符之后,并保持数字字符和非数字字符原有的先后次序。

#include <>

void fun(char *s)

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

char t1[80],t2[80];

for(i=0;s[i]!='\0';i++)

if(s[i]>='0'&&s[i]<='9')

{ t1[j]=s[i];j++; }

else

{ ⑤ ; k++;}

t2[k++]= '\0';

for(i=0;i

for(i=0;i

}

16.下列程序从一个二进制文件中读取结构体数据,并把读出的数据显示在屏幕上。 #include ""

struct rec

{ int a;

float b;

};

main()

{ FILE *fp; struct rec r;

if((fp= ⑦ ("","rb"))==NULL)

{

printf("No find the file!");

exit(0);

}

do

{ fread( &r ,sizeof(struct rec),1 ,fp);

if(feof(fp) ) ⑧ ;

printf("%d,%f",,;

}while(1);

fclose(fp);

}

17.以下程序用来输出字符串"china"的长度,请填空。

#include " ① "

#include ""

main()

{ char a[]="china";

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

}

18.下列程序的功能是把输入的十进制长整型数以十六进制数的形式输出。 main()

{ char b[]="09ABCDEF";

int c[64],d,i=0,base=16;

long n;

scanf("%ld",&n);

do

{ c[i]= ③ ;

i++;

n= ④ ;

}while(n!=0);

for(--i;i>=0;--i)

{ d=c[i];printf("%c",b[d]);}

}

19.下列程序的功能是将数组a的元素按行求和并存储到数组s中。

main()

{ int a[3][4],s[3]={0};

int i,j;

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

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

scanf("%d", ⑤ );

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

{ for(j=0;j<4;j++)

⑥ ;

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

}

}

20.以下函数把b字符串连接到a字符串的后面,并返回a中新串的长度。 int strcat(char a[],char b[])

{ int num=0,n=0;

while( ⑦ ) num++;

while(b[n]!= '\0')

{ ⑧ ; num++; n++;}

a[num]='\0';

return(num);

}

21.以下程序的功能是:输出a、b、c三个变量中的最小值,请填空。

main()

{ int a,b,c,t1, ① ;

scanf("%d%d%d",&a,&b,&c);

t1=a

t2= ② ;

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

}

22.根据以下函数关系,对输入的x 值,计算出相应的y 值,设x 和y 都是整数。将程序补充完整,填在空内。

??

???≤<+≤<<==10

220211012x x x x

x x y main() { int x,y; scanf("%d",&x); if(x<=1) y=x;

else if( ③ ) y=10*x; else if( ④ ) y=x*x+20; else y=-1;

if(y!=-1) printf("%d\n",y); else printf("error\n"); }

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

main() {

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

printf(“往数组x 中读入10个整数:”); for (i=0;i<10;i++)

scanf("%d", ⑤ ); for( i=1 ;i<10;i++)

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

printf("\n"); }

24.以下程序中函数fun 的功能是:统计person 所指结构体数组中所有性别(sex)为M 的记录的个数,存入变量n 中,并作为函数值返回。请填空: #include<> #define N 3 typedef struct

{int num;char nam[10]; char sex;}SS; int fun(SS person[]) { int i,n=0;

for(i=0;i

if( ⑦ =='M') n++; return n;

}

25.下列程序的功能是将值为三位正整数的变量x 中的数值按照个位、十位、百位的顺序拆分并输出。将程序补充完整,填在空内。 #include <> main()

{ int ① =123;

printf("%d,%d,%d\n", ② ,x/10%10,x/100); }

26.根据以下函数关系,对输入的x 值,计算出相应的y 值。

??????

?<≤+<≤<≤<-=50

2020

520105100010

x x x x x x y

main()

{ int x,c; float y;

scanf("%d",&x);

if( ③ ) c=-1;

else c=x/10;

switch(c)

{ case -1: y=-10;break;

case 0: y=x;break;

case 1: y=5;break;

case 2:case 3:case 4:______④_______;break;

default: y=-2;

}

if( y!=-2) printf("y=%f\n",y);

else printf("error\n");

}

main()

{ SS W[N]={{1, "AA",'F'},{2, "BB",'M'},{3, "CC",'M'}};

int n;

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

}

27.以下程序统计从终端输入的字符中大写字母的个数,num[0]中统计字母A的个数,num[1]中统计字母B的个数,其它依次类推.用#号结束输入,请填空。

#include <>

main()

{ int num[26]={0},i; char c;

while(( c= ⑤ )!='#')

if( ⑥ ) num[c-‘A’]+=1;

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

printf("%c:%d\n",i+'A',num);

}

28.人员记录由编号和出生年、月、日组成,N名人员的数据已存入结构体数组std且编号唯一。函数fun 的功能是找出指定编号为num的人员的数据,返回找到的数据在数组中的下标,若指定编号不存在,返回-1。

#include ""

#include ⑦

#define N 8

typedef struct

{ char num[10];int year,month,day ;}STU;

int fun(STU std[ ],char num[])

{ int i;

for(i=0;i

if(strcmp( ⑧ ,num)==0 )

return i;

return -1;

}

29.下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。

#include <>

main()

{ int x, ① ;

scanf("%d",&x);

y= ② ;

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

}

30.以下程序的功能是输入任意整数给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");

}

31.函数fun的功能是将正整数n的各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数x,并返回。例如:n=1234,则x=13。

#include <>

unsigned long fun(unsigned long n)

{ unsigned long x=0,i=1;

int t;

while(n)

{ t=n% ⑤ ;

if(t%2!=0)

{ x=x+t*i; i=i*10;}

n= ⑥ ;

}

return x;

}

32.以下程序的功能是将文件的内容复制到中,请填空。

#include<>

main()

{ FILE *fp1,*fp2;

char str[81];;

fp1=fopen("","r");

fp2=fopen("","w" );

while(!feof(fp1))

{ fgets(str,81,fp1);

fputs( ⑦ );

}

fclose(fp1);

⑧ ;

}

33.下列程序的功能是实现两个变量x和y的值的交换。将程序补充完整,填在空内。

main()

{ int x=10, ① =20;

x+=y;

y=x-y;

② ;

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

}

34.有以下程序段,且变量已正确定义和赋值

for(s=,k=1;k<=n;k++) s=s+(k*(k+1));

printf("s=%f\n\n",s);

请填空,使下面程序段的功能为完全相同

s=;k=1;

while( ③ )

{ s=s+1.0/(k*(k+1)); ④ ;}

printf("s=%f\n\n",s);

35.下面rotate函数的功能是:将n行n列的矩阵A转置为A’,请填空。

#define N 4

void rotate(int a[][N])

{ int i,j,t;

for(i=0;i

for(j=0; ⑤ ;j++)

{ t=a[i][j];

⑥;

a[j][i]=t;

}

}

36.函数fun的功能是将存放在结构体数组中的学生数据按照姓名字典序(从小到大)排序。请在下划线处填入正确的内容使函数完整。

#include <>

#include <>

struct student

{ long sno; /* 学号 */

char name[10]; /* 姓名 */

float score[3]; /* 3门课成绩 */

};

void fun(struct student a[],int n)

{ ⑦ t;

int i,j;

for(i=0;i

for(j=i+1;j

if(strcmp( ⑧ ) > 0)

{ t=a[i]; a[i]=a[j]; a[j]=t;}

}

37.下列程序的功能是把从键盘输入的字符输出。将程序补充完整,填在空内。

#include <>

main()

{ char ① ;

ch= ② ;

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

}

38.下面程序的功能是:输出100以内能被3整除且个位数为6的所有正整数。将程序补充完整,填在空内。

#include <>

main()

{ int i,j;

for(i=0; ③ ;i++)

{ j=i*10+6;

if( ④ ) continue;

printf("%d",j);

}

39.下面程序的功能是检查一个N×N矩阵是否对称(即判断是否所有的a[i][j]等于a[j][i])。请填空。

#define N 4

main()

{ int a[N][N]={1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4};

int i,j,found=0;

for(i=0; i

for(j=0; ⑤ ; j++)

if(a[i][j]!=a[j][i])

{ ⑥ ;

break;

}

if(found) printf("No");

else printf("Yes");

}

40.下面程序用以统计文件中小写字母a的个数。请填空。

#include<>

main( )

{ FILE *fp;

char m; long n=0;

if((fp=fopen("", ⑦ ))==NULL)

{ printf("cannot open file\n");exit(0);}

while(!feof(fp))

{ m= fgetc(fp) ;

if(m=='a') n++;

printf("n=%ld\n", n);

⑧ ; }

程序填空题

1.下列程序由键盘输入一个文件名,然后把从键盘输入的字符依次存放到磁盘文件中,直到输入一个"#"为止。 #include "" main( ) { FILE *fp; char ch,filename[10]; scanf("%s",filename); /*用户输入存在磁盘上的文件名*/ if((fp= ⑦ (filename,"w"))==NULL) { printf("cannot open file\n"); exit(0); } while((ch=getchar())!='#') ⑧ ; fclose(fp); } 2.下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。 #include <> main() { int x, ① ; scanf("%d",&x); y= ② ; printf("%d\n",y); } 3.下列程序的功能是输出1~100之间能被7整除的所有整数。将程序补充完整,填在空内。 main() { int i;

for(i=1; ③ ;i++) { if(i%7) ④ ; printf("%d ",i); } } 4.以下程序用以删除字符串中所有的空格,请填空。 main() { char s[100]={"Our teacher teach C language!"}; int i,j; for(i=j=0;s[i]!= '\0';i++) if(s[i]!= ' ') { ⑤ ;j++;} s[j]= ⑥ ; printf("%s\n",s); } 5.结构体数组中存有三个人的姓名和年龄,以下函数fun的功能是输出三人中最年长者的姓名和年龄。 struct man { char name[20];int age;}person[]={{"Mary",16},{"Tom",21},{"Jim",18}}; void fun( ⑦ person[ ] ) { int i,old=0; for(i=0;i<2;i ++) if(person[old].age

c语言程序填空题1

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

for(i=0; i<10; i++) scanf &a[i]); findmin(a, 10, k); printf ("%d, %d\n", *k, a L*kJ); } 【3.4】下面程序的功能是计算1-3+5-7+……-99+101的值。 main() { int i, s=0: for(i=l; i<=101: i+=2) {①; s二s+t: ②; } printf ("%d\n", s); } [3.5]有以下程序段: s=l. 0; for(k=1: k<=n: k++) s=s+l. 0/(k*(k+1)); printf ("%f\n", s); 填空完成下述程斥,使之与上述程序的功能完全相同。 s=0. 0: ①; k=0; do { s二s+d; ②; d=1.0/(k*(k+l)); }while(③); printf ("%f\n", s); [3.6]下而程用的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。 main () ;、float x, amax, amin; scanf &x); amax=x: amin=x;

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;pamax) amax=x; if( ② ) amin=x; scanf("%f",&x); } printf("\namax=%f\namin=%f\n",amax,amin); } 【3.7】下面程序的功能是将形参x的值转换为二进制数, 所得的二进制数放在一个一维数组中返回,二进制数的 最低位放在下标为0的元素中。 fun(int x,int b[]) { int k=0,r; do { r=x% ①; b[k++]=r; x/= ②; }while(x); } 【3.8】下面程序的功能是输出1到100之间每位数的乘 积大于每位数的和的数。例如数字26,数位上数字的乘 积12大于数字之和8。 main() { int n,k=1,s=0,m; for(n=1;n<=100;n++) { k=1; s=0; ①; while( ② ) 页脚

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~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

1-8道程序填空题

二、填空题 1.根据下图写出InputBox函数中的参数。 InputBox((1), (2), (3)) 2.执行下面的程序,在窗体上 显示的输出结果的第一行是 (4),第二行是(5)。 Option explicit Private sub form_click() Dim I as integer, j as integer J=10 For I=1 to j I = I+1 J = j - i Next I Print I Print j End Sub 3.执行下面的程序,在窗体上显示的输出结果的第一行是(6),第三行是(7)。 Private sub form_click() Dim a as integer Dim I as integer A=2 For I=1 to 9 Call sub1(I, a) Print I,a Next I End Sub Private Sub Sub1(x as integer, y as integer) Static n as integer Dim I as integer For I=3 to 1 step –1 N=n+x X=x+1 Next I Y=y+n End sub 4.执行下面的程序后,A(1,3)值是(8),A(2,2)值是(9),A(3,1)值是(10)。 Option explicit Private sub form_click() Dim A(3,3) As integer, I as integer Dim j as integer, k as integer, n as integer For k=1 to 5 If k<=3 then

C语言程序设计程序填空题库及答案

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

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

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语言程序填空题完整

三、程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【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

程序填空题(1)

程序填空题1、 #include int find(char *str) { char *fstr="the"; int i=0,j,n=0; while (str[i]!='\0') { for(______1______) //for(j=0; j<=2; j++) if (str[j+i]!=fstr[j]) break; if (______2______) n++; // j==3 i++; } return n; } void main() { char a[80]; gets(a); printf("%d",find(a)); } 2、 #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); } 3、 #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); } 4、 #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); } 5、

C语言程序填空题及答案

C语言程序填空题及答 案 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

程序填空题 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

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

模块化程序设计练习题及答案

第四章模块化程序设计练习题及参考答案 一、填空题 1、以下程序的运行结果是(111),把x定义为静态变量运行结果是(123)。void increment(void) { int x=0; x+=1; printf("%d",x);} main() { increment(); increment(); increment(); } 2、若输入的值是-125,以下程序的运行结果是(-125=-5*5*5) #include "" main() { int n; void f(int n); scanf("%d",&n); printf("%d=",n); if(n<0) printf("-"); n=fabs(n); fun(n); } void fun(int n) { int k,r; for(k=2;k<=sqrt(n);k++) { r=n%k; while(r==0) { printf("%d",k); n=n/k; if(n>1)printf("*"); r=n%k; } } if(n!=1) printf("%d\n",n); } 3、设有以下宏定义: #define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:v=LENGTH*20;(v为int型)后,v的值是(880) 4、设有以下宏定义: #define WIDTH 80 #define LENGTH (WIDTH+40)

则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是(2400) 5、下面程序的运行结果是(5) #define DOUBLE(r) r*r main() { int x=1,y=2,t; t=DOUBLE(x+y); printf("%d\n",t);} 6、下面程序的运行结果是(36) #define MUL(z) (z)*(z) main() { printf("%d\n",MUL(1+2)+3); } 7、下面程序的运行结果是(212) #define POWER(x) ((x)*(x)) main() { int i=1; while(i<=4) printf("%d,",POWER(i++)); } 8、下面程序的运行结果是(9) #define MAX(a,b) (a>ba:b)+1 main() { int i=6,j=8,k; printf("%d\n",MAX(i,j)); } 二、选择题 1、以下正确的说法是(D)建立自定义函数的目的之一是: A)提高程序的执行效率 B)提高程序的可读性 C)减少程序的篇幅 D)减少程序文件所占内存 2、以下正确的说法是(B) A)用户若需调用标准库函数,调用前必须重新定义 B)用户可以重新定义标准库函数,若如此,该函数将失原有含义。 C)系统根本不允许用户重新定义标准库函数。 D)用户若需调用标准函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调用。 3、以下正确的函数定义形式是(C) A)double fun(int x,int y) B)double fun(int x;int y) C)double fun(int x,int y); D)double fun(int x,y) 4、以下正确的说法是(D)。在C语言中: A)实参与其对应的形参各占用独立的存储单元。 B)实参和与其对应的形参共占用一个存储单元。 C)只用当实参和与其对应的形参同名时才共占用存储单元。

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循环时则相反。

-程序填空部分试题及答案

第1.题*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:下面的程序是求1!+3!+5!+……+n!的和。 -------------------------------------------------------*/ #include main() { long int f,s; int i,j,n; /***********SPACE***********/ 【?】; scanf("%d",&n); /***********SPACE***********/ for(i=1;i<=n; 【?】) { f=1; /***********SPACE***********/ for(j=1; 【?】;j++) /***********SPACE***********/ 【?】; s=s+f; } printf("n=%d,s=%ld\n",n,s); } 第2题./*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能:以下程序是用选择法对10个整数按升序排序。 -------------------------------------------------------*/ #include /***********SPACE***********/ 【?】 main()

循环程序设计习题及答案

模块三循环程序设计习题及答案 一、填空题 1、当在数据处理中要重复执行相同的操作时,宜采用程序结构来实现。 2、循环的3要素是、、。 3、在循环语句体中包含另一个循环语句的用法称为。 4、执行循环语句体中的break语句后将使用包含它的循环语句。 5、要结束当前正在执行循环体语句而直接进入下一循环周期,需要执行语句。 6、在for语句中表达式允许省略,但不能少,语句for( ; ;) ;构成的是循环。 7、在for语句中,省略表达式2时,则循环为循环。 8、执行语句for(i=1;i++<4; );后变量i的值是。 9、要使用循环程序提前结束本次循环周期并开始下一个循环周期,应在循环体内有条件使用语句。 10、在每次循环周期均要执行一次的语句,称为。 11、for语句括号内的3个表达式的作用分别是、和循环控制变量的更新。 二、选择题 1、若k为整形变量,则while循环共循环()。 k=5; while(k>=0) k-1; A、无限循环 B、6次 C、5次 D、4次 2、与while( ! n) ; 中表达式!dn等价的是()。 A、dn>=0 B 、dn!=0 C、dn == 0 D、dn != 1 3、以下程序段,while循环执行的次数是() int k=0;

while( k == 1) k++; A、无限次 B、有语法错,不能执行 C、一次也不执行 D、执行1次 4、在C语言中,当do while语句中的条件为()时,结束该循环。 A、0 B、1 C、TRUE D、非0 5、下面程序段的输出结果是() do { b-=a; a++; }while(b--<0); A、10,-1 B、2,8 C、9,0 D、4,-3 6、以下描述正确的是() A、由于do while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。 B、do while循环由do开始,用while结束,在while(表达式)后面不能写分号 C、在do while循环体中,一定要有能使while后面匠值变为零的操作 D、do while循环中,根据情况可以省略while 7、若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)。 s=c; for(b=1;b<=c;b++) s=s+1; 则与上述程序段功能等价的赋值语句是() A、s=a+b; B、s=a+c; C、s=s+c; D、s=b+c; 8、假定a,b,c,d均已定义为整型变量,且a、c均已赋值,a大于0,c大于0,则与程序段for(d=a,b=1;b<=c;b++) d--;功能等价的语句是() A、d=a+b; B、d=a+c; C、d=a-b; D、d=a-c 9、下列关于for循环的说法正确的是() A、for循环只能用于循环次数已经确定的情况

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

相关文档
相关文档 最新文档