当前位置:首页 > 全部练习题
《C语言》课外练习
第1章 C语言概述
1. C源程序由 构成。
2. 一个C程序可以包含任意多个不同名的函数,但有且仅有一个 。 3. C程序的函数包括 和 。 4. C语言规定,必须用 作为主函数名。 5. 在C语言中,每个语句和数据以 结束。 6. 下列说法正确的是 。
A.在执行C程序时不是从main函数开始的。
B.C程序书写格式限制严格,一行内必须写一个语句。 C.C程序书写格式比较自由,一个语句可以分写在多行上。 D.C程序书写格式严格要求一行内必须写一个语句,并要有行号。 7. 下列说法正确的是 。 A.main函数必须放在C程序的开头。 B.main函数必须放在C程序的后面。
C.main函数可以放在C程序的中间部分,即在一些函数之前,在另一些函数之后,但在执行C程序时是从程序开头执行的。
D.main函数可以放在C程序的中间部分,即在一些函数之前,在另一些函数之后,但在执行C程序时是从main函数开始的。
第2章 用C语言编写程序
1.写出下面程序的输出结果 #include
x=-3+4*5-6;printf(“%d ”,x); x=3+4%5-6;printf(“%d ”,x);
x=3*4-5-6;printf(“%d ”,x); x=(7+6)%5/2;printf(“%d ”,x); }
A.11 1 1 1 B.11 -3 2 1 C.12 -3 2 1 D.11 1 2 1
2.在scanf函数的格式控制中,格式说明的类型与输入项的类型类型应该一一对应匹配。如果类型不匹配,系统将
A.能够接收到正确输入 B.并不给出出错信息,但不可能得到正确数据 C.不接收数据输入 D.给出出错信息,不接收数据输入
3.参看下面的程序代码,程序中输入输出语句的正确内容的是 #include
{ int a; float x;
printf(“input a,x: ”);
输入语句
第 1 页 共 20 页
《C语言》课外练习
输出语句 }
输入形式 input a,x: 3 2.1 输出形式 a+x=5.10
A.scanf(“%d%f”,&a,&x) ;printf(“\\na+x=%6.2f”,a+x) ; B. scanf(“%d%f”,&a,&x) ;printf(“\\na+x=%4.2f”,a+x) ; C. scanf(“%d%f”,&a,&x) ;printf(“\\na+x=%4.2f”,a+x) ; D. scanf(“%d%3.1f”,&a,&x) ;printf(“\\na+x=%4.2f”,a+x) ; 4.设有如下定义 int a=10,b=5,c;
则语句printf(“%d\\n”,c=(a+=b,a/b)) ; 输出结果是
A.4 B.2 C.1 D.3 5.如下程序,执行结果是 #include
c=plus*b;
printf(“%d”,c); }
A.12 B.14 C.18 D.0 6.如下程序,输出结果是 #include
{ int a=021,b=23,c=0x22;
printf(“%d,%d,%d\\n”,a,b,c); }
A.17,23,34 B.21,23,24 C.17,23,22 D.21,23,22 7.如下程序
#include
printf(“%d %c”,b,b); }
输出结果是
8.由一对{}括起来的若干语句组成的语句叫 。
第3章 分支结构
1.为表示关系式x>=y>=z,使用C语言表达式
A.(y<=x) && (y>=z) B.(x>=y) & (y>=z) C.(x>=y) & (y>=z) D.(x>=y>=z)
2.已知year为整型变量,不能使表达式(year % 4==0 && year 0!=0) || (year % 400==0)的值是
第 2 页 共 20 页
《C语言》课外练习
真的整型数据是
A.1990 B.1998 C.1992 D.2000 3.执行x=5>1+2&&2||2*4>4-!0后,x的值是 A.3 B.1 C.2 D.0
4.若x=4,y=z=3,则下列表达式的值分别为 (1)((z>=y)&& (y>=x))?1:0 (2)y+=z,x*=y
A.0,24 B.1,8 C.0,8 D.1,12 5.写出下面程序的输出结果 #include
{ int x=1,y=1,z=1;
y=y+z; x=x+y;
printf(“%d”,x 6.写出下列命题的C语言描述 (1)x小于y或小于z , (2)x和y都大于z , (3)x或y中有一个小于z , (4)x是偶数 。 7.如下程序的输出结果是 #include { printf(“%d”,2<5&& 4<8); printf(“%d”,2>3&& 5<7); printf(“%d”, (3<6)); printf(“%d”,!(2<6)|| (4<7)); printf(“%d”,(6<=9)&& (5>8)); } 1.下列程序的运行结果是 #include { int x=2,y=-1,z=2; if (y<0) z=0; else z+=1; printf(“%d\\n”,z); } A.3 B.2 C.1 D.0 2.假定所有变量均已正确说明,且a=b=c=0,x=34,下列程序段运行后x的值是 if (!a) x-=1; else if (b) x+=1; if (c) x-=1; else x+=1; 第 3 页 共 20 页 《C语言》课外练习 A.33 B.35 C.34 D.36 3.如果输入B,下列语句正确的是 #include scanf(“%c”,&c); switch(c) { case ?A?: printf(“>=100”); case ?B?: case ?C?: printf(“>=80”);break; case ?D?: printf(“<80”);break; default: printf(“error); } } A.>=100 B.>=80 C.<80 D.error 4.若有以下变量定义: float x; int a,b; 则正确的switch语句是 B.switch(x) A . switch(x) { { case 1,2:printf(“*\\n”); case 1.0:printf(“*\\n”); case 3:printf(“**\\n”); case 2.0:printf(“**\\n”); } } D.switch(a+b) C.switch(a+b) { { case 1:printf(“*\\n”); case 1:printf(“*\\n”); case 1+2:printf(“**\\n”); case 2*a:printf(“**\\n”); } } 5.当输入9,2,11时,下列的程序运行结果是 #include { int a,b,c,max; printf(“Please input three numbers a,b,c\\n”); scanf(“%d,%d,%d”,&a,&b,&c); max=a; if (max printf(“max=%d”,max); } 6.设有程序段如下: switch(class) { case ?A?:printf(“Great wall!\\n”); 第 4 页 共 20 页
共分享92篇相关文档