资源描述:
《5,6章作业答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.求满足:abcd=(ab)*(ab)+(cd)*(cd)的所有四位数abcd:/*分解4位数1*/main(){inti,n1,n2;for(i=1000;i<=9999;i++){n1=i/100;n2=i%100;if(n1*n1+n2*n2==i)printf("%d",i);}}/*分解4位数2*/main(){inti,j,n1,n2;clrscr();for(i=10;i<=99;i++)for(j=00;j<=99;j++){if(i*100+j==i*i+j*j)printf("%d",i*100+j);}
2、}–2.求10~999间的同构数。“同构数”是指一个数的右端若干位的平方等于该数本身。如25=52,625=252,所以,25和625均是同构数/*同构数*/main(){inti;clrscr();for(i=10;i<=999;i++)if(i%10*(i%10)==i
3、
4、i%100*(i%100)==i)printf("%4dt",i);}3.输出ASCII表的第001~122符号,每行只能输出10个符号/*输出ASCII表1*/main(){inti;clrscr();for(i=1;i<=122;i++){printf(
5、"%3d%c",i,i);if(i%10==0)printf("");}}/*输出ASCII表2*/main(){inti,j=0;clrscr();for(i=1;i<=122;i++){printf("%3d%c",i,i);j++;if(j==10){printf("");j=0;}}}5.从键盘输入字符,分别统计数字和英文字母的个数,输入终止符号“#”#include"stdio.h"main(){charc;intch=0,nu=0;while((c=getchar())!='#'){if(c>='0'&&c<='
6、9')nu++;if((c>='A'&&c<='Z')
7、
8、(c>='a'&&c<='z'))ch++;}printf("Char=%dtNum=%d",ch,nu);}6编写一个出题程序,题目类型为两位加法,要求学生答题数不限,答对10题结束出题,并计算学生答题的正确率#include"stdlib.h"#include"math.h"main(){intn=0,m=0,a,b,an;randomize();clrscr();while(1){m++;a=rand()%10;b=rand()%10;printf("%d+%d="
9、,a,b);scanf("%d",&an);if(an==a+b)n++;elseprintf("Wrong!Thekeyis:%d",a+b);if(n>=10)break;}printf("Total%dttRight%dWrong%dScore%-3.0f",m,n,m-n,(float)n/m*100);}8.给出一个由键盘输入的数的所有因子main(){intnum,i=1;printf("Pleaseinputanumber:");scanf("%d",&num);do{if(!(num%i))printf("
10、%4d=%4d*%4d",num,i,num/i);i++;}while(i<=num/2);/*why*/}2.求3000以内的所有亲密数/*求亲密数*/main(){inta,i,m,n;clrscr();printf("Thefriendlynumberare:");for(a=1;a<=3000;a++){for(m=0,i=1;i<=a/2;i++)if(a%i==0)m+=i;for(n=0,i=1;i<=m/2;i++)if(m%i==0)n+=i;if(n==a&&a11、a,m);}}n8.Π2/6=1/12+1/22+1/32+……求Π,要求最后一项小于10-6#includemain(){longi=1;doublepi=0,t=1.0/(1*1);while(t>=1e-6){pi+=t;i++;t=1.0/(i*i);}pi=sqrt(6.0*pi);printf("PI=%10.8f",pi);}7.编写程序打印所有符合下列条件的3位正整数:是某个数的平方,其中有两个数字相同,如100,121等/#include"math.h"main(){inti,a,n1,n2,n3
12、;clrscr();for(a=10;a<=100;a++)for(i=100;i<=999;i++){n1=i/100;n2=i%100/10;n3=i%100%10;if((a*a==i)&&(n1==