发布时间 : 星期二 文章c语言习题1更新完毕开始阅读c9e96422866fb84ae45c8dd7
6 下面程序输入三角形的三条边,求三角形的面积,请填写缺少的C语句。 #include
float a,b,c,s,area;
scanf(\ s=(a+b+c)/2.0;
area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(\}
7 下面程序的功能是打印100以内个位数为8且能被4整除的所有数。请填写缺少的C语句。
#include
for(a=0; ;a++) {
b=a*10+8;
if(b%4!=0) continue; printf(\ } }
8下面程序的功能是输出如下形式的方阵,请填写缺少的C语句(注意大小写)。 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 #include
for(j=4; ;j--) { for(I=1;I<=4;I++) { a=(j-1)*4+ ; printf(\}
printf(\”); } }
填空题
1C程序是由 构成的,其中有且只有一个 函数,该函数名为 。
3C语言中,用关键字 定义基本整型变量,用关键字 定义单精度实型变量,用
关键字 定义字符型变量。
4执行下面的语句段后a、b、c、d的值分别是 。 A=4; b=2;
c=--a*b++; d=a--*++b;
5已知b=23.4,c=12.7,将b*c的值强制转化为int型的表达式为 。
6在printf函数的格式控制字符串中,除格式说明和转义字符外,其它的提示字符在输出时 按原样输出 。
7关系表达式“12 #include { char a,b,c,d; scanf(\printf(\ } 若运行时从键盘上输入:6,5,65,66 { int n=0,m=1,x=2; if(!n) x-=1; if(--m) x-=2; if(x) x-=3; printf(\ } 10执行下面程序后,输出结果是 。 int x=5; while(x>1) {x--;x--; printf(\ 11C语言中数组元素引用时下标的下限为0.若定义float b[6],则数组b下标的上限是 。 12在程序中使用字符串处理函数,必须在程序的开头写上语句 。 13用数组名做函数实参时,传递的是数组的 首地址 ;用变量名做实参时,传递的是变量的 值 。 14若希望函数中的局部变量的值,在函数调用结束后不消失而保留原值,应该指定该局部变量是 静态 存储类型的。 15用 extern 外部变量,扩展外部变量在程序文件中的作用域。 选择题: 1 设有定义“int a=2,b=3,c=4;”,则以下选项中,值为0的表达式是----- A.a&&b B.(a>b)&&!c||1 C.(!a==1)&&(!b==0) D.a||(b+b)&&(c-a) 2以下能正确定义且赋值的语句是____。 A.int x+y=2; B.char c=32; C.float x=x+1.1; D.double x=8.9e1.1 3以下叙述正确的是_B___。 A.调用printf函数时,必须要有输出项 B.调用putchar函数时,必须在之前包含头文件stdio.h C.在C语言中整数可以以十二进制,八进制或十六进制的形式输出 D.调用getchar函数读入字符时,可以在键盘上输入字符所对应的ASCLL码 4若定义a,b为整形变量,下列不合法的输入语句是____。 A.scanf(\ C.scanf(\ 5下列说法错误的是___C_。 A表达式语句由表达式加上分号“;”组成 B控制语句用于控制程序的流程,以实现程序的各种结构形式 C把多个语句用花括号“{}”括起来组成一个复合语句,复合语句内的各条语句都必须以分号“;”结尾,在花括号“}”外也必须加分号 D只有分号“;”组成的语句称为空语句,空语句是什么也不执行的语句 6若有以下语句: int a1,a2; char b1,b2; scanf(\ 如果为a1和a2赋数值10和20,为变量b1和b2赋字符X和Y。以下所示的输入形式正确的是__D__。 A.10_X_20_Y 7若有“int x,a,b,c;”,则以下语句中合法的if语句是____。 A.if(a<>b) x++; B.if(a=b)x++; 8下面的程序运行结果是____。 #include int a=2,b=1,c=3; if(a if(b==1)c=0; else c+=1; printf(\ } A.0 B.1 C.3 D.4 9下面程序的运行结果是____。 #include int a=4;while(--a); printf(\ } A0 B1 C-2 D死循环 10下列关于break语句的描述,正确的是____。 Abreak语句只能用于循环体中 Bbreak语句可以一次跳到多个嵌套循环体外 C再循环体中可以根据需要使用break语句 D在循环体中必须使用break语句 11对for(表达式1;;表达式3)可理解为_A___。 A.for(表达式1;1;表达式3) B.for(表达式1;0;表达式3) C.for(表达式1;表达式1;表达式3) D.for(表达式1;表达式3;表达式3) 12若a为整型变量,则以下循环次数是____。 For(a=1;a==2;)printf(\ A.0 B.1 C.2 D.无数次 13下面不是无限循环的语句是____。 Afor(a=0,b=1;b>++a;b=c++)c=b; Bfor(a=10;;a--); Cwhile(1)a--; Dfor(a=6;a=1;a--)c+=a; 14下面程序段循环情况是____。 Int k=9; while(k>=0)--k; Awhile循环执行9次 BWhile循环执行10次 C循环执行无限次 D循环体语句一次也不执行 15下面程序段的循环情况是____。 Int x=10; do { x=x/x; }while(!x); A循环执行一次 B循环执行两次 C有语法错误 D是死循环 17有以下程序段: int a,t=1,s=0; scanf(\ do { s+=t; t-=2; }while(t!=a); 为了使程序不陷入死循环,从键盘上输入的数据应该是_D___。 A任意正偶数 B任意正奇数 C任意负偶数D任意负奇数 18下面程序运行结果是(D) #include int x=9; for(;x>0;x--); if(x%3==0) printf(\} A-1 B741 C0 D852