C语言程序设计一、单项选择题1.一个C语言程序总是从()位置开始执行。
【】A) 第一个函数B) 程序的第一行C) main( ) D) 第一条执行语句2.字符‘m’的ASCII码为109,有如下定义char a,则执行语句a=‘9’+‘m’-‘8’后,【】变量a中的值为()。
A) a B) n C)m D) 1093.下面的程序运行时输入数据:7,32↙(↙表示回车),输出结果为()。
【】main(){ int i,j;scanf(“%d%d”,&i,&j);printf(“%d”,i+j);}A) 39 B)7 C) 32 D) 不确定值4.设有int a=3,b=2,c=1,d=5,m=4,n=4;执行(m=a<b)||(n= =c>d)后n的值为()。
【】A) 1 B) 2 C) 3 D) 45.为表示关系x≥y≥z,应使用C语言表达式()。
【】A) (x>=y)&(y>=z) B) (x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&&(y>=z)6.指出下面哪项不是合法的变量名()。
【】A)_ANT B)4ant C)_ant_5_8 D)ant907.若运行时给变量m输入11,则以下程序的运行结果是()。
【】main(){ int m,n;scanf(“%d”,&m);n=m>12 ? m-- : ++m;printf(“%d,%d\n”,m,n);}A) 12,12 B) 11,11 C)11,12 D) 12,118.以下程序的运行结果是()。
【】main(){int s=9; char grade;switch(s){case 9 : grade='A';case 8 : grade='B';case 7 : grade='C';break;case 6 : grade='D';}printf("%c\n",grade);}A) A B) B C) C D)D9.设int k=4;有以下程序段,描述中正确的是()。
【】dok=k*2;while(k=0)A)while循环执行5次B)循环体语句(k--)执行一次C)循环体语句(k--)一次也不执行D)循环是无限循环10.以下程序的执行结果是()。
【】main( ){ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf(“%d\n”,sum);}A) 3 B) 6 C) 0 D) 死循环1.在一个C语言程序中,下列不合法的定义是()。
【】A)int flag B) float _flag C) int flag_5 D) float 5_flag2.已知字符‘B’的ASCII码是66,变量ch是字符型,则执行语句【】ch = ‘5’ + ‘A’–‘3’ 后,ch中的值是()。
A) 65 B) 66 C) 67 D) 一个不确定的值3.下面的程序运行时输入数据:12,13↙(↙表示回车),输出结果为()。
【】main(){int n,m;scanf(“%d%d”,&n,&m);printf(“%d”,n+m);}A) 11 B)12 C) 13 D) 不确定值4.下列运算符中,运算优先级按由高到低的依次是()。
【】A) !> && B)> && !C) && !> D)!&& >5.有如下定义:float a; double b; char c; int d;则表达式:c*d+b-a值的数据类型为()。
【】A) int B) char C)float D) double6.若有以下程序段,执行后输出结果是()。
【】main(){ float x=8.4; int y;y=(int)x;printf(”x=%.1f,y=%d",x,y);}A) x=8,y=8.4 B) x=8,y=8 C) x=8.4,y=8 D) x=8.4,y=8.47.设ch是char类型的变量,其值是‘P’,则以下表达式的值是()。
【】ch=(ch>=‘A’&&ch<=‘Z’)?(ch+1):chA) Q B) P C) q D) p8.有如下程序,该程序的输出结果是()。
【】main(){ int a=0,i=3,m=3;switch(a){case 0: i++;case 1: i++;case 2: m++;i++; break;}printf("%d, %d\n",i,m); }A) 4,4 B) 6,6 C) 4,6 D) 6,49.以下程序运行结果是()。
【】main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf(“%d \n”,i);}A) 3 B) 2 C) 1 D) 010.执行语句for(i=1;i<50;i++ ) ;后变量i的值是()。
【】A)49 B)50 C)51 D)5211.以下程序运行后的结果是()。
【】main(){ int x[10]={0},i,k=3;for(i=0;i<k;i++)x[i]=x[i]+1;printf("%d\n",x[k]);}A) 0 B) 1 C) 2 D) 不确定的值12.若有以下说明:【】int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是()。
A)a['d'-c] B)a[4] C)a['d'-'c'] D)a[g-c]13.若有语句:int a=4,*p=&a;下面均代表地址的一组选项是()。
【】A) a,p,&*a B) *&a,&a,*p C) *&p,*p,&a D) &a,p,&*p14.以下程序运行后的输出结果是()。
【】int func(int a,int b){ return(a+b); }void main(){ int x=1,y=2,z=3,sum;sum=func(func(x,y),z);printf("%d\n",sum);}A)1 B) 2 C) 3 D) 615.在C语言中,定义如下结构体类型:【】struct data{ int count;char sex;float score;}var;则结构体类型变量var占用内存的字节数为()。
A)1 B)4 C)9 D)5程序综合分析题16.已知‘P’字符的ASCII码是80,下面程序的运行结果是()。
【】main(){char s='P';s = s +1;printf("%c %c %d ", s,s+1,s);}17.执行下列程序后,变量m的正确结果是多少()。
【】main(){int m=1;switch(m){case 1:m+=1;case 2:m+=1; break;case 3:m+=1; break;default:m+=1;}printf("%d\n",m);}18.写出下列程序的运行结果()。
【】main( ){int i=0;for (;i<6;i++)if (i%3==0){continue;}else{printf(“%d”,i);}}19.写出下列程序的运行结果()。
【】main(){int x=0,i=1,s=0;do{x++;i=i*x;s+=i;} while (x<3);printf("%d\n",s);}20.写出下列程序的运行结果()。
【】main(){int i,j,sum=0;for (i=3;i<=10; i+=3 )for (j=6; j<=8; j+=2 )sum++;printf ("%d\n",sum);}21.写出下列程序的运行结果()。
【】main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},i,s=0;for (i=1;i<=6;i++)if (a[i]%3!=0)s=s+a[i];printf("%d\n",s);}17.写出下列程序的运行结果()。
【】main(){int x=3,y;if (x<0) y=-1;else if (x>0) y=1;else y=0;printf("%d,%d",x,y);}18.写出下列程序的运行结果()。
【】main(){int i;for(i=1;i<5;i++){ if(i%2){ printf("*");continue; }printf("#");}printf("\n");}19.写出下列程序的运行结果()。
【】main(){int x=0,a=0,b=0;switch(x){case 0: b++;case 1: a++;break;case 2: a++;b++;}printf("%d,%d\n",a,b);}20.写出下列程序的运行结果()。
【】main( ){int i=1;for (;i<10;i++)if (i%4==0){break;}else{printf("%d ",i);}}21.写出下列程序的运行结果()。
【】main(){int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};int i=0,j=0,sum=0;for(i=2,j=0;i>=0;j++,i--)sum=sum+a[j][i];printf("%d\n",sum);}22.写出下列程序的运行结果()。
【】int fun(int a, int b){int c;a+=a; b+=b;c=a+b;return (c);}main(){int m=2,n=4;m=fun(m,n);printf("%d\n",m);}23.写出下列程序的运行结果()。
【】main(){int a []={5,6,7,8,9,10},*p;p=a;p++;*(p+2)=2;printf ("%d,%d\n",*p,*(p+2));三、编程序题24.从键盘输入一个正整数,编程判断该正整数是否能被3整除。