第3章 最简单的C程序设计2014
- 格式:doc
- 大小:113.00 KB
- 文档页数:8
一、选择题1. C 语言中,执行下列语句时,要使 x,y 的值均为1.25,正确的输入是 _C scanf(“x=%f,y=%”f,&x,&y);A. 1.25,1.25 C. x=1.25,y=1.252. 已知i,j,k 为int 型变量,若从键盘输入1, 2, 3/,使i 的值为1,j 的值为2, k 的值为 3,则以下选项中正确的输入语句是 A.scanf(“%2d%2d%2d ”,&i,&j,&k) ; C. scanf(“%d,%d,%d ”,&i,&j,&k) ;D. scanf(“i=%d,j=%d,k=%d ”,&i,&j,&k) ;3.以下程序段的执行结果是 int a=1234 ;printf(“%2d\n ”,a); A. 12 C. 12344. 如果x 为float 类型变量,则以下语句输出为 x=213.82631;printf(“%4.2f\n ”,x); A. 213.82 C. 213.826315. 执行下列程序时输入: 123 456 789/,输出结果是 ___D #include<stdio.h> void main(){char s[10]; int c,i;scanf(“%c ”,&c); scanf(“%d ”,&i); scanf(“%s ”,s);printf( “%c,%d,%s\n ”,c,i,s);}A. 123,456,789 C. 1,23,456,789二、填空题1.在 printf() 函数中以小数形式输出单精度、 双精度实数,应采用格式符 __%f___。
2•在seanf()函数中要输入一个字符串,应采用格式符 __%s3. 有以下程序,输入123456789/,其输出结果是 _12,56,789.00000Q_。
第3章最简单的C程序设计—顺序程序设计一、单项选择题1. 不是C语言提供的合法关键字是。
A)switch B)cher C)case D)default2. C语言提供的合法关键字是。
A)next B)string C)do case D)struct3. 下列不属于C语言中关键字的是。
A) long B) print C)default D)typedef4. 下列不正确的标识符是。
A) -a1 B) a[i] C)a2_i D)x5. 下列C语言用户标识符中合法的是。
A)*y B)sum C)int D)%5f6. 下面四个选项中,合法的标识符是。
A)auto B)define C)6a D)c7.下列C语言用户标识符中合法的是。
A)3ax B)x C)case D)-e28. 以下选项中合法的用户标识符是。
A) long B) _2Test C) 3Dmax D) A.dat9.下列四组选项中,正确的C语言标识符是。
A)%x B)a+b C)a123 D)12310. 请选出可用作C语言用户标识符的一组标识符A) void B) a3_b3 C) For D) 2adefine _123-abc DOWORD sum Case sizeof11. 下列四组字符串中都可以用作C语言程序中的标识符的是。
A)print _3d oodb aBc B)I\am one_half start$it 3paiC)str_1 Cpp pow while D)Pxq My->book line# His.age12. 下列C语言标识符中合法的变量名是。
A)2e3 B)you C)*y D)float13. C语言中的简单数据类型包括。
A)整型、实型、逻辑型B)整型、实型、逻辑型、字符型C)整型、字符型、逻辑型D)整型、实型、字符型14. 下列常数中,不能作为C语言常量的是。
A) 2.5e-2 B) 3.0f C) ”com”D) ‟#‟15. 下列常数是正确的C语言字符常量。
A) ”x” B) e3 C) ”COMPUTER” D) ‟#‟16. 在下列常量中,属于字符型常量的是。
A) A B) 'a' C) "A" D) b17. 以下选项中合法的字符常量是A) “B” B) …\n‟C) …68‟D) E18.下面字符常量表示错误的是A) ‟a‟ B) ‟?‟ C) ‟\n‟ D) ”\n”19. 已定义c为字符型变量,则下列语句中正确的是。
A)c='97' B)c="97" C)c=…a‟ D)c="a"20. 已知ch是字符型变量,不正确的赋值语句是。
A) ch='a+b' ; B) ch=' \0 ' ; C) ch=' 7'+' 9' ; D) ch=5+9;21.C语言中字符型(char)数据在内存中的存储形式是。
A) 原码B) 补码C) 反码D) ASCII码22 . C语言中运算对象必须是整型的运算符是。
A) %=B) / C) = D) 〈=23. 在C语言程序中,表达式8/5的结果是。
A)1.6 B) 1 C) 3 D) 024. 设x为int型变量,则执行语句x=10; x+=x; 后,x的值为A) 10 B) 20 C) 40 D) 3025.如果int a=1,b=2,c=3,d=4;则条件表达式"a>b?a:(c<d?c:d)"的值是。
A)1 B)2 C)3D)426. 在C语言程序中,表达式5%2的结果是。
A) 2.5 B) 2 C) 1D) 327.如果int a=3,b=4;则条件表达式"a<b? a:b"的值是____。
A) 3B) 4 C) 0 D) 128.C语言中,关系表达式和逻辑表达式的值是。
A) 0 B) 0或1 C) 1 D) …T‟或‟F‟29.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面表达式中,值为0的表达式是。
A) ‟a‟&&‟b‟ B) a<=b C) a||b+c&&b-c D) !((a<b)&&!c||1)30. 下面表达式的值为4.A) 11/3 B) 11.0/3 C) (float)11/3 D) (int)(11.0/3+0.5)31. 已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是A ) 0 B) 1 C) 5 D) 632. 已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2中的值为A) 68 B) D C) 错误D) d33.下列关于C语言的叙述错误的是。
A) 赋值表达式左边可以是常量B) 不同类型的变量可以在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D) 同一个符号在不同的场合可以有不同的含义34. 有:int w=11,x=12,y=3,m; 执行下面语句后m的结果是。
m=(w<x)?w:x;m=(m<y)?m:y;A) 1 B) 2 C) 3 D) 以上结果都不对35. 设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的是。
A) b=1.0/a B) b=(float)(1/a) C) b=1/(float)a D) b=1/(a*1.0)36. 表达式“1?(0?3:2)(10?1:0)”的值是()。
A) 3 B) 2 C) 1 D) 037. 若“int n; float f=13.8;”,则执行“n=((int)f)%3”后,n的值是。
A) 1 B) 4 C) 4,333333 D) 4.638. 设int x=0, y=1; 表达式(x||y)的值是。
A) 0 B) 1 C) 2 D) -139. 设x为int型变量,则执行语句x=10; x*=x;后,x的值为。
A) 10 B) 20 C) 100 D) 040. 若有语句int a=1,b; double y=2.3; b=(int)y; 则b的值为。A) 3 B) 2C) 1 D) 2.341. 要输入十进制整数,用格式符()A) %c B) %d C) %f D) %lf42. printf中用到格式符%6s,数字6表示输出的字符串占用6列,如果字符串长度小于6,则输出按方式()A) 右对齐输出该字符串,左补空格B) 按原字符串长度从左向右全部输出C) 从左起输出该字符串,右补空格D) 输出错误信息43. 设c1,c2均是字符型,则以下不正确的函数调用是()A) scanf(”c1=%cc2=%c”,&c1,&c2); B) c1=getchar()C) putchar(c2); D) putchar(c1,c2);44. putchar函数可以向终端输出一个()A) 字符串B) 实型变量值C) 整型变量表达式值D) 字符或字符型变量值45. 已有定义:float m1,m2;数据的输入方式:3.465.2输入语句的正确形式为()A) scanf(”%f,%f”,&m1,&m2); B) scanf(”%f%f”,&m1,&m2);C) scanf(”%3.2f,%2.1f”,&m1,&m2); D) scanf(”%4.2f,%3.1f”,&m1,&m2);46. 格式说明由()和格式字符组成。
A) %B) \ C) …D) ”47. 要输出double型的数据,用()A) %d B) %lf C) %c D)%f48. 若有以下类型说明语句:char a;int b; float c; double d; 则表达式a*b+d-c的结果类型为。
A)float B) char C) int D)double49.若有以下类型说明语句:char w;int x;float y;double z; 则表达式w-x*y/z的结果为D类型,表达式(int)(x+y-z*w)的结果为C类型。
A)float B)char C)int D)double50. 以下说法正确的是。
A) 'x'+101是一个错误的表达式B) C语言不允许类型的混合运算C) 强制类型转换时,类型说明符必须加括号D) (int)x+y 和(int)(x+y) 是完全等价的表达式51.表达式sizeof(double)是。
A) 函数调用B) double型表达式C) int型表达式D) 非法表达式52. 以下运算符中优先级最高的运算符是:A)&& B) ! C) ? : D)!=53. 运算符+、!=、!、%中,优先级最高的运算符是()A) + B) != C) !D) %二、阅读程序,写出运行结果1.#include <stdio.h>main(){int z, x=6,y=5;char w=‟c‟;//已知‟a‟的ASCII码值为97z=x+y+w;printf("%d,%d,%d,%c",x,y,z,w);}运行结果为:6,5,110,c2.#include <stdio.h>main() {char c='a'; //已知‟a‟的ASCII码值为97c-=32 ;printf("%c,%d\n",c,c);}运行结果为:A,653.#include <stdio.h>main(){ int i=128;float x=234.89;printf(“\n”);printf("%5d,%8.2f\n",i,x);printf("%2d,%4.1f\n",i,x);}运行结果为:128, 234.89128,234.94.#include <stdio.h>void main(void){int x=15,y=5;float f=1234.567f,b=12345;printf("%f\t%10f\t%10.2f\t%.2f%-10.2f\n",f,f,f,f,f);printf("x+y=%d\n",x+y);printf("b=%8f",b);}运行结果为:1234.567000 1234.567000 1234.57 1234.571234.57 x+y=20b=12345.0000005.#include <stdio.h>main(){ int a=1,b=2;a=a+b;b=a-b;a=a-b;printf(“a=%d,b=%d\n”,a,b);}运行结果为:a=2,b=16.#include <stdio.h>main(){ int x=10;int y=79;printf("%5d,%5d,%5d",!x,x||y,x&&y);}运行结果为:0, 1, 17.#include <stdio.h>main(){ int a,b;scanf("%2d%3d",&a,&b);printf("a+b=%d\n",a+b);}若运行时输入:1234567,则运行结果为:a+b=3578.#include <stdio.h>#include<math.h>main(){ int a,b;float c;b=5,c=6;c=b+7;b=c+1;a=sqrt((double)b+c);printf("%d,%f,%d\n",a+6,c,b);}运行结果为:11,12.000000,139.#include <stdio.h>main ( ){ char c1, c2;c1=getchar ( );printf (“%c, %d\n”, c1,c1 );c2=c1+32;printf (“%c,%d\n”, c2,c2 );}若敲进A,已知‟A‟的ASCII码值为65,则运行结果为A,65a,9710.#include <stdio.h>main(){ int z,x=7,y=4;char w=‟c‟;z=x>y&&y+3<7||w;printf("\n%d,%d,%d",x,y,z);}运行结果为:7,4,111.#include <stdio.h>main() {int x, b0, b1, b2;printf("Please enter an integer x:");scanf("%d", &x);b2 = x / 100;b1 = (x - b2 * 100) / 10;b0 = x % 10;printf("bit0=%d, bit1=%d, bit2=%d\n", b0, b1, b2);}若输入352,运行结果为:bit0=2, bit1=5, bit2=3三、编程题1、编写一个C 程序,输入两个整数,分别求出这两个数的平方和与立方和并输出。