C.使用CH定义的变量其类型不确定 D.使用CH定义的是一个字符串
10.下列关于预处理命令的描述中,错误的是( D )。
A.预处理命令最左边的标识符是# B.预处理命令是在编译前处理的 C.宏定义命令可以定义符号常量 D.文件包含命令只能包含.h文件 3.3 填空题
1.表达式语句是一个表达式后边加上 分号(;) 组成的。空语句是 只有一个分号的语句 。
2.复合语句是由 两条 条或 两条 条以上的语句加上 花括号({}) 组成的。 3.分程序是一种带有 说明 语句的复合语句。
4.循环语句的共同特点是都应具有 循环体 和 退出循环的条件 。 5.下列程序是求100之内的能被7整除的自然数之和。
#inelude
int sum; _sum=0_; for(int i(1);__i<=100_; i++) if(_i%7==0__) sum+=i; cout< 3.4 上机调试下列程序,并分析其输出结果 1. #include int a(8),b(5); if(!a) } 答: 9,5 b--; if(a) a++; a--; else else if(b) else b++; cout< 2. #include 第 16 页 共 77 页 void main() { int a(10); while(--a) { } 答: 9 8 7 if(a==5) break; if(a%2==0&&a%3==0) continue; cout< } 3. #include int b(10); do { ++b; cout<<++b< }while(b<15); cout<<\ } 答: 12 14 16 ok! 4. #include int w(5); do { switch(w%2) { case 1: w--; break; case 0: w++; break; } w--; 第 17 页 共 77 页 } 答: 3 1 -1 cout< }while(w>0); 5. #include int a(4),b(5),i(0),j(0); switch(a) { case 4: switch(b) { case 4: i++; break; case 5: j++; break; default: i++;j++; } break; case 5: i++; j++; default: i++;j++; } cout< 6. #include int b(10); for(int i=9;i>=0;i--) { switch(i) { } case 1: case 4: case 7: b++;break; case 2: case 5: case 8: break; case 3: case 6: case 9: b+=2; } cout< 第 18 页 共 77 页 } 答: 19 7. #include int a(6); for(int i(1);i<=a;i++) { } 答: A AAA AAAAA AAAAAAA AAAAAAAAA AAAAAAAAAAA for(int j=1;j<=a-i;j++) cout<<' '; cout<<'A'; for(j=1;j<=2*i-1;j++) cout< } 8. #include #define MAX(x,y) (x)>(y)?(x):(y) void main() { typedef int IN; IN a(3),b(4),c; c=MAX(a,b)*2; cout< 3.5 编程题 1. 求100之内的自然数中奇数之和。 答:编程如下: #include int s=0; for(int i=1;i<100;i+=2) 第 19 页 共 77 页 s+=i; cout< 2. 求两个整数的最大公约数和最小公倍数。 答:编程如下: 假定两个整数分别为15和25,求它们的最大公约数和最小公倍数。 #include int m,n,t; m=15; n=25; if(m cout<<\最大公约数为\ cout<<\最小公倍数为\ } 3. 求下列分数序列前15项之和。 2/1,3/2,5/3,8/5,13/8,… 答:编程如下: #include int a; double i=2,j=1,sum=0,t; for(a=1;a<15;a++) { sum+=i/j; t=i; i+=j; j=t; } cout<<\ } 第 20 页 共 77 页