C语言期末复习填空题部分(含答案)

合集下载

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的值分别为________和________。

c语言期末考试题库及详解答案

c语言期末考试题库及详解答案

c语言期末考试题库及详解答案C语言期末考试题库及详解答案一、选择题1. 下列哪个选项是C语言中正确的整型常量?A. 0.1234B. 0x12ABC. 0b1010D. 1e10答案:B2. C语言中,以下哪个关键字用于定义变量的存储类别?A. staticB. constC. typedefD. volatile答案:A3. 在C语言中,以下哪个运算符用于求两个数的余数?A. /B. %C.D. ++答案:B4. 下列哪个选项是C语言中正确的字符常量?A. 'A'B. "A"C. AD. 65答案:A5. 在C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. pow()D. sqrt()答案:A二、填空题6. C语言中,用于定义数组的关键字是______。

答案:int7. C语言中,用于输入输出的库函数分别是______和______。

答案:scanf(); printf()8. C语言中,若要定义一个指针变量,需要使用关键字______。

答案:int*9. C语言中,用于定义函数的关键字是______。

答案:void 或其他数据类型10. C语言中,若要实现字符串的复制,可以使用库函数______。

答案:strcpy()三、简答题11. 简述C语言中结构体的定义方式。

答案:在C语言中,结构体是一种用户自定义的数据类型,它允许将多个不同类型的数据项组合成一个单一的类型。

结构体的定义方式如下:struct 结构体名 {数据类型成员名1;数据类型成员名2;...};12. 解释C语言中的递归函数。

答案:递归函数是一种函数自己调用自己的特殊函数。

递归函数通常用于解决可以被分解为相似子问题的问题。

递归函数需要有一个明确的终止条件,以防止无限递归。

四、编程题13. 编写一个C语言程序,实现求一个整数的阶乘。

答案:```c#include <stdio.h>long factorial(int n) {if (n <= 1) return 1;else return n * factorial(n - 1);}int main() {int num;printf("Enter a number: ");scanf("%d", &num);printf("Factorial of %d = %ld", num, factorial(num)); return 0;}```14. 编写一个C语言程序,实现字符串的反转。

C语言程序设计期末复习题及答案(1)

C语言程序设计期末复习题及答案(1)
4. 设int i = 5;则语句while (i > = 1) i - -;执行后i的值为_0______。
5. n为整型,表达式n=1,n+2,n*5 的值是__5_______。
6. 已知:float x=8.53; 整形变量i=(int)x;则i=__8_____。
7. 已知:int x=5;语句y=x++*x++;执行完成后x=___7__,y=_25____。
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
for (j=0;j<n-1-i;j++)
if (a[j]>a[j+1])
{c=a[j];a[j]=a[j+1];a[j+1]=c;}
}
2. 本题20分.总体程序完整性3分,结构体定义正确3分,结构体数组定义以及初始化正确6分,指针定义正确3分,输出判断正确3分,输出姓名地址2分。以下代码为参考代码,答案不唯一。
(B)在指针操作中,运算符“&”是取指针指向的对象的值。
(C)在指针操作中,运算符“*”的操作对象是一个地址。
(D)语句int *ip;定义了指针变量只能存放整型变量的地址。
14.判断字符串str1是否大于字符串str2,应当使用___d________。
(A)if (str1>str2)

c语言期末考试题及详细答案

c语言期末考试题及详细答案

c语言期末考试题及详细答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中合法的变量名?A. 2variableB. intC. _first_variableD. for答案:C2. C语言中,用于定义一个整型数组的关键字是?A. charB. intC. floatD. double答案:B3. 在C语言中,哪个运算符用于比较两个值是否不相等?A. ==B. !=C. =D. <答案:B4. 下列哪个函数用于计算数组中元素的个数?A. strlenB. sizeofC. strcpyD. strcmp答案:B5. C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A6. 下列哪个选项是C语言中合法的常量?A. 0x1AB. 1.23e-5C. 2.3.4D. 0b101答案:A7. 在C语言中,哪个关键字用于定义一个函数?A. intB. voidC. structD. return答案:B8. C语言中,用于定义一个指针的关键字是?A. intB. charC. floatD. *答案:D9. 下列哪个选项是C语言中合法的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello\nWorld"D. "Hello\tWorld"答案:A10. 在C语言中,哪个运算符用于执行算术运算?A. %B. &C. +D. ||答案:C二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:______。

答案:int variable_name;2. 用于将一个字符串复制到另一个字符串的C语言函数是:______。

答案:strcpy3. C语言中,用于声明一个指向整型变量的指针的语法是:______。

期末c语言考试题库及答案

期末c语言考试题库及答案

期末c语言考试题库及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是合法的C语言变量名?A. 2nd_variableB. _variableC. variable-nameD. variable$name答案:C3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =答案:A5. C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. intD. void答案:C6. 在C语言中,以下哪个选项表示“不等于”?A. ==B. !=C. =D. <=答案:B7. 下列哪个选项是C语言中的循环结构?A. ifB. forC. switchD. case答案:B8. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlenB. strcpyC. strcatD. strcmp答案:A9. C语言中,以下哪个关键字用于定义一个指针?A. *B. &C. %D. #答案:A10. 下列哪个选项是C语言中的数组?A. int a[10];B. int *a;C. int a=10;D. int a;答案:A二、填空题(每题2分,共10分)1. 在C语言中,用于定义一个字符常量的数据类型是______。

答案:char2. 在C语言中,用于定义一个整型变量的数据类型是______。

答案:int3. 在C语言中,用于定义一个浮点型变量的数据类型是______。

答案:float4. 在C语言中,用于定义一个双精度浮点型变量的数据类型是______。

答案:double5. 在C语言中,用于定义一个布尔型变量的数据类型是______。

c语言期末考试练习题1(含答案)

c语言期末考试练习题1(含答案)

一、单项选择题(6小题,每小题3分,共18分)1、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是A、externB、registerC、autoD、static2、下面4个选项中,是合法转义字符的选项是( )。

A、'\"B、'\'C、'\018'D、'\\0''\\' '\017' '\f' '\101''\n' '\''' 'xab' 'x1f'3、下面4个选项中,是正确的八进制数或十六进制数的选项是( )。

A、–10B、0abcC、0010D、0a120x8f –017 –0x11 ––011 0xc 0xf1 –0xa4、以下在任何情况下计算平方数时都不会引起二义性的宏定义是( )A、# define POWER(x) □□x * xB、# define POWER(x) □□(x) * (x)C、# define POWER(x) □□(x * x)D、# define POWER(x) □□((x) * (x))5、以下程序段( )x= –1;do{ x=x*x;} while (!x);A、是死循环B、循环执行二次C、循环执行一次D、有语法错误6、下面程序的运行结果是( )# include <stdio.h>int main( ){ int i,j,x=0;for (i=0;i<2;i++){ x++;for(j=0;j<=3;j++){ if (j%2) continue;x++;}x++;}printf ("x= %d \n",x);return 0;}A、x=4B、x=8C、x=6D、x=12二、填空题(7小题,每小题3分,共22分)1、下面程序段的运行结果是( )。

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

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函数分类、调用及返回值T10、在C语言中,函数的返回值是由 ___________语句传递的。

C语言期末复习填空题部分(含答案)

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 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

期末复习填空题部分一、填空题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 。

#include<>void main(){int s=0,i=1;for(;i<10;i++,s+=i);printf("%d\n",s);}11 若int类型变量占两个字节,定义int x[15]={0,2,4};,则数组x在内存中所占的字节数是30 。

12 下列程序的输出结果是852 。

main(){ int i,a[10];for(i=9;i>=0;i--) a[i]=10-i;printf("%d%d%d\n",a[2],a[5],a[8]);}13 下列程序运行的结果是6 。

main(){ char ch[7]="65ab21"; int i,s=0;for(i=0;ch[i]>='0' && ch[i]<='9';i+=2) s=10*s+ch[i]-'0';printf("%d\n",s);}14 运行下面程序,其输出结果是15,35 。

#include <>int x,y;one(){ int a,b;a=25,b=10;x=a-b;y=a+b;}main(){ int a,b;a=9,b=5;x=a+b;y=a-b;one();printf("%d,%d\n",x,y):}15 运行下面程序,其输出结果是321 。

#include <>main(){ void printd()int n=123;printd(n);}void printd(int n){ int i;if(n<0) { n=-n; putchar('-'); }putchar(n%10+'0');if((i=n/10)!=0) printd(i);}16 以下程序的输出结果是abb 。

#include<>void main(){ char ch[]="abc",x[3][3]; 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");}17 运行下面程序,从键盘输入三个字符ab#,其输出是ab##ba 。

#include <>void recursion(){ char c;c=getchar();putchar(c);if(c!='#') recursion();putchar(c);}void main(){ void recursion();recursion();}18 以下程序的输出结果是__55__。

#define M 5#define N M+Mmain(){ int k;k=N*N*5; printf("%d\n",k);}19 以下程序的输出结果是12 15 。

#include <>void swap(int *a, int *b){ int *t;t=a; a=b; b=t;}void main(){ int i=12, j=15, *p=&i, *q=&j;swap(p,q);printf("%d %d\n", *p,*q);}20 以下程序的输出结果是 15 12 。

#include <>void swap(int *a, int *b){ int t ;t=*a; *a=*b; *b=t;}void main(){ int i=12, j=15, *p=&i, *q=&j;swap(p,q);printf("%d %d\n", *p,*q);}二、程序填空题1 下列程序的输出结果是,请填空。

main(){ int a=9,b=2;float x= 6 .6【1】 ,y=,z;z=a/2+b*x/y+1/2;printf("%\n",z);}2 下列程序是求 的值。

#include ""main(){ int i=2; float sum=1;;while( i<=50 【1】 ){ sum=sum+i; i+2 【2】 ; }printf("sum=%f\n", sum 【3】 );}3 以下程序的功能是从键盘输入若干个学生的成绩,统计最高成绩和最低成绩,当输入为50141211++++Λ负数时,结束输入。

请填空使程序完整。

#include<>void main(){float x,max,min;scanf("%f",&x);max=min= x 【1】;do{ if(x>max) max=x;if(x<min) min=x 【2】;scanf("%f",&x);} while( x>=o【3】);printf("%f,%f",max,min);}4 以下程序的功能是:从键盘上输入若干个学生的成绩(用输入负数结束输入),统计出平均成绩,并输出低于平均分的学生成绩。

请填空。

#include ""main(){ int n=0,i; float x[1000],sum=,ave,a;printf("Enter mark:\n"); scanf("%f",&a);while(a>= && n<1000){ sum+=a 【1】; x[n]= a 【2】;n++; scanf("%f",&a);}ave= sum/n 【3】;print("Output:\n");printf("ave=%f\n",ave);for(i=0;i<n;i++) if( x[i]<ave【4】) printf("%f\n",x[i]);}5 以下程序,数组a中存放一个递增数列。

输入一个整数,并将它插入到数组a中,使之仍为一个递增数列。

请填空。

#include<>void main(){int a[【1】11]={1,10,20,30,40,50,60,70,80,90},x,i,p;scanf("%d",&x);for(i=0,p=10;i<10;i++)if(x<a[i]) { p=i; break 【2】; }for(i=9;i>=p;i--) a[i+1]=a[i];【3】a[p]=x ;for(i=0;i<=10;i++) printf("%5d\n",a[i]);printf("\n");}6 以下程序的功能是:将t数组的内容连接到s数组内容的后面,使s数组保存连接后的新字符串。

main(){ static char s[30]="abcdefg",t[]="abcd"; int i=0,j=0;while(s[i]!='\0') 【1】i++ ;while(t[j]!='\0') { s[i+j]=t[j]; j++; }【2】s[i=j]='0' ;printf("%s\n",s);}7 一个整数称为完全平方数,是指它的值是另一个整数的平方。

例如81是个完全平方数,因为它是9的平方。

下列程序是在三位的正整数中寻找符合下列条件的整数:它既是完全平方数,且三位数字中又有两位数字相同:例如144(12*12)、676(26*26)等,程序找出并输出所有满足上述条件的三全数。

程序如下:main(){ int n,k,a,b,c;for(k=1;;k++){ n=k*k【1】if(n<100) continue【2】;if(n>999) 【3】break ;a=n/100;b= n/10%10 【4】;c=n%10;if(flag(a,b,c)) printf("n=%d=%d*%d\n",n,k,k);}}flag intx,inty,intz 【5】{ return(!((x-y)*(x-z)*(y-z))); }8 以下程序的功能是:将任意十进制正整数转换成二进制数,请填空使程序完整。

相关文档
最新文档