文档库 最新最全的文档下载
当前位置:文档库 › C程序二级填空题型练习1

C程序二级填空题型练习1

C程序二级填空题型练习1
C程序二级填空题型练习1

阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案

2008年春习题1【程序说明】

输入1个正整数n(n>=2),输出菲波那契(Fibonacci)序列的前n项,每行输出6个数。菲波那契(Fibonacci)序列:1,1,2,3,5,8,13,…… ,数列的前两个数都是1,从第三个数开始,每个数是前两个数之和。

运行示例:

Enter n: 10

1 1

2

3 5 8

13 21 34 55

【程序】

#include

main( )

{ int count, i, n, x1, x2, x;

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

x1 = x2 = 1; printf ("%6d%6d", x1, x2);

(1) ;

for(i = 1; i <= n-2; i++){ (2) ; printf("%6d", x); count++;

if( (3) ) printf("\n");

x1 = x2;

(4) ; }

}

【供选择的答案】

(1) A、count = 2 B、count = 0 C、count = 1 D、count = -1

(2) A、x = x1 - x2 B、x = x1 + x2 C、x = x1 D、x = 2

(3) A、count / 6 == 0 B、count % 6 != 0 C、count % 6 == 0 D、count / 6 != 0

(4) A、x = x1 + x2 B、x2 = x1 C、x = x2 D、x2 = x

习题2【程序说明】

输入2个正整数m和n(1<=m

运行示例:

Enter m, n: 1 10

count = 4, sum = 17

【程序】

#include

#include

int prime(int m)

{ int i, n;

if(m == 1) return (5) ;

n = sqrt(m);

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

if(m % i == 0) return (6) ;

return (7) ;

}

main()

{ int count = 0, i, m, n, sum = 0;

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

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

if( (8) ){ sum += i; count++; }

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

【供选择的答案】

(5) A、1 B、m C、m == 1 D、0

(6) A、m B、1 C、0 D、n

(7) A、m B、1 C、0 D、i == n

(8) A、prime(i) != 0 B、prime(i) == 0 C、i == prime(i) D、!prime(i)

习题3【程序说明】

输入一个2 * 3的二维数组,找出最大值以及它的行下标和列下标,并输出该矩阵。

运行示例:

Enter a array(2*3): 3 2 10 -9 6 -1

max = a[0][2] = 10

3 2 10

-9 6 -1

【程序】

#include

main( )

{ int col, i, j, row; int a[2][3];

printf("Enter array(2*3):");

for(i = 0; i < 2; i++) for(j = 0; j < 3; j++) scanf("%d", (9) );

(10)

for(i = 0; i < 2; i++) for(j = 0; j < 3; j++) if(a[i][j] > a[row][col]){ (11) }

printf("max = a[%d][%d] = %d\n", row, col, a[row][col]);

for(i = 0; i < 2; i++){ for(j = 0; j < 3; j++) printf("%4d", a[i][j]);

(12)

}

【供选择的答案】

(9) A、&a[i][j] B、&a[j][i] C、a[i][j] D、a[j][i]

(10) A、row = col = 2; B、row = col = 0; C、a[row][col] = 0; D、a[row][col] = -1;

(11) A、row = j; col = i; B、a[row][col] = a[i][j]; C、row = i; col = j;D、a[row][col] = a[j][i];

(12) A、printf("\n")}; B、}printf("\n"); C、; D、printf("\n");} ABCD DCBA ABCD

2008年秋习题1【程序说明】

输入一批学生的成绩,遇负数表示输入结束,要求统计并输出各等级成绩的学生个数。成绩等级分为三级,分别为A(90~100),P(60~89),和F(0~59)。

运行示例:

Enter scores: 88 71 68 70 59 81 91 0 60 77 83 -10

A:1; P:8;F:2;

【程序】

#include

Main()

{ int mark,a,p,f;

A=p=f=0;

Printf(“Enter scores:”);Scanf(“%d”,&mark);

While(------1------){

If(mark>=90) a++;

------2------p++;

------3------f++;

------4------

}

Printf(“a:%d; p:%d; f:%d;\n”, a, p, f);

}

【供选择的答案】

(1) A.mark>=0 B. mark>0 C. mark<=0 D. mark<0

(2) A. else if (mark>=60) B. if (mark>=60) C. else (mark>=60) D. if(mark<90)

(3) A.else(mark<60) B. else C. if(mark>0) D.else if(mark<=60)

(4) A.scanf(“%d”,mark); B. scanf(“%d”,&mark); C. ; D. mark=getchar( );

习题2【程序说明】

求1~999之间所有满足各位数字的立方和等于它本身的数,例如153的各位数字的立方和是13+53+33=153

运行示例:

1 153 370 371 407

【程序】

#include

Main()

{ int digit,j,sum,x;

For(j=1;j<1000;j++){

_____5_____

_____6_____

Do{ _____7_____

Sum=sum + digit*digit*digit;

X=x/10;

}while(_____8_____);

If(sum==j) printf(“%d”,sum); }

}

【供选择的答案】

(5) A.sum=0 ; B. sum=1; C.sum=j ; D. ;

(6) A.x=1; B.x=j; C. ; D. x=sum;

(7) A.digit=x/10; B.; C. digit=x%10; D. digit=x;

(8) A.x==0 B.j!=0 C.j==0 D.x!=0

习题3【程序说明】

输入10个整数,将它们从大到小排序后输出。

运行示例:

Enter 10 integers: 10 98 -9 3 6 9 100 -1 0 2

After sorted: 100 98 10 9 6 3 2 0 -1 -9

【程序】

#include

_____9_____

Void sort(_____10_____)

{ int I,index,k,t;

For(k=0; k

Index =k;

For(i=k+1;i

If(a[i]>a[index]) index=i;

_____11_____; } }

Void swap(int *x,int*y)

{ int t;

T=*x; *x=*y; *y=t; }

Main()

{ int i,a[10];

Printf(“enter 10 integers:”);

For(i=0;i<10;i++) Scanf(“%d”,&a[i]);

_____12_____;

Printf(“After sorted:”);

For(i=0;i<10;i++) Printf(“%d”,a[i]);

Printf(“\n”); }

【供选择的答案】

(9) A. void swap(int *x,int *y) B. ;C. void swap(int *x,int *y) ; D. void swap(int *x, *y)

(10) A.int &a,int n B. int *a,int *n C. int *a,int n D. int a,int *n

(11)A.swap(*a[index],*a[k])B.swap(a[index],a[k])C.swap(index,k) D.swap(&a[index],&a[k])

(12) A.sort(a) B. sort(a[10]) C. sort(a[],10) D.sort(a,10)

A A

B B A B

C

D A A B B

2009年春

习题一『程序说明』 输入一个正整数 n,计算下列算式的前n 项之和。 S=+-+-71

51

31

1....

运行示例:

Enter n:2

Sum=0.67

『程序』

#include

main(){

int denominator,flag,i,n;

double item,sum;

printf("Enter n: ");

scanf("%d",&n);

denominator=1

______(1)_____;

sum=0;

for(i=1;__(2)__;i++){

___(3)___;

sum=sum+item;

_____(4)____;

denominator=denominator+2;

}

printf("Sum = %.2f\n",sum);

}

}

供选择的答案:

1. A.flag=0 B. flag=-1

C. flag=n

D. flag=1

2. A. i>=n B.i

C. i>n

D.i<=n

3. A. item=flag/denominator

B. item=1/denominator

C.item=flag*1.0/denominator

D. item=1.0/denominator

4. A.flag=-1 B.flag=0

C. flag=-flag

D.flag=flag

习题2 验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个素数之和。例如6=3+3,

8=3+5,。。。18=11+7。将6~20之间的偶数表示成两个素数之和,打印是一行打印5组。要求定义和调用函数prime(m)判断m是否为素数,当m为素数是,返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。

运行示例:

6=3+3 8=3+5 10=3+7 12=5+7 14=3+11

16=3+13 18=5+13 20=3+17

程序

#include

#include

int prime(int m){

int i,n;

if(m==1)return 0;

n=sqrt(m);

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

if(m%i==0) return 0;

____(5)____

}

main(){

int count,i,number;

count=0;

for(number=6;number<=20;number=number+2){

for(i=3;i<=number/2;i=i+2)

if(____(6)_____){

printf("%d=%d+%d ",number,i,number-i);

count++;

if(____(7)___) printf("\n");

___(8)___

}

}

}

供选择的答案

(5). A.; B.return 1;

C. return 0;

D.else return 1;

(6). A.prime(i)!=0||prime(number-i)!=0

B.prime(i)!=0&&prime(number-i)!=0

C. prime(i)==0||prime(number-i)==0

D.prime(i)==0&&prime(number-i)==0

(7). A.;count%5==0 B.count%5!=0

C. (count+1)%5==0

D.(count+1)%5!=0

(8). A.break; B.else break;

C. countinue;

D.; BBCA

习题3

输入一行字符,统计并输出其中数字字符,英文字母和其它字符的个数。要求并调用函数count(s,digit,letter,other)分类统计字符串s中数字字符,英文字符和其它字符的个数,函数形参s的类型是字符指针,形参digit,letter,other类型是整型指针,函数类型是void。

运行示例:

Enter characters:f(x,y)=5x2y-6

Digit=3 letter=5 other=6

程序

#include

void count(char * s,int *digit,int *letter,int *other){

____(9)_____

while(____(10)_____){

if(*s>='0' && *s<='9')(*digit)++;

else if((*s>='a' && *s<='z')||(*s>='A'&& *s<='Z'))

(*letter)++;

else

(*other)++

s++;}

}

main(){

int i=0,digit,letter,other;

char ch,str[80];

printf("Engter characters: ");

ch=getchar();

while(____(11)_____){

str[i]=ch;

i++'

ch=getchar();

}

str[i]='\0';

____(12)_____

printf("Digit=%d letter=%d other=%d\n",digit,letter,other); }

(9)A.int digit=0,letter=0,other=0;

B.int *digit=0,*letter=0,*other=0;

C.digit=letter=other=0;

D.*digit=*letter=*other=0;

(10)A.*s++!='\0' B.*s++!='\n'

C.*s!='\0'

D.*s!='\n'

(11)A. ch!='\0' B.ch!='\n'

C.ch=='\0'

D.ch=='\n'

(12)A.count(str,&digit,&letter,&other)

B.count(&str,&digit,&letter,&other)

C.count(*str,digit,letter,other)

D.count(*str,*digit,*letter,*other)

DDCC BBCA DCBA

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语言程序设计程序填空题库及答案

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

C语言程序设计试题1 一、单项选择题 1.C语言规定,在一个源程序中main函数的位置______d___ 。 A.必须在最开始B.必须在最后 C.必须在预处理命令的后面D.可以在其他函数之前或之后 2.以下选项中,_________d__ 是C语言关键字 A.printf B.include C.fun D.default 3.已知有声明"int a=3,b=4,c;",则执行语句"c=1/2*(a+b);"后,c的值为____a_ 。 A.0 B.3 C.3.5 D.4 4.设指针变量占4个字节的内存空间,若有声明"char *p="123";int c;",则执行语句 "c=sizeof(p);"后,c的值为__d__ A.1 B.2 C.3 D.4 5.已知有声明"int a=3,b=4;",下列表达式中合法的是_d___。 A.a+b=7 B.a=|b| C.a=b=0 D.(a++)++ 6.已知有声明"char s[20]="Hello";",在程序运行过程中,若要想使数组s中的内容修改为"Good",则以下语句中能够实现此功能的是___d_。 A.s="Good"; B.s[20l="Good"; C.strcat(s,"Good"); D.strcpy(s,"Good"); 7.已知有声明"int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};",若需要引用值为12的数组元素,则下列选项中错误的是_a___ 。 A.*(a+2)+3 B.*(*(a+2)+3) C.*(a[2]+3) D.a[2][3] 8.已知有声明"int n;float x,y;",则执行语句"y=n=x=3.89;"后,y的值为_b___ 。 A.3 B.3.0 C.3.89 D.4.0 9.已知有声明"int a=12,b=15,c;",则执行表达式"c=(a||(b-=a))"后,变量b和c的值分别为 __b__。 A.3,1 B.15,12 C.15,1 D.3,12 10.下面的函数定义正确的是_____d________ A)float fun (float x ; float y) {return x*y;} B)float fun (float x,y) {return x*y;} C)float fun (x,y) {int x,y;return x*y;} D)int fun (int x, int y) {return x*y;} 11.某程序需要使用一个代表常数3.14的符号常量名P,以下定义中正确的是_d___。 A.#define P 3.14; B.#define P(3.14) C.#define P=3.14; D.#define P 3.14 12.下列四个选项中,属于C语言关键字的是__c__ 。 A.Float B.single C.double D.real 13.已知某编译系统中signed int类型数据的长度是16位,该类型数据的最大值是_D___。 A.32767 B.32768 C.127 D.65535

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

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语言填空题

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

C语言程序设计期末练习填空题.docx

面向对象程序设计期末综合练习二(填空题) 填空题 1.C++ 语言是在 _________语言的基础上发展起来的。 2.C++ 语言的编译单位是扩展名为 __________的 __________文件。 3.行尾使用注释的开始标记符为 __________ 。 4.多行注释的开始标记符和结束标记符分别为__________ 和 __________。 5.用于输出表达式值的标准输出流对象是_________。 6.用于从键盘上为变量输入值的标准输入流对象是________。 7.一个完整程序中必须有一个名为 ________的函数。 8.一个函数的函数体就是一条 _________语句。 9.当执行 cin 语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才能继续输入下一个数据。 10.在 C++程序中包含一个头文件或程序文件的预编译命令为__________。 11.程序中的预处理命令是指以______字符开头的命令。 12.一条表达式语句必须以 ______ 作为结束符。 13.在#include 命令中所包含的头文件,可以是系统定义的头文件,也可以是 ________定义的头文件。 14.使用 #include 命令可以包含一个头文件,也可以包含一个______文件。 15.一个函数定义由 ________和 ________两部分组成。 16.若一个函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的______语句。 17. C++头文件和源程序文件的扩展名分别为______和 ______。 18.程序文件的编译错误分为 ________和 ________两类。 19.当使用 _______保留字作为函数类型时,该函数不返回任何值。 20.当函数参数表用 ______保留字表示时,则表示该参数表为空。 21 .从一条函数原型语句“int fun1(void);”可知,该函数的返回类型为______,该函数带有______ 个参数。 22.当执行 cout 语句输出 endl 数据项时,将使 C++显示输出屏幕上的光标从当前位置移动到 ________的开始位置。 23.假定 x=5,y=6,则表达式 x++*++y 的值为 __________ 。 24.假定 x=5,y=6,则表达式x--*--y的值为__________。 25.假定 x=5,y=6,则执行表达式 y*=x++ 计算后, x 和 y 的值分别为 __________和 __________ 。 26.假定 x=5,y=6,则执行表达式 y+=x-- 计算后, x 和 y 的值分别为 __________和 __________ 。 27.C++ 常数 0x145 对应的十进制值为 __________。 28.C++ 常数 0345 对应的十进制值为 __________ 。 29.十进制常数 245 对应的十六进制的 C++表示为 __________。 30.十进制常数 245 对应的八进制的 C++表示为 __________ 。 31.signed char类型的值域范围是________至__________之间的整数。 32.int和float类型的数据分别占用_________和__________个字节。 33.float和double类型的数据分别占用_________和________个字节。 34.bool和char类型的数据分别占用_________和________个字节。 35.unsigned short int和int类型的长度分别为_________和________。

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套(山东建筑大学)

C语言程序设计试题(第1套) 一.单项选择题(30分,每题2分) 1.用C语言编写的代码程序______。 A、可立即执行 B、是一个源程序 C、经过编译即可执行 D、经过编译解释才能执行 2. C语言中用于结构化程序设计的三种基本结构是______。 A、顺序结构、选择结构、循环结构 B、if、switch、break C、for、while、do-while D、if、for、continue 3. 以下选项中合法的实型常数是______。 A、B、E-3 C、.2E0 D、 4. 假定x和y为double型,则表达式x=2,y=x+3/2的值是______。 A、B、3 C、D、 5. ch是字符型变量,下面不正确的赋值语句是______。 A、ch = 65; B、ch="a"; C、ch ='\ n'; D、ch= 9+ '0'; 6. 下列有关C语言程序书写格式的说法哪个是错误的 A、C程序的书写格式比较自由,一个语句可以占多行,一行也可以有多个语句。 B、C语句必须要有分号。 C、C语言程序的标识符必须使用小写字母。 D、用{ } 括起来的部分,通常表示了程序的某一层次结构,称为块。 7.下面程序段所表示的数学函数关系是______。 x= -1; if (a!=0) if (a>0) x=1; else x=0; -1 (a<0) 1 (a<0) A、x= 0 (a=0) B、x= -1 (a=0) 1 (a>0) 0 (a>0) 0 (a<0) -1 (a<0) C、x= -1 (a=0) D、x= 1 (a=0) 1 (a>0) 0 (a>0) 8. 以下关于do-while循环的不正确描述是______。 A) do-while的循环体至少执行一次 B) do-while的循环体可以是复合语句 C) 在do-while循环体中,一定要有能使while后面表达式的值变为零("假")的操作 D) do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 9. 以下程序执行后sum的值是______。 A) 15 B) 14 C) 不确定 D) 0 main() { int i , sum=0; for(i=1;i<6;i++) sum+=i; printf("%d\n",sum); } 10.若有说明语句:int a[][3]={1,2,3,4,5,6}; 则a数组第一维的大小是。 A. 1 B. 2 C.3 D. 无确定值 11. C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是______。 A、float型 B、long型 C、int型 D、double型 12.下面正确的函数定义形式为 A、double fun(int x;int y) B、double fun(int x,int y); C、double fun(int x,y) D、double fun(int x,int y) 13.以下程序运行后,输出结果是______。 #define ADD(x) x+x

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语言程序设计(填空题)

一、填空共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~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语言程序设计模拟试题1附答案

《C语言程序设计》模拟试卷一 一、单项选择题(每题2分,共30分) 1、下列有关C语言的叙述中错误的是()。 A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数 C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的是()。 A) MAIN B) _HJ C) 2ong D) LINE1 3、下列符号中用来表示C语言中的回车换行的是()。 A) \r B) \n C) \b D) \t 4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。 A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 1 5、已知ch为字符型变量,下面表达式中正确的是()。 A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ” 6、以下能正确定义一维数组的是()。 A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”; C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5}; 7、以下语句中能正确定义变量并赋初值的是()。 A) char c=65; B) float f=f+1.1; C) double x=12.3e3.6; D) int m=n=2.0; 8、在执行下列程序时输入:1357924,则程序的运行结果为()。 main( ) { int x, y; scanf(“%2d%2d”,&x,&y); printf(“%2d”,x*y); } A) 13 B) 1357 C) 74 D) 741 9、执行下列程序段后输出的结果是()。

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

相关文档