09-10C语言试卷A
2010级C语言期末考试试卷(A卷)
桂林电子科技大学信息科技学院试卷2010-2011 学年第 2 学期课号I04BT014课程名称C语言程序设计(A卷;、闭卷)适用班级(或年级、专业)10级、全院一单项选择题(每题2分,共40分)1 以下叙述正确的是。
A C程序基本组成单位是语句B 简单C语句必须以分号作为结束符C C程序每一行只能写一个语句D 注释语句可以嵌套2 设a和b均为int型变量,则执行以下语句后的输出为。
int a=20; int b=3; printf("%d\n",a+=(b%=2));A 0B 20C 21D 223 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为。
A -2B -32768C 65535D 655344 以下程序运行后的输出结果是。
main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d\n",d*y);}A 0B 3C 3.07D 3.25 以下程序运行后的输出结果是。
main(){ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;else c++;printf("%d\n",c);}A 0B 1C 2D 36 以下程序的执行结果是。
main(){ int n=9;while(n>6) { n--; printf("%d",n); }}A 987B 9876C 8765D 876void main(){ int x=15,y=21,z=0;switch (x/8){ case 2: z=z+1;break;case 1: z=z+1;switch (y/21){ default : z=z+1;case 0: z=z+1;break;}}printf("%d\n",z);}A 4B 3C 2D 18 以下程序的输出结果是。
2009级C语言程序设计期末考试试题A卷V3答案
2009级C语言程序设计期末考试试题答案一、选择题(15分,每题1分)1—5、C A A A A 6-10、 B C A D D11-15 B A D D C二、判断题(正确的打√,错误的打×,每题1分,共10分)1、√2、×3、×4、√5、√6、×7、×8、√9、×10、√三、阅读程序,写出程序的执行结果(10个小题,每题2。
5分,共25分)1、hello2、2, 2,23、p=104、4,35、a1=1 x1=3 x2=3 x3=46、t=10,row=2,column=17、007.58、12 15 189、1,210、10,2020,10四、程序填空,(每空2分,共30分)【1】〈.stdio.h>【2】x>0【3】x<amin【4】<0【5】i【6】float item,sum【7】&n【8】item=item/i【9】return (1)【10】n*fac(n—1)【11】math。
h【12】m〈200;m++【13】j〈=root【14】break【15】k%10==0五、编程题(2个小题,共20分)1、#include <stdio。
h〉#include <math。
h>int main(){int i;for(i=100;i〈1000;i++)if(flower(i)==1)printf(“%d is a flower—number”, i);return 0;}int flower( int n){int a,b,c,s;a=n/100;b=(n-100*a)/10;c=n%10;s=pow(a,3.0)+pow(b,3。
0)+pow(c,3。
0);if(s==n)rerutn(1);else return (0);}2、选择排序main(){int i;int a[10];for(i=0;i<10;i++)scanf(“%d" &a[i]);selectsort(a,10);for(i=0;i<10;i++)printf(“%d" a[i]);}void selectsort(int s[ ],int n){int i,j,k,t;for(i=0;i〈n—1;i++){ k=i;for(j=i+1;j〈n;j++)if(s[j]〈s[k]) k=j;if(k!=i){t=s[k]; s[k]=s[i];s[i]=t;}}}冒泡排序#include <stdio。
C语言程序设计模拟试题A(附答案)
《C语言程序设计》模拟试卷A一、单项选择题(每题2分,共20分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C) 2ong D) LINE13、以下能正确定义一维数组的是(C)。
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};4、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *5、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句 printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)。
解析:strcpy(str1,str2); 后,str1[] 里是"XYZ", Z 后面有字符串结束符strcpy(str1,str2); 执行后,函数返回的是str1,因为str1[] 里是新值"XYZ", 而strlen(strcpy(str1,str2)) 就是strlen(str1的新值),所以得3。
strlen 统计到字符串结束符以前,即,不计入字符串结束符。
A) 9 B) 8 C) 5 D) 36、若用数组名作为函数调用的实参,则传递给形参的是(A)。
A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为(C)。
2009级C语言程序设计试卷_A(带答案,自动化2009级)
天津工业大学200 9 ~201 0 学年第 1 学期高级语言程序设计(C语言)试卷(A)学院班级学号姓名注意事项:1、本试卷共11 页,满分为100 分,考试时间为110 分钟。
2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。
一、单项选择题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.以下标识符中,不能够作为变量名使用的是【1】。
A) float B) _123C) Sum D) X_Y12.一个C语言程序的执行是【2】。
A) 从第一个函数开始,到最后一个函数结束B) 从main()函数开始,到最后一个函数结束C) 从main()函数开始,到main()函数结束D) 从第一语句开始,到最后一个语句结束3.表达式sizeof(float)的值是【3】。
A) 1 B) 2 C) 4 D) 84.在C语言中,数值常量0x9f对应十进制值是【4】。
A) 160 B) 87C) 9f D) 1595.在C语言中,运算对象必须是整型数据的运算符是【5】。
A) / B) % C) && D) <=6.数学表达式x≥y≥z,改写为C语言表达式后,正确的写法是【6】。
A) x>=y>=z B) (x>=y) && (y>=z)C) (x>=y) & (y>=z) D) (x>=y) AND (y>=z)7.已知int x=6; 执行语句x+=x-=x*x; 后,变量x的值是【7】。
A) -60 B) -24 C) 36 D) 608.若int x=4,y=2;则表达式x<y?x++:y++的值是【8】。
A) 2 B) 3 C) 4 D) 59.若有定义语句char ch='\072'; 则变量ch 【9】。
2009年C语言期末考试题(A卷)及答案
main( ) { int i; i=f(4+4)/f(2+2); printf(“%d\n”,i); } 执行后输出结果是_____________。 14.下列程序段的输出结果是_____________。 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); } 15.以下程序运行后,输出结果是_____________。 main() { static char a[]="ABCDEFGH",b[]="abCDefGh"; char *p1,*p2; int k; p1=a; p2=b; for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k)) printf("%c",*(p1+k)); printf("\n"); }
】;j++)
printf(“*”);
在下划线处应填入的是_____________。
2. 有以下程序 main( ) { int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3; printf(“%d\n”,x); } 执行后输出结果是_____________。 3. 设 y 是 int 型变量,请写出判断 y 为奇数的关系表达式_____________。 4. 若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量 b 中的值是_____________。 c=(a-=(b-5)); c=(a%11)+(b=3); 5. 表示“整数 x 的绝对值大于 5”时值为“真”的 C 语言表达式是_____________。 6. 下列程序段的输出结果是_____________。 main() { char b[]="Hello,you"; b[5]=’\0’; printf("%s \n", b ); }
09年桂林电子科技大学C语言试卷A__有答案
桂林电子科技大学试卷2009-2010 学年第 2 学期课号0921306等课程名称C语言程序设计A (A卷; 闭卷)适用班级(或年级、专业)7院09级考试时间120 分钟班级学号姓名第一部分:基础知识(20题,共20分)1、表达式18/4*2/8值的数据类型为()A)int B)float C)double D)不确定2、在C语言中,int, char和short int三种类型变量所占用的内存大小是()。
A)均为2个字节 B)由用户自己定义 C)由所用机器的字长决定 D)是任意的3、C语言中函数返回值的类型是()A)return语句中的表达式类型 B)调用函数的类型C)总是int型 D)定义函数时所指定的函数类型4、凡是在函数中未指定存储类别的变量,其隐含的存储类别是()A)自动B)静态C)外部D)寄存器5、以下不正确的描述是()A)break语句只能用于循环语句和switch语句B)在switch语句中,break语句的作用也可用continue语句来替代C)在循环语句中,使用continue语句是为了结束本次循环,而不是终止循环的执行D)在循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环6、以下说法正确的是()A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scan f(“%f",&f);7、己知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=55;double x=1.42,y=5.2;则以下符合c语言语法的表达式是()A)a+=a-=(b=4)*(a=3) B)a=a*3=2C)x%(-3) D)y=float(i)8、已知ch是字符型变量,下面不正确的赋值语句是()A)ch=‟a+b‟; B) ch=‟\0‟; C)ch=‟7‟+‟9‟; D)ch=5+99、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c),为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是______。
09-10-C语言(填空)
一、表达式求值1.表达式:!(4<=6)&&(3<=7) 的值为_______ 02.表达式:x=!(2<5==5) 的值为【1】13.如果有变量定义:int i=1,j=8,a;则表达式:a=i+(j%4!=0) 的值为_【1】 14.表达式:x=(7+6)%4/2 的值为【1】05.如果有变量定义:int x,则表达式:x=-3*4%-6/50 的值为【1】 06.如果有变量定义:int x ,则表达式:x=3+7%5-6 的值为【1】-17.如果有变量定义:int x,则表达式:x=-3+4/5-6 的值为【1】 -98.如果有变量定义:int x=3,y=4,z=4则表达式:z>=y&&y>=x 的值为_____ 19.如果有变量定义:int x=3,y=4,z=4则表达式:(z>=y>=x)?1:0 的值为____ 010.如果有变量定义:int x=0,y=0,z=0则表达式:k=++x&&++y||++z 的值为_____ 111. 如果有变量定义:int x=0,y=0,z=0则表达式:k=++x||++y&&++z 的值为______ 112. 如果有变量定义:int x=40,y=4,z=4则表达式:x=x==(y-z) 的值为____ 013.如果有变量定义:int a=15,则表达式:a=a<<1 的值为【1】3014.如果有变量定义:int y;char x='a';则表达式:y='a'+1 的值为【1】9815.如果有变量定义float x=5.0,y=4.0则表达式:x<y?1.0:1.5的值为【1】1.516.如果有变量定义:int a=1,b=2,c=3,d=5则表达式:a>b ? a : c>d ? c : d 的值为【1】5 17.如果有变量定义:int a=1,b=3,m 则表达式:m=a>b? a : b+1 的值为【1】 418.如果有变量定义:int a=1,b=2则表达式:(!a)||(a>b) 的值为_______ 019. 如果有变量定义:int a=1,b=2,c=1,x=4,y=5则表达式:!a&&b||x>y&&c 的值为______ 020如果有变量定义:int a=12,n=5则表达式:a%=(n%=2) 的值为_______ 021如果有变量定义:int a=2, b=3;float x=3.5, y=2.5则表达式:(float)(a+b)/2+(int)x%(int)y 的值为【1】 3.522如果有变量定义:int x=3.6, y=2.5则表达式:z=(int)x%(int)y 的值为【1】123如果有变量定义:int x=3.5,a=7,y=4.7则表达式:k=a%3*(x+y)/2 的值为【1】 324如果有变量定义:int a=5则表达式:a*=1+3 的值为【1】2025如果有变量定义:int a,b则表达式:b=(a=3*4,a*4),a+5 的值为【1】1726如果有变量定义:int a,b 则表达式:x=a=3,5*a 的值为【1】 1527如果有变量定义:int a=120 则表达式:a%=(5%2) 的值为【1】 028如果有变量定义:int a=10则表达式:a+=a-=a*=a 的值为【1】 029 如果有变量定义:int a=10则表达式:a+=a-=a*a 的值为【1】 -18030 如果有变量定义:int i=3则表达式:j=i++ 的值为【1】 331如果有变量定义:int i=3则表达式:j=++i 的值为【1】 432表达式5&7的值为【1】 ,5│7的值为【2】 .5 7二、填空1."字符常量'a'在内存中应占【1】字节,字符串""a""应占【2】字节." 1 22."在16位PC机环境下,int类型数据应占【1】字节,double类型数据应占【2】字节." 2 83"在16位PC机环境下,int类型数据的取值范围是–32768到【1】 ,unsigned int类型数据的取值范围是0到【2】 ." 32767 655354"若采用十进制数的表示方法,则076是【1】 ,0110是【2】 ." 62 72 3 "若有说明chars1='\x77';,则s1中包含【1】字符" 1 中5"设x为float型变量,y为float型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的结果为【1】类型." double6 "定义如下变量:int x=2.5,y=4.7; int a=7;表达式 x+a%3*(int)(x+y)%2/4的值为【1】 ." 27 "设a,c,x,y,z均为int型变量,请在下面对应的位置上写出各表达式的结果.① a=(c=5,c+6,c/2) 【1】② x=(y=(z=6)+2)/5 【2】" 2 18"下列程序的输出结果为【1】.main(){ char a='a', b='b', c='c';a=a-32; b+='c'-'a'; c=c-32+1;printf("a=%c#b=%c#c=%c",a,b,c);}a=A#b=d#c=D10"下列程序的输出结果为__________.main(){ int unsigned x1; int b=-1;x1=b; printf("%u",x1);}" 6553511"下列程序的输出结果为【1】.main(){ char c1='b', c2='o', c3='x';c1+=2; c2+=1; c3+=2;printf("%c%c%c",c1,c2,c3);} dpz11 "下列程序的输出结果为【1】.main(){ int a=5;printf("%d,", (3+5,6+9));a=(3*5,a+4); printf("a=%d\n",a);}15,a=912 下列程序的输出结果为【1】.main(){ int x, y, z;x=24; y=025; z=0x24;printf("%d,%d,%d", x, y, z);} 24,21,3613"若有说明int x=10,y=20;,请在下面对应的位置上写出各printf语句的输出结果.① printf("%2x\n",x+y); 【1】② printf("%2o\n",x*y); 【2】" 1e 31014 "下列程序的运行结果为【1】.main(){ char c1='a',c2='b',c3='c';printf("a%cb%cc%c"",c1,c2,c3);} aabbcc15 "设有变量定义:int j; float y;,输入字符流行:12345a72当执行C语句scanf("%2d%f",&j,&y);和printf("%d,%.1f",j,y);后,输出是【1】." 12,345.016 "以下程序的输出结果是【1】.void main(){ unsigned int a=65535;int b;printf("%d\n",b=a);} -117"若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量c的值是【1】_.c=(a-=(b-5));c=(a%11)+(b=2);818 "以下程序执行后的输出结果是【1】.main(){ int a=5,b,c;a*=3+2;printf("%d",a);a*=b=c=5;printf("%d",a);} 2512519 "完善程序:判断输入的一个整数是否能被3或7整除,若能输出YES,若不能输出NO. main(){ int k;printf(""Enter a int number:""); scanf(""%d"",&k);if(【1】) printf(""YES\n"");else printf(""NO\n"");} k%3==0 || k%7==019"下面的程序,若输入字母d输出结果是【1】.#include ""stdio.h""main(){ char c1,c2;c1=getchar();while(c1<97 || c1>122) c1=getchar();c2=c1-32;printf(""%c,%c\n"",c1,c2);} d,D20"若程序运行时,输入以下数据:righ?〈CR〉,则程序的执行结果为【1】.#include ""stdio.h""main(){ char c;while((c=getchar())!='?') putchar(++c);} sjhi21"设i为int型变量,则下面程序段的输出结果是【1】.for(i=1; i<=2; i++) printf("OK");OKOK22"设i,j,k均为int型变量,则执行完以下for语句后,k的值是【1】 .for(i=0,j=10;i<=j;i++,j--) k=i+j+1;1123"下面是求n的阶层的程序.main(){ int i,n; long np;scanf("%d",&n);np=【1】;for(i=2; i<=n; i++)【2】;printf("%d!=%ld\n",n,np);} 1 np=np*i24 下面的程序求1到100的整数累加和.main(){ int i, sum= 【1】 ;i=1;while( 【2】 ) { sum+=i; i++; }printf(""sum=%d\n"", sum );} 0 i<=10025 下面程序的作用是:求出二维数组中最大元素的值和它所在的行和列.main(){ int a[3][4]={{1,2,3,4},{9,8,7,6},{-10,10,-5,2}};int i,j,row,colum,max;max=a[0][0]; row=0; colum=0;for(i=0; i<3 ; i++)for(j=0; j<4; j++)if( 【1】<a[i][j]) { max=a[i][j]; row =i; 【2】=j ; }printf("max=%d,row=%d,colum=%d\n",max,row,colum);}max colum26 "求出二维数组中的最大元素值.main( ){ int a[3][4]={{1,3,5,7},{2,4,6,8},{15,17,12,14}};printf(""max value is %d\n"", 【1】 );}max_value( int m,int n,int array[][4]){ int i,j,max;max=array[0][0];for(i=0;i<m;i++)for(j=0;j<n;j++)if(max<array[i][j]) max=array[i][j];return max;}max_value(3,4,a)27 "下面程序的输出结果是【1】.#define CIR(r) r*rmain(){ int a=1,b=2,t;t=CIR(a+b); printf(""t=%d\n"",t);}t=528 "在C语言的文件系统中,最重要的概念是"文件指针",文件指针的类型只能是_______ 类型. FILE29 "C语言调用【1】函数打开文件,调用【2】函数关闭文件.fopen fclose。
2009级C语言程序设计试卷_A卷(带答案2010.5)
天津工业大学200 9 ~201 0 学年第 2 学期高级语言程序设计(C语言) 试卷(A卷答案)学院班级学号姓名注意事项:1、本试卷共12 页,满分为100 分,考试时间为110 分钟。
2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。
一、单项选择题:(每题 1 分,共40 分)一、单项选择题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.根据C语言的规定,为变量取名时,不能使用的符号是【1】。
A) 数字字符B) 大写字母C) 下划线D) 减号2.一个C语言程序的执行是【2】。
A) 从第一个函数开始,到最后一个函数结束B) 从main()函数开始,到最后一个函数结束C) 从main()函数开始,到main()函数结束D) 从第一个语句开始,到最后一个语句结束3.执行下列程序段后,输出结果是【3】。
int m=013;printf("%d,%o,%x\n",m,m,m);A) 19,23,13 B) 11,13,b C) 13,15,d D) 13,13,134.表达式sizeof(double)的值是【4】。
A) 1 B) 2 C) 4 D) 85.设有变量定义语句char ch; 则能够正确地为变量ch输入数据的是【5】。
A) scanf("%c",&ch); B) getchar(ch);C) scanf("%c",ch); D) putchar(ch);6.设变量a是int型、f是float型、d是double型、c是char型,则表达式c+a-f/d的数据类型是【6】。
A) char型B) int型C) float型D) double型7.有变量定义语句int k=4,m; 执行语句m=k--; 后,变量m、k的值是【7】。
A) m=3,k=3 B) m=4, k=3 C) m=3,k=4 D) m=4,k=48.设int i=2,j=1,k=3,则表达式i&&(i+j)&k|i+j的值是【8】。
2009~2010学年第二学期C语言期末考试卷答案(A卷)
2009~2010学年第二学期C语言期末考试卷答案(A卷)专业班级:学号:姓名:一、选择题(用铅笔把选中的方格涂黑20×1=20分)1 2 3 45 6 7 89 10 11 1213 14 15 1617 18 19 20二、填空题(每空占一行,每行写一个答案 15×2=30分)1. 42. a<b? a:b3. pow(x+y,1.0/3)4. a-b==b-c5. a*b!=0 或 a*b6. 11,67. 27\n8. 69. 100 10. 4911. windows 9x12. 9x13. string.h14. a[k].b 或 (a+k)->b15. a、b为同类型的结构体变量三、阅读程序题(每空2分,共20分)1. 2 1 12. 3 2 13. 5 3 24. 305. 2 66. 197. 08. 79. 4 10. ga四、完善程序题(每空2分,共12分)1. ″%d%d ″,&m,&n2. gbs%n!=03. m*n/gbs4. p1->next!=NULL5. n==p1->num6. p2->next=p1->next五、编程题(第1小题9分,共18分)1.编程,输入a 1、a 2、...、a 15后,计算下列表达式的值并输出。
1111111231415++++⋅⋅⋅++a a a a a.#include <stdio.h> void main(){ float a [15],y; int i;for(i=0;i<15;i++) scanf(″%f ″,a+i);y=a [14];for(i=13;i>=0;i --) y=1+a [i ]/(1+y); printf(″%f \n ″,y); }2.把文本文件x1.dat 复制到文本文件x2.dat 中,要求仅复制x1.dat 中的非空格字符。
2009年上学期《C语言程序设计》期末试卷(A)参考答案
2009年上学期《C语⾔程序设计》期末试卷(A)参考答案华东师范⼤学期末试卷(A)2008 —2009学年第⼆学期课程名称:C语⾔程序设计学⽣姓名:学号:______________专业:年级/班级 2007级课程性质:专业必修(请将所有答案写在答题纸上)⼀、填空题(每空1分,共10分)1. 设x和y均为int型变量,且x=2,y=3,则表达式1.0+x/y的值为 1.0。
2. 有如下输⼊语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输⼊数据的正确形式应是a=1,b=3,c=2 。
3. 变量y满⾜以下两条件中的任意⼀个:①能被4整除,但不能被100整除;②能被400整除。
请⽤逻辑表达式表⽰所给条件:___(y%4==0&&y%100!=0)||(y%400==0)_ __4. 在内存中存储“A”要占⽤ 2 个字节,存储…A?要占⽤ 1 个字节。
5. C语⾔编译系统在判断⼀个量是否为“真”时,以0代表“假”,以⾮0代表“真”。
6. 结构化程序设计⽅法规定程序或程序段的结构有三种:顺序结构、选择结构和循环结构。
7. 设有“int x=1;”,则“x>0 ? 2*x+1 : 0”表达式的值是___3_______。
8. C语⾔的表达式与语句的区别在于C语⾔的语句是以分号结束的,⽽表达式是没有分号的。
⼆、选择题(每⼩题1分,共20分)1. 以下关于C程序执⾏叙述正确的是( A)A)程序的执⾏总是从main函数开始,在main函数结束B)程序的执⾏总是从程序的第⼀个函数开始,在main函数结束C)程序的执⾏总是从main函数开始,在程序的最后⼀个函数中结束A)计算机不能直接执⾏⽤C语⾔编写的源程序B)C程序经C编译程序编译后,⽣成后缀为.obj的⽂件是⼀个⼆进制⽂件C)后缀为.obj的⽂件,经连接程序⽣成后缀为.exe的⽂件是⼀个⼆进制⽂件D)后缀为.obj和.exe的⼆进制⽂件都可以直接运⾏3. 设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是( A )A)k++ B) k+=1 C) ++k D) k+14. 若⽤数组名作为函数调⽤时的实参,则实际上传递给形参的是(A)。
c语言a类卷子题库及详解答案
c语言a类卷子题库及详解答案C语言A类卷子题库及详解答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是C语言中的合法标识符?A. 3variableB. variable-nameC. variable#nameD. variable_name答案:D3. 以下哪个语句可以用来输入一个整数?A. scanf("%d", &number);B. printf("%d", number);C. cout << number;D. input("%d", &number);答案:A4. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C5. 下列哪个选项是C语言中的数组声明?A. int numbers;B. int numbers[10];C. int numbers(10);D. int [10] numbers;答案:B二、填空题6. 在C语言中,若要定义一个字符变量来存储字符'A',可以使用以下语句:________。
答案:char ch = 'A';7. C语言中,用于实现条件判断的关键字是________。
答案:if8. 在C语言中,循环结构包括________和________。
答案:for, while9. 要声明一个指向整型的指针变量,可以使用以下语句:________。
答案:int *ptr;10. C语言中,用于定义一个结构体的关键字是________。
答案:struct三、简答题11. 简述C语言中数组和指针的区别。
答案:数组是一种数据结构,用于存储一系列相同类型的元素,而指针是一个变量,它存储了另一个变量的内存地址。
数组名是一个指向数组首元素的指针常量,而指针变量可以被重新赋值指向不同的内存地址。
C语言试卷-A
试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)一、选择题(本题总分50分,每小题2分)1、一个C程序的执行是从( )A. 本程序的main 函数开始,到main函数结束B. 本程序文件中的第一个函数开始,到本程序文件的最后一个函数结束C. 本程序的main 函数开始,到本程序文件的最后一个函数结束D. 本程序文件的第一个函数开始,到本程序main函数结束2、以下关于C程序中数组的描述正确的( )A. 数组的大小是固定的,但可以有不同类型的数组元素B. 数组的大小是可变的,但所有元素的类型必须相同C. 数组的大小是固定的,且所有元素的类型必须相同D. 数组的大小是可变的,可以有不同类型的数组元素3、若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为( )A.7B.8C. 9D. 104、在下面关于形参与实参的叙述中,正确的是( )A. 形参是虚设的,所以它始终不占存储单元B. 实参与它所对应的形参同名时占用相同的存储单元C. 实参与它所对应的形参占用相同的存储单元D. 实参与它所对应的形参占用不同的存储单元5、以下关于运算符优先顺序的描述中正确的是( )A.关系运算符<算术运算符<赋值运算符<逻辑与运算符B.逻辑与运算符<关系运算符<算术运算符<赋值运算符C.赋值运算符<逻辑与运算符<关系运算符<算术运算符试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)D.算术运算符<关系运算符<赋值运算符<逻辑与运算符6、下面正确的字符常量是( )A. "c"B. '\\"C. 'w'D. ''7、变量的指针,其含义是指变量的( )A. 值B. 地址C. 名D. 一个标志8、在宏定义#define PI 3.14159中,用宏名PI代替一个( )A. 常量B. 单精度数C. 双精度数D. 字符串9、在下列关于typedef语句的描述中,错误的是 ( )A. 用typedef只是对原有的类型起个新名,没有生成新的数据类型B. typedef可以用于变量的定义C. typedef定义类型名可嵌套定义D. 利用typedef定义类型名可以增加程序的可读性10、下面不正确的字符串常量是( )A. 'abc'B. "12'12"C. "0"D. ""11、若有代数式 3ae/bc , 则不正确的C语言表达式是( )A. a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*312、在位运算中,操作数每右移一位,其结果相当于( )A. 操作数乘以2B. 操作数除以2C. 操作数除以4D. 操作数乘以413、若a=12,则计算表达式a+=a-=a*=a后a的值为( )A.144B.-144C. 0D. 1214、已知字符'A'的ASCII码是65,字符变量c1的值是'A', c2的值是'D',执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )A. A,BB. A,68C. 65,66D. 65,68试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)15、调用一个函数,此函数中没有return语句,下列说法正确的是( )A. 没有返回值B. 返回若干个系统默认值C. 能回复一个用户所希望的函数值D. 返回一个不确定的值16、在C语言中,字符型数据在内存中的存储形式是( )A. 补码B.反码C.原码D. ASCII码17、若有以下定义: int k=7,x=12;,则能使值为3的表达式是( )A. x%=(k%=5)B. x%=(k-k%5)C. x%=k-k%5D. (x%=k)-(k%=5)18、在执行int a[][3]={1,2,3,4,5,6};语句后,a[1][1]的值是( )A. 4B. 1C. 2D. 519、若有说明int a[][3]={1,2,3,4,5,6,7};,则a数组第一维的大小是( )A. 2B. 3C. 4D. 无确定值20、程序char s[]="ABC",*p=s;printf("%c\n",*(p+3));的运行结果是( )A. 67B. 字符'C'C. 字符'C'的地址D. 空零(无显示)21、下面四组选项中,均是C语言关键字的选项是( )A. auutoB. switchC. signedD. ifenum typedef union structinclude continue scanf type22、以下能正确地定义整型变量a,b和c,并为c赋初值5的语句是( )A. int a=b=c=5;B. a=b=c=5;C. a=5,b=5,c=5;D. int a,b,c=5;23、在下列代码段中,不正确的是( )A. int a[5], *p;p=&a;B. int a[5], *p;p=a;C. int a[5];int *p=a;D. int a[5],;int *p1, *p2=a;*p1=*p2;24、如要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是( )试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)A. "ab+"B. "wb+"C. "rb+"D. "ab"25、以下描述中正确的是( )A. break语句只能用在循环体内和switch语句体中B. continue语句的作用是:使程序的执行流程跳出包含它的所有循环C. break语句只能用在switch语句体中D. 在循环体内,使用break语句和continue语句的作用相同二、填空题(本题总分20分,每空4分)1、下面程序的运行结果是【1】( )#include"stdio.h"main( ){ int i,r;char s1[80]="bus";char s2[80]="book";for(i=r=0;s1[i]!='\0'&&s2[i]!= '\0';i++){ if(s1[i]==s2[i]) i++;else {r=s1[i]-s2[i]; break;}printf("%d",r);}2、以下程序的功能是计算:s=1+12+123+1234+12345,请填空:# include "stdio.h"main ( )试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷){ int t=0,s=0,i;for(i=1;i<=5;i++){ t=i+【2】( ) ;s=s+t;}printf("s=%d\n",s);}3、以下程序的运行结果是【3】( )# include "stdio.h"main ( ){ int i=1;while(i<=9)if(++i%3!=2) continue;else printf("%d",i);printf("\n");}4、以下程序运行的结果是【4】( )main( ){ char a=-8;unsigned char b=248;printf("%d,%d",a>>2,b>>2);}5、以下程序的输出结果是【5】( )fun(int a, int b, int c){ c=a*a+b*b;试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)}Main(){ int x=22;fun(4,2,x);printf("%d",x);}三、程序分析题(本题总分10分,每小题5分)1、若运行以下程序时,从键盘输入2473<CR>,<CR>表示回车,则下面程序的运行结果是( )# include"stdio.h"main( ){ int c;while( (c=getchar( ))! ='\n')switch(c-'2'){ case 0:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default: putchar(c+2);break;}printf("\n");}试卷编号拟题教研室(或教师)签名李晓波教研室主任签名………………………………………………………………………………………………………………课程名称(含档次)C语言程序设计课程代号000004专业层次(本、专)考试方式(开、闭卷)2、以下程序执行后输出的结果是( )# include"stdio.h"int a=2;int f(int *a){ return (*a)++;}void main( ){ int s=0;{ int a=5;s+=f(&a);}s+=f(&a);printf("%d\n",s);}四、编程题(本题总分20分,每小题10分)1、采用结构体类型变量编一程序,实现输入学生的学号、英语期中和期末考试成绩,然后输出其平均成绩,期中和期末考试成绩分别占总分的30%和70%。
C语言09-10考试A试卷.doc
同济大学课程考核试卷(A卷)2009-2010学年第一学期命题教师签名:审核教师签名:课号:课名:C++语言考试考查:考查此卷选为:期中考试()、期终考试(V)、重考()试卷年级 __________ 专业__________________ 学号____________ 姓名______________ 得分 __________一、选择填空(30分)1)按照标识符的要求,下列符号中不属于标识符组成部分的是()。
八、大小写字母B、数字C、下划线D、〜! @#$%"&*2)若有定义:char c; int x; float y;double z;则表达式x+c-(int)z/y值的类型为()。
八、char B、int C、float D、double3)有下列定义:chars[10],*p,sl[] = { "xyz" };以下语句中正确的是()。
八、s = “abcdefgh” ; B、p = “abcdefgh” ;C、s = si;D、p=&s; cin » p;4)以下数组定义中正确的是()。
A、int n=5; int a[n];B、int b[3] [] = {l, 2, 3};C、int c[3][4]:{0};D、int d[][] = {2,4,6,8};5)己知int a⑸,b⑶;当逻辑表达式语句!a&&b++;b| |a—| |a+b;执行完毕后,a和b的值分别为()。
A、4,4B、4,3C、5,4D、5,36)设有定义语句:int x(20), y(10), *p, **pp; 当执行完语句:p=&x;pp=&p;p=&y;后,**PP的值为()。
A、20B、10C、变量x的地址值D、变量y的地址值7)对于int (*p)();的描述,()是正确的。
A、定义一个指向某int型函数的指针变量p。
C语言期末试卷及答案A
XX 学院试卷《C语言程序设计试卷》试卷(A卷)一、填空题(每题2分,共10×2=20分)1、除机器语言之外的其他语言要被机器识别,必须经过翻译的过程,翻译有编译和解释两种,C语言所采用的是翻译方式。
2、C语言是函数驱动的,组成C语言程序的基本单位是。
3、C语言的入口函数是函数,且程序亦结束于该函数。
(填写英文)4、在函数体中,一条C语言语句均以结尾。
(填写符号)5、C程序的调试过程包括:→→→四个步骤。
6、基本数据类型包括:整数类型、浮点类型、和枚举类型。
7、浮点型包括单精度型和。
8、变量命名时,在能取得符号中,不能以开头。
9、63%10= 。
10、有数组定义如:int x[10];则数组的第三个元素应表示为。
二、单选题(每小题1分,多选,错选都不得分;共15×1=15分)1、C语言中主函数的个数是( )A、1个B、2个C、6个D、任意多个2、以下不属于C语言基本数据类型的是( )。
A、字符型B、浮点型C、整型D、空类型3、下面关于字符常量和字符串常量的叙述中错误的是( )。
A、字符常量由单引号括起来,字符串常量用双引号括起来B、字符常量只能是单个字符,而字符串常量则可以包含一个或多个字符C、字符常量占用一个字节的内存空间,字符串常量占的内存字节数等于字符串中字节数D、可以把一个字符常量赋值给一个字符变量,但不能把一个字符串常量赋予一个字符变量4、设有变量说明:float x=4.0,y=4.0;。
下面使x为10.0的表达式是( )。
A、x -=y*2.5B、x/=y+9C、x*=y-6D、x+=y+25、下列程序段的输出结果是( )。
char c1,c2;c1=65;c2=65+32+1;printf(“%c,%c”,c1,c2);A、a,BB、A,BC、A,bD、a,b6、以下运算符为单目运算符的是( )。
A、!B、&&C、%D、?:7、以下哪项不属于结构化程序设计方法的特点( )。
C语言程序设计试卷-A卷(正式用卷)
计算机学院2008-2009学年第2学期C语言程序设计考试试卷A卷(或B卷): A卷闭卷(或开卷):闭卷考试时间:2009年 6 月 23日专业班级学号学生姓名一、单项选择题(在下面每小题的A、B、C、D四个选项中,只有一个选项是正确的,请选择正确的选项并填写到括号内,选择正确得分。
本大题共10小题,每小题1分,共10分。
)1、ENUM是【 A 】A、合法标识符B、C语言的关键字C、合法的字符串D、既不是C语言的关键字,也不是合法的字符串或标识符2、下列数据中属于合法字符常量的是【 A 】DA、'\'B、'\xag'C、'45'D、'\''3、下列数据中合法的浮点型常量是【 C 】A、E+10B、2E+1.5C、2E-10D、0x2.5E104、下列数据中与256等值的数为【 A 】BA、0256B、0400C、0x400D、0x2565、以下叙述中正确的是【 B 】A6、局部变量说明为static存储类型,其生存期将得到延长B、全局变量说明为static存储类型,其作用域将被扩大C、任何存储类型的变量在未赋初值时,其值都是不确定的D、形参可以使用的存储类型说明符与局部变量完全相同6、 -127的16位补码的十六进制表示是【 A 】A、0xff81B、0x807fC、0xff80D、0x80807、对于下面的数组声明,正确的是【 D 】BA、int x[][5];B、char t[ ]={…a‟,‟b‟,‟c‟,‟\0‟};C、int n=5,a[n];D、char s[5]=“abcde”;8、若有以下的说明和语句,则在执行for语句后,*(*pt+2)表示的数组元素是【 D 】int t[3][3],(*pt)[3],k;for (k=0;k<3;k++) pt = t+k;A、t[1][2]B、t[2][0]C、t[2][1]D、t[2][2]9、已知枚举类型定义: enum a {ONE=5,TWO=3,THREE}; 则THREE的值的是【B 】CA、1B、2C、4D、010、设有以下说明和语句,则表达式z.y.a2的值的是【 D 】Cstruct packed {unsigned short a1 : 2;unsigned short a2 : 2;unsigned short a3 : 4;unsigned short a4 : 8;};short x;struct packed y; } z;z.x=0xabab;A 、11B 、3C 、2D 、10二、 多项选择题(下面每小题的A 、B 、C 、D 备选项中,有两个或两个以上的选项是正确的,请选择正确的选项并填写到括号内,多选、少选、错选均不得分。
南京信息工程大学2009-2010(1)C语言期末考试试卷A(后附答案)
南京信息工程大学试卷2009 - 2010 学年第 1学期程序设计基础/C语言程序设计课程试卷( A 卷) 本试卷共 9 页;考试时间 120分钟;任课教师;出卷时间 2010 年 1月学院专业2009 年级班学号姓名得分一、单项选择题 (每小题 1分,共 12分)1.一个C程序的执行是从A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束2.下面四个选项中,均是不合法的用户标识符的选项的是A. A p_o doB. float lao _AC. b-a while intD. _123 temp INT3.表达式18/4*sqrt(4.0)/8值的数据类型为A.floatB. charC.doubleD.不确定4.设有如下定义struct ss{ char name[10];int age;char sex;}std[3],*p=std;下面各输入语句中错误的是。
A.scanf("%d",&(*p).age); B.scanf("%s",&);C.scanf("%c",&std[0].sex); D.scanf("%c",&(p->sex));5.有如下定义:int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23},(*p)[4];下面表示正确的是A.p=a[0]; B.p=*a;C.p=&a[0][0]; D.p=a;6.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。
A.(x>=1) && (x<=10) && (x>=200) && (x<=210)B.(x>=1) | | (x<=10) | | (x>=200) | | (x<=210)C.(x>=1) && (x<=10) | | (x>=200) && (x<=210)D.(x>=1) | | (x<=10) && (x>=200) | | (x<=210)7.以下程序段的循环次数是。
C语言杭电09级A卷试题&答案
printf("%d\n", res);
}
问题1:程序运行时,输入7/2=则输出结果?
问题2:程序运行时,输入1+3*10-10%2=则输出结果?
4.写出下列程序的运行结果
# include <stdio.h>
# include <string.h>
int main(void)
{
void sort(char *name[], int n);
(9)
printf(“Long of string : %s\n”,( 10));
}
4.程序功能:从键盘上输入n的值,输出2n-1行用*号组成的菱形,例如输入n=5,输出的图形如下:
#include <stdio.h>
int main()
{ int n, i,j;
printf("Please input the n number!\n");
{
char * temp;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(name[k],name[j])>0) k=j;
if(k!=i)
{
temp=name[i];
name[i]=name[k];
name[k]=temp;
}
float x=3.5, y=2.5,k;
k=(float)(a+b)/2+(int)x%(int)y;
printf(“%.2f\n”,k);
return 0;
C语言考试试卷
5
D)10 (29)下面能正确进行 字符串赋值操作的是 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); (30)执行以下程序后 ,a,b 的值分别为 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) -1,5 B)1,6 C)0,7 D)4,10 (31)设有数组定义: char array[] ="China"; 则数组 array 所占的空 间为 A)4 个字节 B)5 个字节 C)6 个字节 D)7 个字节 (32)若已定义: int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i; 其中 0≤i≤9, 则对 a 数组元素不正确的引 用是 A)a[ p-a ] B)*( &a[i] ) C)p[i] D)a[10] (33)以下不正确的定义语句是 A)double x[5] ={2.0,4.0,6.0,8.0,10.0}; B)int y[5] ={0,1,3,5,7,9}; C)char c1[] ={′1′,′2′,′3′,′4′,′5′}; D)char c2[]={′ \x10′,′\xa′,′\x8′}; (34)若有以下程序 #include int a[]={2,4,6,8}; main()
C语言程序设计期末考试试卷A卷
一、单项选择题〔本大题共20题,每题2 分,共40分〕1、以下不是C语言的特点的是。
A、 C语言简洁、紧凑B、能够编制出功能复杂的程序C、 C语言可以直接对硬件进展操作D、 C语言移植性好2、以下不正确的C语言标识符是A、 ABCB、 abcC、 a_bcD、3、一个C语言程序是由。
A、一个主程序和假设干子程序组成B、函数组成C、假设干过程组成D、假设干子程序组成4、一个算法应该具有“确定性〞等5个特性,对另外4个特性的描述中错误的选项是A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,那么表达式10+‘a’+i*f 值的数据类型为A、 intB、 floatC、 doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是。
A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后〔<CR>表示回车〕,x的值是。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、 12345B、 123C、 45D、 3458、假设有以下定义int a,b; float x,那么正确的赋值语句是。
A、 a=1,b=2B、 b++;C、 a=b=5D、 b=int(x);9、以下程序的执行结果是。
#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、 11,10B、 9,10C、 11,9D、 10,910、巳知字母A的ASCII码是65,以下程序的执行结果是。
#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、 A,YB、 65,65C、 65,90D、 65,8911、以下运算符中优先级最高的是。
2009-2010C程序设计考试试题
2009-2010年C程序设计考试试题一.单项选择题:下面每题的选项中,只有一个是正确的,请将正确答案填在横线上。
(本题共15小题,每小题2分,共30分)1、在C语言中(以16位PC机为例),5种基本数据类型的存储长度的排列顺序为______。
A char<int<long int<=float <doubleB char=int <long int <=float <doubleC char < int<long int = float=doubleD char=int =long int <=float <double2、若有代数式,则正确的C语言表达式是______。
A sqrt (fabs (pow (y,x)+log (y)))B sqrt (abs (pow (y,x)+log (y)))C sqrt (fabs (pow (x,y)+log (y)))D sqrt (abs(pow (x,y)+log (y)))3、以下关于运算符优先顺序的描述正确的是______。
A 关系运算符<算术运算符<赋值运算符<逻辑运算符B逻辑运算符<关系运算符<算术运算符<赋值运算符C 赋值运算符<逻辑运算符<关系运算符<算术运算符D算术运算符<关系运算符<赋值运算符<逻辑运算符4、若w=1 ,x=2, y=3 ,z=4,则条件w < x ? x :y < z ? y :z表达式的值是______。
A 4B 3C 2D 15、C 语言中while 和 do-while 循环的主要区别是______。
A do?-while 的循环体至少无条件执行一次B while的循环控制条件比do-while的循环控制条件严格C do—while 允许从外部转到循环体内D do –while 的循环体不能是复合语句6、下程序段______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题(每题2分,共30分)
1. 一个C程序的执行是从()。
A) 本程序的main函数开始,到main函数结束
B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C) 本程序的main函数开始,到到本程序文件的最后一个函数结束
D) 到本程序文件的第一个函数开始,到本程序的main函数结束
2. 在C语言中,数字0X26是一个()进制数。
A) 二 B) 八 C) 十 D) 十六
3. 设说明为 int a=10; 执行语句 a*=1+2+3; 后a的值是()。
A) 15 B) 24 C) 33 D) 60
4.为表示关系x≥y≥z,应使用C语言表达式()。
A) (x>=y>=z) B) (x>=y)AND(y>=z) C) (x>=y)&&(y>=z) D) (x>=y)&(y>=z)
5. 说明语句:int a[][3]={1,2,3,4,5,6,7,8,9}; 则a数组的行数为()。
A) 不确定 B) 1 C) 2 D) 3
6. 以下程序时,从键盘输入25,13,10<回车>,则输出结果是()。
main()
{
int a1, a2, a3;
scanf("%d,%d,%d", &a1, &a2, &a3);
printf("a1+a2+a3=%d\n", a1+a2+a3);
}
A) 48 B) a1+a2+a3=48 C) a1+a2+a3=10 D) 不确定
7. 执行下面程序,屏幕输出的值是()。
int x;
printf("%d\n", (x=3*5, x+5));
A) 10 B) 15 C) 20 D) 5
8. 判断字符类型变量c是否为大写字母的正确表达式是()。
A) 'A'<=c<='Z' B) (c>='A') & (c<='Z')
C) (c>='A') && (c<='Z') D) ('A'<=c) AND ('Z'>=c)
9. 在以下一组运算符中,优先级最高的运算符是()。
A) <= B) = C) % D) &&
10. 若有定义:int a[2][3]; 则以下对a数组元素的正确引用是()。
A) *(a+1) B) *(a[1]+2) C) &a[0][0] D) a[1]+3
11. 定义如下变量和数组,则语句 for (i=0; i<3; i++) printf("%d ", x[i][2-i]); 的输出结果是()。
int i;
int x[3][3]={1, 2, 3, 4, 5, 6, 7, 8, 9};
A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 9
12. 根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为()。
main() {
char ch1, ch2, ch3;
输入语句
printf("%c%c%c", ch1, ch2, ch3);
}
输入形式:A B C
输出形式:A B
A) scanf("%c%c%c",&ch1,&ch2,&ch3); B) scanf("%c,%c,%c",&ch1,&ch2,&ch3);
C) scanf("%c %c %c ",&ch1,&ch2,&ch3); D) scanf("%c%c",&ch1,&ch2,&ch3);
13. 表达式 3&&6&&9 的值是()。
A) 3 B) 0 C) 9 D) 1
14. 下面程序的循环结束后i的值是()。
main() {
int i;
for(i=0; i<10; i++);
printf("\n%d", i);
}
A) 11 B) 9 C) 10 D) 28
15. 下面程序输出的结果是()。
#include<stdio.h>
main() {
int m, n, o, a=2, b=3;
m=(++a==--b)?-a:++b;
n=++a; o=b;
printf("m=%d,n=%d,o=%d", m, n, o);
}
A) m=4, n=4, o=3 B) m=4, n=3, o=4 C) m=3, n=4, o=4 D) m=3, n=4, o=3
二、填空题(每空1分,共10分)
1. C语句 printf("y=%d",(9^2*8+55) % 3*4); 运行输出的结果是。
2. 执行语句 for(j=1; j++<4; ); 后变量j的值是。
3. 下面程序的执行结果是。
main() {
int x, a=41, b=2, c=40;
x=-a||b&&++c;
printf("%d\n", x);
}
4.C语言中的标识符只能由三种字符组成,它们是_______、_______和________。
5. 设有下面程序段,则While循环执行次数是________。
int k=10;
while(k=0) k=k-1;
6. 用C语言表达式描述y是奇数________________。
7. 判断两个字符串s1和s2长度是否相等,可以使用________函数。
8. 下面程序的输出结果是________。
main() {
int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p;
p=a;
printf("%d\n", *p+9);
}
三、程序分析题(每题5分,共20分)
1. 输入箱子的长、宽、高,判断箱子是立方体还是长方体。
void main()
{
int l,w,h;
printf("请输入箱子的长、宽、高:\n");
scanf("%d%d%d",&l,&w,&h);
if (________________________)
printf("该箱子是立方体。
");
else
printf("该箱子是长方体。
");
}
2. 输出a、b、c、三个变量中的最小值。
#include<stdio.h>
main()
{
Int a,b,c,t1,t2;
scanf("%d%d%d",&a, &b, &c);
t1=a<b? ____________;
t2=c<t1? ____________;
printf(“%d\n”,t2) ;
}
3. 以下程序执行输出结果是a=________,b=________。
main() {
int a, b, k=31, m=61, *p1=&k, *p2=&m;
a=p1==&m;
b=(*p1)/(*p2)+6;
printf("%d,%d\n", a, b);
}
4. 下面程序的执行结果n[i-1]=________,n[i]= ________。
main() {
static int n[4]={1, 2, 8, 77};
int i;
for(i=1; i<4; i++)
{
if(i==3) break;
n[i]=n[i-1]+1;
}
printf("%d,%d\n", n[i-1], n[i]);
}
四、编程题(共40分)
1.键盘输入n 的值,编写程序求n 的阶层。
(10分)
2.用递归方法,求:
0 n=0 fib(n)= 1 n=1 (10分) fib(n-2)+fib(n-1) n>1
3. 从键盘输入x 的值,求y 的值。
(10分)
4. 编写程序,用冒泡法对10个整数进行排序。
(10分)
100010
x y x x -<⎧⎪==⎨⎪>⎩。