软件技术基础习题答案(新教材)
练习1(p26) 1、见教材相关内容
2、错误的:‘yy’、a25+36、0569
3、错误的:int、36A、a+b、c/dab、static、do、class
4、(1)5 (2)2 (3)1 (4)0 (5)1 (6)1 (7)9 (8)13 (9)1 (10)2 (11)5 (12)0 5、选择题
(1)D (2)D (3)B、C (4)C (5)C (6)C
6、手写心算写出正确结果(如上机只是为了验证) 7、
(1) #include
void main(){int a; cin>>a; cout<
void main(){int a, b; cin>>a>>b; cout<<(a>b? b: a)<
void main(){float radius; cin>>radius; cout<
void main(){int t=1000; cout<<“1000s=”<
void main(){int a; cin>>a; cout<
#include
for(int i=1;i<=100;i*=10) {a=b/(100/i);cout<
练习2(p48) 1、见教材相关内容
2、手写心算写出正确结果(如上机只是为了验证) 3、
#include
cout< #include float s[11]; cout<<\for(i=1;i<11;i++) cin>>s[i];} for(i=1;i<11;i++) { if(s[i]>=90) }} 5、 #include if(ch>='0'&&ch<='9') {cout<<\ else if(ch>='a'&&ch<='z') {cout<<\ else if(ch>='A'&&ch<='Z') {cout<<\s a capital character.\ else {cout<<\} 6、 #include for(i=3;1.0/i>1E-6;i+=2) {s*=(-1); sum=sum+(1.0/i)*s; } cout<<4*sum< 7、斐波纳契数列中的前两个数是0和1,从第三个数开始,每个数等于前两个数之和,即0、1、1、2、3、5、8、13、...等。编程序求斐波纳契数列的前n个数。(自己加换行) (1)一般算法: //Compute the fibrachi squence #include cout< else if(s[i]<90&&s[i]>=80) else if(s[i]<80&&s[i]>=60) else if(s[i]<60) {long n,middle,a[50]={0,1}; cout<<\cin>>n; for(int i=0;i cout< (2)递归算法: #include void main() {int n; cin>>n; for(int i=0;i cout< 8、用switch语句编写程序,统计输入的一串字母中元音字母(a、e、i、o、u)的总个数和每个元音字母出现的次数。 #include cout<<\cin>>c; for(int j=0;c[j]!='\\0';j++) { switch(a[i]) { case 'a':; case 'A':a++;break; if(n==1) else return (fib(n-2)+fib(n-1)); return 1; return 0; middle=a[i]+a[i+1]; cout< } } case 'e':; case 'E':e++;break; case 'i':; case 'I':i++;break; case 'o':; case 'O':o++;break; case 'u':; case 'U':u++;break; cout<<\ cout<<\return; } 9、摄氏温度和华氏温度的转换公式为:c=(5/9)*(F-32)编程序输出华氏-30度到100 度,间隔为5度的华氏温度和摄氏温度对照表。 #include 10、编程序计算5!+6!+7!。 #include cout<<\return; } 11、编程序,求从2开始连续100个素数。 #include a=1; for(int j=0;j<5+i;) a*=j++; s+=a; c=(f-32)*5/9; //Don't use c=(5/9)*(f-32) cout<<\ Degree Centigrade\cout< for(i=2;n<100;i++) {j=2; } 12、 include for(x=1;x<=20;x++) } 13、 #include cout<<\输入一个自然数:\ cin>>n; }while(n<=0); int m,k,j,l,i; j=n*n*n; for (m=1; m<=j;m+=2) l=0; i=0; do{ l+=m+i*2; i++; for(y=1;y<=33;y++) for(z=3;z<=99;z+=3){ if((5*x+3*y+z/3==100)&&(x+y+z==100)) //满足百钱和百鸡的条件? cout<<\for(;i%j!=0;j++) ; if(i==j) {cout< { }while(l cout< cout<