《C语言程序设计》练习题
《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案1. 单选题1. 设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是A. p=1;B. *q=2;C. q=p;D. *p=5;正确答案:D2. 设有int x=11;则表达式(x++*1/3)的值是A. 3B. 4C. 11D. 12正确答案:A3. 下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}A. 3B. 4C. 1D. 2正确答案:A4. sizeof(float)是A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式正确答案:B5. 在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是A. a=20000+20000;B. a=4000*10;C. a=30000+10000;D. a=4000L*10L正确答案:D6. 请选出以下语句的输出结果printf("%d\n",strlen("\t\"\065\xff\n"));A. 5B. 14C. 8D. 输出项不合法,无正常输出正确答案:A7. 若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为A. 4B. 16C. 32D. 52正确答案:C8. 下面能正确进行字符串赋值操作的是A. char s[5]={"ABCDE"};B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};C. char *s;s="ABCDE";D. char *s;char a; scanf("%s",&s);正确答案:C9.以下程序的输出结果是#include "stdio.h"void reverse(int a[],int n){int i,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0;reverse(b,8);for(i=6;i<10;i++) s+=b[i];printf("%d\n",s);}A. 22B. 10C. 34D. 30正确答案:A10. 以下不正确的叙述是A. 在C程序中,逗号运算符的优先级最低B. 在C程序中,APH和aph是两个不同的变量C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案:D2. 多选题11. 以下______是正确的转义字符。
C语言程序设计考试题(全题)

福建师范大学C语言程序设计考试题系别 _______ 班级 _______ 姓名_________ 学号________ 得分__________一、选择题(本大题共40个选项,每个选择项1.5分,共60分)1.在C语言中,合法的字符常数是【1】A)‘程序设计’ B)“程序设计”C)c D)‘\\’2.在C语言中,以下不正确的八进制或不正确的十六进制数是【2】A)090 B)0xABC)0xla D)-0163.执行int x=2,y=3;后表达式x=(y==3)的值是【3】A)0 B)1C)2 D)34.执行语句int a,b,c; a=(b=c=3, c++, b+=c);则a的值是【4】A) 3 B) 4C) 7 D) 115.在循环结构的循环体中执行break语句,其作用是【5】A) 结束本次循环,进行下次循环B) 继续执行break语句之后的循环体中各语句C) 跳出该循环体,提前结束循环D) 终止程序运行【6】main(){char s[]=”\’Address\’”;printf(%d\n”, strlen(s));}A) 9 B) 10C) 11 D) 12【7】main(){int a[]={2, 4, 6, 8, 10}, y=1, x;for(x=0; x<3; x++) y+=a[x+1];printf(“%d\n”, y);}A) 17 B) 18C) 19 D) 208.已定义char x[8]; int i;为了给x数组赋值,以下正确的语句是【8】A) x[8]=”Turbo C”; B) x=”Turbo C”;C) x[]=”Turbo C”; D) for(i=0; i<7; i++) x[i]=getchar();9.设int a[][4]={0, 0};则以下错误的描述是【9】A) 数组a的每个元素都可得到初值0B) 二维数组a的第一维大小为1C) 数组a的行数为1D) 只有元素a[0][0]和a[0][1]可得到初值0,其余元素得不到初值0 【10】fun3(int x){static int a=3;a+=x;return a;}main(){int k=2, m=1, n;n=fun3(k);n=fun3(m);printf(“%d\n”, n);}A) 3 B) 4C) 6 D) 911.以下四个运算符,按优先级由高到低的排列顺序是【11】A) ++ % += > B) % ++ > +=C) % += > ++ D) ++ % > +=【12】A) 在函数外部定义的变量是全局变量B) 在函数内部定义的变量是局部变量C) 函数的形参是局部变量D) 局部变量不能与全局变量同名13.“文件包含”预处理语句的使用形式中,当#include后面的文件名用“”括起时,寻找被包含的文件的方式为【13】A) 直接按系统设定的标准方式搜索目录B) 先在源程序所在目录搜索,再按系统设定的标准方式搜索C) 仅仅搜索源程序所在的目录D) 仅仅搜索当前目录14.设有语句int(*p)();则p是一个【14】A) 指向一维整型数组的指针变量B) 指针函数,该函数的返回值为指向整型变量的指针C) 指向函数的指针变量,该函数的返回值为整型D) 数组指针,它的每个元素都是一个可以指向整型变量的指针变量15.若有typedef float AR[5];AR a;则以下叙述正确的是【15】A) a是一个新类型名B) AR是一个实型数组C) AR是一个实型变量D) a是一个实型数组【16】A)整型、实型、逻辑型B)整型、实型、字符型、逻辑型C)整型、字符型、逻辑型D)整型、实型、字符型17.在C语言中,变量所分配的内存空间大小【17】A)均为一个字节 B)由用户自己定义C)由变量的类型决定 D)是任意的18.在C语言中,合法的整型常数是【18】A)-0x123 B)3.14159 C19.下列各变量均为整型,选项中不正确的C语言赋值语句是【19】A)i+=++i; B)i=j==k;C)i=j+=i; D)i=j+1=k;≤y≤z可用C语言的表达式表示为【20】A)(x<=y)&&(y<=z) B)(x<=y)and(y<=z)C)(x<=y<=z) D)(x<=y)&(y<z)21.若定义float a;现要从键盘输入a数据,其整数位为3位,小数位为2位,则选用【21】A)scanf(“%6f”,&a); B)scanf(“%”,a);C)scanf(“%”,&a); D)scanf(“%f”,a);【22】unsigned a=0356,b;b=~a|a<<2+1;printf(“%x\n”,b);A)ffba B)ff71 C)fff8 D)fc0223.要使以下程序的输出结果为4,则a和b应满足的条件是【23】main(){int s,t,a,b;scanf(“%d%d”,&a,&b);s=t=1;if(a>0) s += 1;if(a>b) t= s + t;elseif(a==b) t=5;else t=2*s;printf(“%d\n”,t);}A)a>0并且a<b B)a<0并且a<bC)a>0并且a>b D)a<0并且a<b24.若int i;则以下循环语句的循环执行次数是【24】for (i=2;i==0;) printf(“%d”,i--);A)无限次 B)0次C)1次 D)2次【25】main(){int i;for(i=100;i<200;i++){if(i%5==0) continue;printf(“%d\n”,i);break;}}A)100 B)101C)无限循环 D)无输出结果【26】int i=1,a[]={1,5,10,9,13,7};while(a[i]<=10) a[i++]+=2;for (i=0;i<6;i++) printf(“%d”,a[i]);A)2 7 12 11 13 9 B)1 7 12 11 13 7C)1 7 12 11 13 9 D)1 7 12 9 13 7“abcde”赋初值给字符数组,不正确的语句是【27】A)char s[]=“abcde”; B)char s[]={’a’, ’b’,’c’,’d’,’e’,’\0’};C)char s[]={“abcde”}; D)char s[5]= “abcde”;28.若变量c为char类型,能正确判断出c为小写字母的表达式是【28】A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z')【29】void fun(int *x, int *y){ printf("%d %d", *x, *y); *x=3; *y=4;}main(){ int x=1,y=2;fun(&y,&x);printf("%d %d",x, y);}A) 2 1 4 3 B) 1 2 1 2 C) 1 2 3 4 D) 2 1 1 2【30】main(){ int i, k, a[10], p[3];k=5;for (i=0;i<10;i++) a[i ]=i;for (i=0;i<3;i++) p[i ]=a[i *(i+1)];for (i=0;i<3;i++) k+=p[i] *2;printf("%d\n",k);}A) 20 B) 21 C) 22 D)2331.当执行下面的程序时,如果输入ABC,则输出结果是【31】main(){ char ss[10]="1,2,3,4,5";gets(ss); strcat(ss, "6789"); printf("%s\n",ss);}A) ABC6789 B) ABC67 C【32】A) int a[2][3]={0}; B) int a[][3]={1,2,3,4,5};C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[2][3]={{1},{3,4,5}};33.若int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是【33】A) 2 B) 3 C) 4 D)无确定值34.下面程序段的运行结果是【34】int a[2][3]={1,2,3},i,j;for(i=0;i<2;i++)for(j=0;j<3;j++){a[i][j]=a[i*j%2][j]+a[i][(i+j)%3];printf(“%d,”,a[i][j]);}A) 2,4,6,2,0,8, B) 1,2,3,0,0,0,C) 1,2,3,2,0,6, D) 2,4,6,2,0,6,35.下面程序段的运行结果是【35】int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d\n”,a[2][1]);A) 2 B) 4 C) 7 D)836.定义一个结构体变量时,系统分配给它的内存大小是【36】A)各成员所需内存量的总和B)成员中占内存量最大者所需内存容量C)结构中第一个成员所需内存容量D)结构中最后一个成员所需内存容量37.若typedef char STRING[255];STRING s;,则s是【37】A)字符指针数组变量B)字符数组变量C)字符变量D)字符指针变量38.若已定义:int *p,a;,则语句p=&a;中的运算符“&”的含义是【38】A) 位与运算B) 逻辑与运算C) 取指针内容D)取变量地址39.若有定义char *p,ch;则不能正确赋值的语句组是【39】A)p=&ch;scanf(“%c”,p);B)p=(char *)malloc(1); *p=getchar();C)*p=getchar();p=&ch;D)p=&ch;*p=getchar();40.下面程序段的运行结果是【40】char s[]=“ABC”;int i;for(i=0;i<3;i++) printf(“%s”,&s[i]);A) ABC B) ABCABCABC C) AABABC D)ABCBCC1.下列叙述中正确的是A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言所有函数都是外部函数0.5 C) 2L D) '\72'3.下列选项中,合法的C语言关键字是A) V AR B) cher C) integer D) default4.设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A) 不定值B) 4 C) 3 D) 15.下面程序段的运行结果是【5】float y=0.0,a[]={2.0,4.0,6.0,8.0,10.0},*p;int i;p=&a[1];fo r(i=0;i<3;i++) y+=*(p+i);printf(“%f\n”,y);A) 12.0000 B) 28.0000 C) 20.0000 D) 18.00006.下面程序段的运行结果是【6】char c[]={‘a’,‘b’,‘\0’,‘c’,‘\0’};printf(“%s\n”,c);A) ab c B) ‘a’‘b’C) abc D) ab7.下面程序段的运行结果是【7】char s[10],*sp=“HELLO”;strcpy(s,sp);s[0]=‘h’;s[6]=‘!’;puts(s);A) hELLO B) HELLO C) hHELLO! D) h!8.若有定义int a[3][5],i,j;(且0≤i<3,0≤j<5),则a[i][j]的地址不正确表示是【8】A) &a[i][j] B) a[i]+jC) *(a+i)+j D) *(*(a+i)+j)9.若有定义int *p[4];,则标识符p是一个【9】A) 变量的指针变量B) 指向函数的指针变量C) 指向有四个整数元素的一维数组的指针变量D)指针数组名,有四个元素,每个元素均为一个指向整型变量的指针10.若有定义char *language[]={“FORTRAN”, “BASIC”,“PASCAL”,“JA V A”, “C”};则language[2]的值是【10】A) 一个字符B) 一个地址C) 一个字符串D) 不确定11.C语言规定,函数返回值的类型由【11】所决定。
c语言程序设计试卷

c语言程序设计试卷C语言程序设计试卷一、单项选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function2. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. {"Hello, World!"}D. ("Hello, World!")3. 下列哪个是C语言中的合法变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name4. 在C语言中,哪个运算符用于计算两个整数的乘积?A. *B.C. /D. %5. 下列哪个语句可以正确地交换两个变量的值?A. a = b;B. a = a + b;C. a = a + b - a;D. a = b; b = a;6. 在C语言中,以下哪个是正确的数组声明语句?A. int array[10];B. int [10] array;C. int 10 array[];D. int array[10] = {0};7. 下列哪个是C语言中正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) thenD. if (x > y) { /* code */ }8. 在C语言中,哪个函数用于将整数转换为字符串?A. intToStringB. itoaC. toStringD. convertToInt9. 下列哪个是C语言中正确的循环结构?A. do-whileB. while-doC. do-doD. while-while10. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. typeC. classD. union二、填空题(每空2分,共20分)11. C语言中,一个基本的数据类型是____,用来存储字符。
《C语言程序设计》试题3及答案

三一.单项选择题?1.设int x=1,y=1;表达式(!x++ || y--)的值是_________??? A.0???? B. 1?????? C. 2???? D.-12.main( )? {? int n;???? ( n=6*4,n+6),n*2;???? printf(“n=%d\n”,n);? }?? 此程序的输出结果是______________.?? A.30??? B.? 24???? C.? 60????? D.? 483.若有如下定义,则__________是对数组元素的正确的引用。
?? int? a[10] , *p ;?? p=a ;?? p=a ;?? p=a ;?? p=a ;?? A.? *&a[10]???? B.? a[11]????? C.? *(p+10)????? D. *p4.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是__________ ?? A.? 0???? B.? 4??? C.? - 4???? D.? 2???? 5.以下不能正确定义二维数组的语句是___________??? A . int a[2][2]={{1},{2}};???? B. int a[][2]={1,2,3,4};?? ?C. int a[2][2]={{1},2,3};????? D. int a[2][]={{1,2},{3,4}}; 6.程序段??? ??????的功能是将变量 u 、s中的最大值赋给变量t 。
??????? A.? if(u>s) t=u;t=s;?????? B. ?t=u;?? if(t ) ?t=s;???? ?C.? if(u>s) t=s;else t=u;? ??D . ?t=s; if(u ) ?t=u;7.下列程序段的输出结果是???? ??????。
void main(){?? int k;for (k=1;k<5;k++〉{ ?if(k%2!=0)??printf("#");else ??printf(“*”) ;? } }A. #*#*????? B . *#*#??? C.? ##?????? D. 以上都不对8.设变量定义为 int a[3]={1,4,7},*p=&a[2], 则*p的值是? (35)??? 。
C语言程序设计综合练习题

《C语言程序设计》综合练习题一、单选题1. C语言中基本数据类型有。
CA)整型、实型、逻辑型B)整型、字符型、逻辑型C)整型、实型、字符型D)整型、实型、字符型、逻辑型2. 在C语言中,数字O29是一个。
AA)八进制数 B)十进制数 C)十六进制数 D)非法数3. 在以下关于C语言的不严格的叙述中,错误的说法是。
AA)在标识符中,大写字母和小些字母的意义相同B)有些不同类型的变量可以在一个表达式中运算C)在赋值表达式中等号“=”左边的变量和右边的值可以是不同类型D)同一个运算符号在不同的场合可以有不同的含义4.下列关于C语言用户标识符的叙述中正确的是。
BA)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头【解析】考查C语言中的用户标识符规则,在C语言程序设计中,用户标识符是由字母、数字和下划线组成的,并且第一个字符必须是字母或下划线。
5. 结构化程序设计方法中有三种基本控制结构,以下不正确的是。
DA) 顺序结构B) 选择结构C) 循环结构 D) 数组结构6. C语言提供的合法关键字是。
DA) swicth B) cha C) Case D) default7.以下非法的赋值语句是CA) n=(i=2,++i); B)j++; C) ++(i+1); D)x=j>0;【解析】对表达式不能进行自加自减运算。
8.在以下一组运算符中,优先级最高的运算符是。
A) <= B) = C) % D) &&【解析】C语言常用的积累运算符的优先级关系是:逻辑非“!”>算术运算符>关系运算符>逻辑与“&&”>逻辑或“||”>赋值运算符>逗号运算符。
由于C选项为求余运算符,所以本题正确答案为C选项。
《C语言程序设计》试题七及答案

《C语言程序设计》试题七 (1)一、填空题 (1)二、选择题 (2)三、判断题 (3)四、程序填空题 (4)五、阅读程序,写出下列程序段的结果 (5)六、编程题 (6)《C语言程序设计》试题七答案 (7)《C语言程序设计》试题七一、填空题1.在C语言程序设计中,正确的标识符是由____________________组成的。
2.设x=4,y=(++x)+(++x);那么y的值为_____,表达式执行后,变量x的值为_______。
3.一个变量的指针是指_____________________________________________。
4.能够构成一个数组,其元素满足的特点是__________________________________;那么,构成结构体的成员可以是_________________________________________。
5.下面运算符< % ++ = 按照优先级从高到低排列顺序为______________。
6.C程序设计中语句后的符号/*……*/ 所起作用是_________________________。
7.写出下面表达式的值3*5/7+7%3____________________ x=2 ; y=4; (x++)+y _____________________ 3+4>=7-10_____________________ 3>4 ? 3%2: 1 ___________________x=2,y=2;++x||++y_______________ x=3 ; x+=x-=2 _____________________二、选择题⑴.在使用TurboC2.0环境编辑程序时,运行某程序使用的菜单项为()A.FILE B.RUN C.EDIT D.OPTION⑵.下列语句不具有赋值功能的是()A.a*=b B.x=1 C.a+b D.a++⑶.C语言程序中,当出现条件分支语句if~else时, else与()组成配对关系A.同一复合语句内部的if B.在其之前任意的ifC.在其之前未配对的最近的if D.首行位置相同的if⑷.下列数组定义方式不正确的语句是()A.char x[5]; B.char y[]={‘h’, ‘e’, ‘l’, ‘l’, ‘o’};C. int x[10]={12,13,14,15}; D.int y[];⑸. 若有如下定义和语句,且0<=i<5,下面()是对数值为3数组元素的引用int a[]={1,2,3,4,5},*p,i;p=a;A. *(a+2) B.a[p-3] C.p+2D.a+3⑹. 下列()表达式的值为真a=5; b=8; c=10; d=0A.a*2>8+2 B.a&&d C. (a*2-c)||d D.a-b<c*d⑺. 下列字符数组长度为5的是() A. char a[]={‘h’, ‘a’, ‘b’, ‘c’, ‘d’};B. char b[]= {‘h’, ‘a’, ‘b’, ‘c’, ‘d’, ‘\0’};C. char c[10]= {‘h’, ‘a’, ‘b’, ‘c’, ‘d’};D. char d[6]= {‘h’, ‘a’, ‘b’, ‘c’, ‘\0’ }⑻. 执行下列程序后,其结果为()int a[]={2,4,6,8,10,12}; *p;p=a;*(p+4) =2;printf(“%d,%d\n”,*p,*(p+4));A.0,10 B.0,2 C.2,10 D.2,2⑼.有下列结构体,对该结构体变量stu的成员项引用不正确的是()struct student{ int m;float n;} stu ,*p;A. stu.n B.p->m C.(*p).m D.p.stu.n ⑽.下列函数中不能用于对文件进行输入输出操作的是()A.fscanf( ) B.printf( ) C.fgetc( ) D. fputs( )三、判断题1.C语言程序设计可以对计算机硬件进行操作。
C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。
图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。
如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。
要事先准备好保存文件的目录,例d:\lx 目录。
在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。
设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。
图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。
图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。
在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。
内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。
C语言程序设计试题及答案

《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间120 分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个C语言程序是由()组成的。
A.主程序B.子程序C.函数D.过程2.转换说明符%x的输出形式是()。
A.十进制B.八进制C.十六进制D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “------------“) ;的正确说法是()。
A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出-----------4.若x、y、z均为int 型变量,则执行下列语句后的z值为()。
x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A.1 B.4 C.2 D.35.下面标识符中,合法的用户标识符为()。
A.P#Ad B.12a C.char D._int6.‘A’+ 3 的结果是()。
A.’A’B.’D’的ASCⅡ码C.65 D.37.语句char str[20];说明str是一个字符串,最多能表示()。
A.20个字符B.19个字符C.18个字符D.21个字符8.将int 型变量n转换成float型变量的方法是()。
A.float n B.(float)n C.float(n) D.21个字符9.以下不正确的描述是()。
A.使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B.while循环是先判断表达式后执行循环体语句C.do-while和for循环均是先执行循环体语句,后判断表达式D.for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用break 语句的功能是()。
A.使程序的执行跳出break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环11.下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。
《C语言程序设计》综合练习试卷(一)

《C语言程序设计》综合练习试卷(一)试题一判断题 (每题1分,共10 分)(用T表示正确、F表示不正确) 1.C的任何类型数据在计算机内部都是以二进制形式存储的。
2.按格式符“%d”输出float类型变量时,截断小数位后取整输出。
3.字符数组中字符串可以整体输入输出。
4.传值调用的形参只有在被调用时,才被创建(分配存储单元)。
5.C语言中数组名是指针常量。
6.结构体类型中的各成员项数据类型可以不相同。
7.函数必须有返回值,否则不能使用函数。
8.C程序执行总是从第一个函数开始。
9.可以用关系运算符对字符串进行大小比较。
10.For循环只能用于循环次数已确定的场合。
试题二单选题(每题1分共15分)从A)、B)、C)、D)四个选项中,选出正确的一项。
1.以下程序运行后,输出结果是#include"stdio.h"void main( ){ char s[10]="abcde",*p;p=s+2;printf("%s \n",p);}A) cde B)字符c的ASCII码值 C)字符c的地址 D)出错2.对下面函数f,写出f(f(3))的值。
int f(int x){ static int k=0;x+=k--;return x;}A) 5 B) 3 C) 2 D) 43.以下程序运行后,输出结果是#define PT 5#define S(x) PT*x#include"stdio.h"void main( ){ int a=1,b=2;printf ("%d\n",S(a+b));}A) 15 B) 7 C) 8 D) 无正确答案4. 若有 float a[3][4]; 正确的引用第3行第1列的元素是A) **(a+2) B) *(*a+2) C) a[3][1] D) a[3][0]printf("%.1f,%d\n",10./4,10/8);的输出是A) 2.5, 1.25 B) 2.5, 1 CA) int a[ ]; B)int n=5,a[n];C) int n, a[n]={1,2,3,4,5}; D) int a[10/2];7.若有定义:struct person { char name[9]; int age; } ;person st[10]={{"john",17},{"paul",19},{"Mary",18}};能输出字母M的语句是A) printf("%c",st[2].name);B) printf("%c",st[3].name[1]);C) printf("%c",st[2].name[1]);D) printf("%c",st[2].name[0]);8.不能把字符串:“Hello!”赋给数组b的语句是A) char b[10]={'H','e','l','l','o','!','\0'};B) char b[10];b="Hello!";C) char b[10];strcpy(b,"Hello!");D) char b[10]="Hello!";9.若有 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则表达式值为6的是A)*p+6 B)*(p+6) C)*p+=5 D)p+510. 已知:int *p,m=5, n; 正确的程序段是A) p=&n; scanf(" %d",&p); B) p=&n; scanf(" %d", *p);C) scanf("%d",&n); *p=n; D) p=&n; *p=m;11. 下面程序的运行结果是:#include"stdio.h"void main( ){ int x[4]={ 2,4,6,8},*p, **pp;p=x;pp=&p;printf("%d",*p);printf("%3d",**pp);}A) 4 4 B) 2 4 C) 2 2 D) 4 612.下面程序执行后a的值是#include"stdio.h"void main( ){ int a,k=4,m=6,*p1=&k,*p2=&m;a=p1!=&m;printf("%d\n",a);}A)4 B)1 C)0 D)运行时出错,a无定值13.下列语句序列中,能够将变量u、s中最大值赋给变量t的是A) if (u>s) t=u; t=s; B) t=s; if (u>s) t=u;C) if (u>s) t=s; else t=u; D) t=u; if (u>s) t=s;14. 若有 int a=7,b=12;则语句printf("%d",a&b);输出结果A) 19 B) 9 C) 5 D) 415.若有 FILE *fp; 以“只读”方式打开文本文件a:\aa.dat,下列语句中正确的是A) fp=fopen("a:\aa.dat","w");B) fp=fopen("a:\aa.dat","r");C) fp=fopen("a:\\aa.dat","w");D) fp=fopen("a:\\aa.dat","r");试题三阅读程序题( 每题4分,共24分)写出读下列程序的输出结果1. #include<stdio.h>void main(){ char ch;for(ch='a';ch<'f'; ch++){ putchar(ch-32);putchar(ch);}}2. #include"stdio.h"void main(){ int i;for( i=1;i<=4;i++){ if ((i%3)==0) { printf("$"); continue;} else printf("*");printf("#");}}3. #include "stdio.h"void main(){ int i;for(i=1;i<5;i++)switch(i%5){ case 5: printf(" 5");case 3: printf(" 3");case 1: printf(" 1");default: printf("%2d",i);}}4. #include"stdio.h"void main(){ int x[10];int t,i,j,m=1;for(i=0;i<10;i++){ m=-m;x[i]=m*i;}for(i=1;i<10;i++){ t=x[i];for(j=i-1; j>=0; j--)if(t>x[j]) break;else x[j+1]=x[j];x[j+1]=t;}for(i=0;i<10;i++) printf("%3d",x[i]);}5. #include<stdio.h>void main(){ void swap1(int x ,int y );void swap2(int *x,int *y);void swap3(int &x,int &y);int a1,b1,a2,b2,a3,b3;a1=a2=a3=10;b1=b2=b3=5;swap1(a1,b1);swap2(&a2,&b2);swap3(a3,b3);printf("a1=%d b1=%d\n",a1,b1);printf("a2=%d b2=%d\n",a2,b2);printf("a3=%d b3=%d\n",a3,b3);}void swap1(int x,int y){ int t;t=x;x=y;y=t; }void swap2(int *x,int *y){ int t;t=*x; *x=*y; *y=t; }void swap3(int &x,int &y){ int t;t=x; x=y; y=t; }6.struct node{int num;node *next;};int fun( node *h){ int s,n=0,i;node *p=h ;while(p!=NULL){ for(s=0,i=1;i<p->num;i++)if ((p->num)%i==0) s+=i;if (s==p->num) n++;p=p->next;}return n;}写出执行语句“printf(“%d\n”,fun(head));”的输出结果。
C语言程序设计练习题(含程序及参考答案)

C语言练习题(所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参考使用)1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。
#include <stdio.h>int fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。
#include <stdio.h>void fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。
《c语言程序设计》试题库及答案

《c语言程序设计》试题库及答案一、选择题1. 下列哪个选项是C语言的标准库函数?A. printfB. scanfC. mainD. All of the above答案:D2. C语言中,用于定义字符串的字符数组的语法是什么?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A3. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. functionC. defD. void答案:A二、填空题1. 在C语言中,定义一个整型变量的正确方式是:________。
答案:int variable_name;2. C语言中,用于计算两个数的和的运算符是:______。
答案:+3. 如果要在C语言中声明一个指向整型的指针,应该使用:________。
答案:int *pointer_name;三、简答题1. 请简述C语言中数组和指针的区别。
答案:数组是一组相同类型的元素的集合,可以通过索引访问每个元素。
指针是一个变量,它存储了另一个变量的内存地址。
数组名可以被用作指向数组首元素的指针,但数组本身是一个固定大小的实体,而指针可以被重新赋值为其他地址。
2. 解释C语言中的结构体(struct)是什么?答案:结构体是一种用户定义的数据类型,它允许将不同的数据类型组合成一个单一的数据结构。
它使得可以创建包含多种数据类型的复杂数据结构。
四、编程题1. 编写一个C语言程序,实现计算两个整数的和,并输出结果。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two integers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现将一个字符串反转,并输出结果。
C语言程序设计各章练习题

C语言程序设计各章练习题《C 语言程序设计》各章练习题2016年12月汇编第1-3章 C 语言基础、编程规范、顺序结构程序设计编程题1:设a 和b 均为int 型变量,编写一个程序,通过键盘读入a,b 的值,然后交换a,b 的值。
要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b 的值,交换后a,b 的值。
附加要求:(1)允许定义第3个变量,实现交换;(2)不允许定义第3个变量,实现交换。
第4章选择结构程序设计编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。
⎪⎪⎩⎪⎪⎨⎧>=<+-=0020212x x x x x y编程题2:根据下列函数关系写程序,要求提示输入x 的值,输出y 的值。
⎪⎩⎪⎨⎧>≤≤--<=002222x x x x x y编程题3:求 ax 2+bx+c=0方程的解。
(只输出b 2-4ac>=0的求解结果,小于0,输出“不予求解!”)第5章 循环结构程序设计编程题4:编程计算∑=ni i 1。
要求提示键盘输入n ,如n 为负数,不予计算,直接返回。
编程题5:编程序计算n !,要求n 从键盘输入,如n 小于0,不予计算。
编程题6:从键盘输入一个数n ,判断n 是否是素数。
编程题6:编写程序输出1~100之间的偶数,要求屏幕显示时5个偶数一行,每个数占5位,右对齐。
编程题7:编程计算100到1000之间有多少个数其各位数字之和是5,并将其输出。
编程题8:求满足下列条件的三位数n ,它除以11(整数相除)所得到的商等于n 的各位数字的平方和,且其中至少有二位数字相同的数。
编程题9:有一些十进制整数对ab 和cd 具有如下特性:ab×cd=ba×dc,其中a≠b 且c≠d。
如:12×42=21×24。
请编程找出30~50之间满数,将100~200之间的素数全部输出,要求屏幕上每个数占4位,每行显示5个素数,左对齐。
国家开放大学电大考试《C语言程序设计》题库及答案

《C语言程序设计》期末综合练习题模拟试题一一、单选题1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。
A. mainB. MAINC. nameD. function2.每个C语言程序文件的编译错误分为(B)类。
A. 1B. 2C. 3D. 43.字符串"a+b=12\n"的长度为(B)。
A. 6B. 7C. 8D. 94.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(D)语句。
A. forB. whileC. doD. if5.在下面的do-while循环语句中,其循环体语句被执行的次数为(C)。
int i=0; do i++; while(i<10);A. 8B. 9C. 10D. 116.将两个字符串连接起来组成一个字符串时,选用的字符串函数为(C)。
A. strlen( )B. strcpy( )C. strcat( )D. strcmp( )7.若用数组名作为函数调用的实参,传递给形参的是(A)。
A. 数组的首地址B. 数组中第一个元素的值C. 数组中全部元素的值D. 数组元素的个数8.假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大(C)个字节。
9.假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p 指向s所指向的字符串,则p应定义为(A)。
A. char *p=sB. char *p=&sC. char *p;p=*sD. char *p; p=&s10.从一个数据文件中读入以换行符结束的一行字符串的函数为(B)。
A. gets( )B. fgets( )C. getc( )D. fgetc( )二、填空题1.执行“printf("%c",'A'+2);”语句后得到的输出结果为(C)。
C语言练习题11

(C) 函数的定义不可以嵌套,但函数的调用可以嵌套
(D) 函数的定义和调用均不可以嵌套
21.阅读以下程序,其运行后输出的结果是( )。
#include <stdio.h>
int func(int a,int b)
{return(a+b);}
main( )
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
void fun(int *x, int *y)
{printf("%d %d", *x, *y); *x=3; *y=4;}
main()
{int x=1,y=2;
5
fun(&y,&x);
printf("%d %d",x, y); }
(A) 2 1 4 3
(B) 1 2 1 2
(C) 1 2 3 4
34.实现两个字符串连接的函数 /* 将str2添加到str1后面,并返回str1。*/ char *strcat(char *str1,char *str2) { int len = strlen(str1); /* 求出str1的长度 */ int ia=0; while (str2[ia]) /* 逐个将str2的字符 存放到str1的相应位 置中*/ /* 为str1 添加字符串结束标志 */ return str1; }
(A) 无限循环
(B) 循环次数不定
(C) 执行4次
(D) 执行3次
16.以下关于C语言的结论中,只有一个是错误的,它是( )。
(A)do…while语句与while语句的区别仅是关键字“while”出现
的 位置不同
《C语言》练习题2011.11(4)

《C语言程序设计》练习题一、单项选择题:1.下列对C语言的特点叙述不正确的是:A、运算符丰富B、数据类型丰富C、语法限制严格D、执行效率高2.C源程序经编译后生成的目标文件扩展名是:A、.CB、.OBJC、.EXED、.BAK3.下列数据类型中属于C构造类型的是:A、长整型B、双精度实型C、枚举类型D、共用体类型4.下列属于C基本数据类型的是:A、枚举类型B、数组类型C、结构体类型D、共用体类型5.C程序中的数据01101表示:A、二进制数B、八进制数C、十进制数D、十六进制数6.C程序中的整型数据不能采用下列哪种表示方式:A、十六进制数B、十进制数C、八进制数D、二进制数7.下列C常量表示错误的是:A、'aabb'B、0xffffC、2012LD、2.0e08.下列C常量表示正确的是:A、0800B、0xbcdC、1.0E-3.5D、'ABCD'9.下列标识符可选作C变量名的是:A、Input_port3B、3rd-dayC、#dataD、π10.下列标识符可选作C变量名的是:A、x/yB、New_ValueC、2ndDayD、φ11.下列是C运算符的是:A、#B、,C、;D、"12.下列不是C运算符的是:A、#B、sizeof( )C、,D、!13.下列C运算符的运算优先级最高的是:A、->B、*C、,D、++14.列C运算符只能作一元运算符使用的是:A、+B、*C、&D、!15.要向屏幕输出一个无符号整型数,应采用下列哪个格式字符:A、%dB、%cC、% uD、%x16.要向屏幕输出一个八进制整型数,应采用下列哪个格式字符:A、%dB、%oC、%xD、%u17.能正确描述数学命题“x的绝对值小于10”的正确C表达式是:A、-10<x,x<10B、|x|<10C、–10<x&&x<10D、–10<x||x<1018.能正确描述数学命题“a、b之和的绝对值大于3”的正确C表达式是:A、a+b<-3,a+b>3B、|a+b|>3C、a+b<-3||a+b>3D、a+b<-3&&a+b>3 19.能正确描述命题“a是大于10而小于100的偶数”的C表达式是:A、10<a<100 && a%2 = =0B、10<a<100 && a/2 = =0C、a>10 && a<100 && a%2 = =0D、a>10 && a<100 && a/2 = =0 20.有数据定义:char string[ ]="Computer",则表达式sizeof(string)的值是:A、8B、9C、10D、1121.设变量a=5,b=2,x=8.99,y=3.2,则表达式:(float)(a+b)/2+(int)x%(int)y,的值是:A、2.0 B、3.5 C、5.0 D、5.522.若a是整型变量,b是单精度实型变量,则下列C表达式不合法的是:A、b+aB、a*bC、b%aD、b&&a23.有数据定义如下:float x=3.924,y=-12.377;若欲向屏幕输出如下格式信息∶□□□□□3.924,□□□-12.377则应使用下列哪条语句合适∶A、printf("%f,%f",x,y);B、printf("%.3,%.3f",x,y);C、printf("%10.3f,%10.3f",x,y);D、printf("%-10.3f,%- 10.3f",x,y);24.下列有关C函数的叙述错误的是∶A、C只允许在主函数中定义其它函数体。
《C语言程序设计》练习题

《C语⾔程序设计》练习题⼀、选择题(在A、B、C、D中选择⼀个正确的)1、以下叙述不正确的是()。
A、⼀个C源程序可由⼀个或多个函数组成B、⼀个C源程序必须包含⼀个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于⼀条语句的后⾯2、C语⾔规定:在⼀个源程序中,main函数的位置()。
A、必须在最开始B、必须在系统调⽤的库函数的后⾯C、可以任意D、必须在最后3、⼀个C程序的执⾏是从()。
A、本程序的main函数开始,到本程序main函数结束B、本程序⽂件的第⼀个函数开始,到本程序⽂件的最后⼀个函数结束C、本程序的main函数开始,到本程序⽂件的最后⼀个函数结束D、本程序⽂件的第⼀个函数开始,到本程序main函数结束4、C语⾔中的标识符只能由字母、数字和下划线三种字符组成,且第⼀个字符()。
A、必须为字母B、必须为下划线C、必须为字母或下划线D、可以是字母、数字和下划线中任⼀种字符5、在计算机内部⽤来传送、存储、加⼯处理的数据或指令都是以()形式表⽰的。
A、⼗进制B、⼋进制C、⼆进制D、⼗六进制6、⼗进制数127转换为⼆进制数是()。
A、1111110B、1111111C、1000000D、100000017、⼗六进制数10H转换为⼋进制是()。
A、10B、2C、20D、168、1KB表⽰()。
A、1024位B、1000位C、1024字节D、1000字节9、以下不正确的标识符是()。
适⽤专业考试⽅式(闭卷) 考试时间为分钟A、scoreB、_abcC、x+yD、Hello10、⼗进制数107转换成⼆进制数是()。
A. 01101011B. 10001101C.0110 1101D. 1110 110111、⼆进制数1011011转换为⼗进制数是()。
A、91B、87C、107D、12312、若x、i、j和k都是int型变量,则计算下⾯的表达式后,x的值为()。
x=(i=4,j=16,k=32)A、4B、16C、32D、5213、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。
fx0355《C语言程序设计》综合练习题适用于专升本:计算机科学与技术 (1)

《C语言程序设计》综合练习题一、单项选择题(共80题,每小题2分)(1)计算机语言不包括(C)。
A. 机器语言B. 汇编语言C. 智能语言D. 高级语言(2)C语言属于(D)。
A. 机器语言B. 汇编语言C. 智能语言D. 高级语言(3)printf语句的作用是(D)。
A. 写入文件B. 读入数据C. 记录数据D. 黑屏终端打印信息(4)下列关于C语言程序说法错误的是(A)。
A. main函数不是必须的B. 函数可以没有返回C. void表示函数没有返回值D. main函数是必须的(5)下列程序段的作用是(B)。
int a,b,sum;a=123;b=456;sum=a+b;A.对a、b初始化B. 实现123+456求和C.赋值D. 实现两数相减(6)printf语句中使用%d的作用是(C)。
A. 实现十进制输入B. 实现浮点数输出C. 实现十进制输出D. 无实际意义(7)下列不属于C关键字的是(C)。
A. whileB. forC. MapD. continue(8)下列变量命名合法的是(D)。
A. 123B. 9_qC. +1D. abc(9)下列关于C语言程序说法错误的是(A)。
A. 可以有多个main函数B. 程序由一个或多个源文件组成C. 程序应包含注释D. 程序可以没有输出(10)下列关于程序设计任务说法错误的是(A)。
A. 首先设计算法B. 其次设计算法C. 然后编写程序D. 最后编写文档(11)下列不属于算法的特征的是(C)。
A. 确定性B. 有穷形C. 二义性D. 可行性(12)下列说法正确的是(A)。
A. 算法+数据结构=程序B. 算法可以无限循环C. 算法只能用C语言实现D. 算法只能用Java语言实现(13)下列不属于算法的是(B)。
A. 成绩换算B. 打印字符串C. 求最小公倍数D. 求最大公约数(14)下列关于求1*2*…*5说法错误的是(D)。
A. 可以设计一个算法求解B. 可以使用wile循环C. 可以使用for循环D. 用循环解决效率不高(15)算法一般不可以用什么表示(C)。
完整版C语言程序设计练习题含程序及参考答案

完整版C语言程序设计练习题含程序及参考答案1. 请编写一个C程序,要求输入一个整数n,并打印从1到n的所有整数。
```c#include <stdio.h>int main(){int n;printf("请输入一个整数n:");scanf("%d", &n);for (int i = 1; i <= n; i++){printf("%d ", i);}return 0;}```参考答案:```请输入一个整数n:51 2 3 4 5```2. 请编写一个C程序,要求输入两个整数m和n,并计算它们的和、差、积和商(m除以n的结果)。
```c#include <stdio.h>int main(){int m, n;printf("请输入两个整数m和n:");scanf("%d %d", &m, &n);int sum = m + n;int difference = m - n;int product = m * n;float quotient = (float)m / n;printf("和:%d\n", sum);printf("差:%d\n", difference);printf("积:%d\n", product);printf("商:%.2f\n", quotient);return 0;}```参考答案:```请输入两个整数m和n:10 3和:13差:7积:30商:3.33```3. 请编写一个C程序,要求输入一个整数n,并判断它是否为素数。
```c#include <stdio.h>#include <stdbool.h>bool isPrime(int n){if (n <= 1){return false;}for (int i = 2; i * i <= n; i++){if (n % i == 0){return false;}}return true;}int main(){int n;printf("请输入一个整数n:"); scanf("%d", &n);if (isPrime(n)){printf("%d是素数。
《C语言程序设计》习题及解答1-4章

参考答案
一、选择题(1)B
(2)C
(3)C
(4)B
(5)B
(6)D
(7)D
(8)C
(9)C
(10)D
(11)B
(12)D
(13)D
(14)C
(15)A
二、填空题【1】2
【5】32767
【2】-2
【6】6.000000
【3】scanf
【7】49
【4】printf
第三章习题
一、单项选择题
1.下面不属于C语言的数据类型是【】。
int x=-32769;
printf("%d",x);
4.执行下列程序的输出结果是【6】。
main( )
{
float a=1,b;
b=++a*++a;
printf("%f\\n",b);
}
5.执行下列程序的输出结果是【7】。
main( )
{
int x=5,y;
y=++x*++x;
printf("y=%d\\n",y);
本题正确答案为B。
二、填空题
1.若以下程序的输出结果是13,请填空。
main( )
{ int x=016;
printf("%d\\n",【1】); }
分析:在C语言中以0开头的数字是八进制数,016相当于十进制数14,执行printf语句时,输出项应为x的值减1。
本题正确答案为【1】--x或x-=1。
A)整型
B)实型
C)逻辑型
D)双精度实型
分析:和其它高级语言相比,C语言中没有逻辑型数据,也没有逻辑型变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C程序设计》练习题一、单项选择题导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。
在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。
对于掌握不准的问题,应该通过上机实验来检验。
(注:选用普通整型数据占用2个字节的c编译器。
如Turbo C 2.0 、Win-TC、Turbo C++ 3.0)【1.1】以下不正确的C语言标识符是____。
A) int B) a_1_2 C) ab1exe D) _x【1.2】以下是正确的C语言标识符是____。
A) #define B) _123 C) %d D) \n【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。
••• A) print B) iam C) Pxq D) str_l••• _3d one_half My->book Cpp••• oodbs tart$it line# pow••• aBc 3pai His.age while【1.4】下面各选项组中,均是C语言关键字的组是。
A) auto,enum,include B) switch,typedef,continueC) signed,union,scanf D) if,struct,type【1.5】下列不属于C语言关键字的是。
A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始B) 程序文件的最后C) 它所调用的函数的前面D) 程序文件的任何位置【1.7】下列关于C语言的叙述错误的是____A) 大写字母和小写字母的意义相同B) 不同类型的变量可以在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D) 同一个运算符号在不同的场合可以有不同的含义【1.8】在C语言中,错误的int类型(长度为2字节)的常数是。
A) 32768 B) 0 C) 037 D) 0xAF【1.9】执行语句printf("%x", -1); (int类型长度为2字节)屏幕显示____。
A) -1 B) 1 C) -ffff D) ffff【1.10】已知long i=32768; 执行语句printf("%d", i); 屏幕显示____。
A) -1 B) -32768 C) 1 D) 32768【1.11】已知long i=65539;执行语句printf("%d", i); 屏幕显示____。
A) 65539 B) -3 C) 3 D) 程序不能执行【1.12】在C语言中,整数-8在内存中的存储形式是。
A) 1111 1111 1111 1000 B) 1000 0000 0000 1000C) 0000 0000 0000 1000 D) 1111 1111 1111 0111【1.13】C语言中字符型(char)数据在内存中的存储形式是____。
A) 原码 B) 补码 C) 反码 D) ASCII 码【1.14】将字符g 赋给字符变量c ,正确的表达式是 。
A) c=\147 B) c="\147" C) c='\147' D) c='0147'【1.15】下列转义字符中错误的一个是____。
A) '\000' B) '\0014' C) '\x111' D) '\2'【1.16】将空格符赋给字符变量c ,正确的赋值语句是____。
A) c='\0' B) c=NULL C) c=0 D) c=32【1.17】已知:char a='\70'; 则变量a 中 。
A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明非法【1.18】字符串"\"EOF\n=-\61\""的长度是____。
A) 8 B) 9 C) 14 D) 非法字符串【1.19】字符串""的长度是____。
A) 0 B) 1 C) 2 D) 非法字符串【1.20】已知:char a; int b; float c; double d;执行语句"c=a+b+c+d; "后,变量c 的数据类型是 。
A) int B) char C) float D) double【1.21】温度华氏和摄氏的关系是:)32(95-=F C 。
已知:float C, F; 由华氏求摄氏的正确的赋值表达式是____。
A) C=5/9(F-32) B) C=5*(F-32)/9C) C=5/9*(F-32) D) 三个表达式都正确【1.22】逗号表达式"(a=3*5, a*4), a+15"的值是____。
A) 15 B) 60 C) 30 D) 不确定【1.23】如果int a=1, b=2, c=3, d=4; 则条件表达式"a<b?a:c<d?c:d"的值是____。
A) 1 B) 2 C) 3 D) 4【1.24】为求出s=10!的值,则变量s 的类型应当为 。
A) int B) unsigned C) long D) 以上三种类型均可【1.25】已知int i=10; 表达式"20-0<=i<=9"的值是____。
A) 0 B) 1 C) 19 D) 20【1.26】已知int x=1, y; 执行下述语句后变量x 的值是____。
y=++x>5&&++x<10; A) 1 B) 2 C) 3 D) 4【1.27】为判断字符变量c 的值不是数字也不是字母时,应采用下述表达式____。
A) c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122B) !(c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122)C) c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122D) !(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)【1.28】已知 int a[3][2]={3, 2, 1};则表达式"a[0][0]/a[0][1]/a[0][2]"的值是____。
A) 0.166667 B) 1 C) 0 D) 错误的表达式【1.29】已知 int x=1, y=1, z=1;表达式"x+++y+++z++"的值是____。
A) 3 B) 4 C) 5 D) 表达式错误【1.30】已知int x=5, y=5, z=5; 执行语句x%=y+z;后,x的值是____。
A) 0 B) 1 C) 5 D) 6【1.31】使用语句scanf("x=%f, y=%f", &x, &y);输入变量x、y的值(□代表空格),正确的输入是____。
A) 1.25, 2.4 B) 1.25□2.4 C) x=1.25, y=2.4 D) x=1.25□y=2.4【1.32】下列循环语句中有语法错误的是____。
A) while(x=y) 5; B) while(0) ;C) do 2; while(x==b); D) do x++ while(x==10);【1.33】已知int x=(1, 2, 3, 4); 变量x的值是____。
A) 1 B) 2 C) 3 D) 4【1.34】表达式sizeof(double)是。
A) 函数调用B) double型表达式C) int型表达式D) 非法表达式【1.35】已知:int x, y; double z;则以下语句中错误的函数调用是。
A) scanf ("%d, %lx, %le", &x, &y, &z);B) scanf ("%2d*%d%lf", &x, &y, &z);C) scanf ("%x%*d%o", &x, &y);D) scanf ("%x%o%6.2f", &x, &y, &z);【1.36】与条件表达式"(n)?(c++):(c--)"中的表达式(n)等价的表达式是____。
A) (n==0) B) (n==1) C) (n!=0) D) (n!=1)【1.37】已知int i=1, j=0; 执行下面语句后j的值是____。
while(i)switch(i){ case 1: i+=1; j++; break;case 2: i+=2; j++; break;case 3: i+=3; j ++; break;default: i--; j++; break;}A) 1 B) 2 C) 3 D) 死循环【1.38】求取满足式12+22+32+ ……+n2≤1000的n,正确的语句是____。
A) for(i=1, s=0; (s=s+i*i)<=1000; n=i++) ;B) for(i=1, s=0; (s=s+i*i)<=1000; n=++i) ;C) for(i=1, s=0; (s=s+i*++i)<=1000; n=i) ;D) for(i=1, s=0; (s=s+i*i++)<=1000; n=i) ;【1.39】下面的for语句。
for(x=0, y=10; (y>0)&&(x<4); x++, y-- ) ;A) 是无限循环B) 循环次数不定C) 循环执行4次D) 循环执行3次【1.40】已知int i=1; 执行语句while (i++<4) ;后,变量i的值为____。
A) 3 B) 4 C) 5 D) 6【1.41】已知int x=12, y=3; 执行下述程序后,变量x的值是____。