谭浩强C语言第八章答案.doc由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言谭浩强版第八章”。
8.1 # include int yueshu(int m,int n);int beishu(int m,int n);int main(){
int a,b,Y,B;printf(“输入两个数字:n”);scanf(“%d%d”,&a,&b);Y=yueshu(a,b);B=beishu(a,b);printf(“最大公约数为Y=%dn最小公倍数为B=%dn”,Y,B);} int yueshu(int m,int n){
} int r,t;if(m
} r=m%n;if(r==0)break;else { m=n;n=r;}
return n;int beishu(int m,int n){
} 8.2 # include float gen1(int a,int b,int c){
int c;c=m*n/yueshu(m,n);return c;
int x1,x2;
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);printf(“%fn%fn”,x1,x2);return 0;} float gen2(int a,int b,int c){
int x;x=-b/(2*a);printf(“%fn”,x);return x;} float gen3(int a,int b,int c){
} printf(“无实根;n”);return 0;float function(int a,int b,int c){ float x,y;y=a*x*x+b*x+c;return y;} void main(){ int x,a,b,c,y;printf(“请输入系数:n”);
}
8.3 # include # include scanf(“%d%d%d”,&a,&b,&c);if(b*b-4*a*c>0){ printf(“根为:%f%f”,gen1(a,b,c));} if(b*b-4*a*c==0){ printf(“根为:%f”,gen2(a,b,c));} if(b*b-4*a*c
int sushu(int x);void main(){ int y;printf(“请输入要判断的数字:n”);scanf(“%d”,&y);sushu(y);} int sushu(int x){
} 8.4 # include void zhuanzhi(b);void main(){
}
void zhuanzhi(int b[3][3]){
int i;float k;k=sqrt(x);for(i=2;i
if(i>k+1)printf(“%d就是素数!”,x);else printf(“%d不是素数n”,x);int a[3][3]={0};int i,j;printf(“请输入三维数组:n”);for(i=0;i
for(j=0;j
} 8.5
} } printf(“n”);# include # include void fanxu(char a[50]);void main(){
char b[50];printf(“请输入字符串:n”);gets(b);fanxu(b);printf(“n”);} void fanxu(char a[50]){ int i;for(i=strlen(a);i>=0;i--)
printf(“%c”,a[i]);} 8.6 # include # include void lianjie(char a1[20],char a2[20]);void main(){ char a[20]={0},b[20]={0};printf(“输入两个字符串:n”);gets(a);gets(b);
lianjie(a,b);} {
printf(“n”);void lianjie(char a1[20],char a2[20])int m,n,i;char a3[50];m=strlen(a1);n=strlen(a2);for(i=0;i
} for(i=0;i
a3[m+n]=' ';for(i=0;i
printf(“%c”,a3[i]);8.7 # include # include void yuanyin(char b[30]);void main(){
char a1[50];printf(“请输入一字符串:n”);gets(a1);yuanyin(a1);} void yuanyin(char b[30]){
} 8.8 # include void kong(int b[4]);void main(){
int i,j=0;char c1[20]={0},c2[20]={0};for(i=0;i
if(b[i]=='a'||b[i]=='e'||b[i]=='i'||b[i]=='o'||b[i]=='u'
||b[i]=='A'||b[i]=='E'||b[i]=='I'||b[i]=='O'||b[i]=='U')
{ c1[j]=b[i];
j++;} // c1[j+1]=' ';
strcpy(c2,c1);for(i=0;i
kong(a);printf(“n”);} void kong(int b[4]){
} 8.9 # include # include void tongji(char b[50]);void main(){ char a[50]={0};printf(“输入一串字符:n”);int i;for(i=0;i
} printf(“%d”,b[i]);printf(“ ”);gets(a);tongji(a);} void tongji(char b[50]){
int i;int d=0,x=0,s=0,k=0,q=0;for(i=0;i
if(b[i]>='A'&&b[i]='a'&&b[i]='0'&&b[i]
# include void danci(char str1[100],char w0[15]);void main(){ char a[50]={0},b[15]={0};printf(“输入一串字符:n”);
}
void danci(char str1[100],char w0[15]){
} int i=0,j=0,t=0;char w1[15];for(i=0;i
if(!((str1[i]>='a'&&str1[i]='A'&&str1[i]
}
w1[j]=str1[i];j++;if(j>=t)strcpy(w0,w1);} puts(w0);8.11 # include void maopao(int a[10]);void main(){
int b[10]={0},i;printf(“请输入十个数字:n”);for(i=0;i
for(i=0;i
}
void maopao(int a[10]){
} int i,j,t;for(j=1;j
for(i=0;i
} {
} if(a[i]>a[i+1]){ t=a[i];a[i]=a[i+1];a[i+1]=t;} 8.12 # include # include void ND(int a,int b,int c,int d);
void main(){
}
void ND(int a,int b,int c,int d){
int p,q,r,s;
printf(“请输入系数:n”);scanf(“%d%d%d%d”,&p,&q,&r,&s);printf(“方程为:%dX^3+%dX^2+%dX+%d=0n”,p,q,r,s);ND(p,q,r,s);
float x=1,x0,x1;do { x1=x;
x0=x-(a*x*x*x+b*x*x+c*x+d)/(3*a*x*x+2*b*x+c);x=x0;}while(fabs(x1-x0)>1e-6);printf(“%fn”,x0);
} 8.13 # include float lerangde(float x,int n);void main(){
}
float lerangde(float x1,int n){ if(n==0||n==1)
} { if(n==0)
return 1;else return x1;} else return((2*n-1)*x1-lerangde(x1,n-1)-(n-1)*lerangde(x1,n-2))/n;float x,y;int m;printf(“请输入x以及阶数m:n”);scanf(“%f%d”,&x,&m);y=lerangde(x,m);printf(“勒让德多项式值为:%-f”,y);putchar(10);
8.14# include # define M 2 # define N 3 float stu_average(int a[M][N]);void sourse_average(int a[M][N]);void max(int a[M][N]);float average(int a[M][N]);
//调用函数; void main(){
int a[2][3]={0};int i,j;printf(“输入学生以及对应的成绩:n”);for(i=0;i
scanf(“%d”,&a[i][j]);
stu_average(a);sourse_average(a);max(a);average(a);printf(“每个学生的平均分为:%fn”,stu_average(a));
}
//计算每个学生平均成绩;
float stu_average(int a[M][N]){
int i,j,sum=0;float x1;for(i=0;i
for(j=0;j
return x1;}
//课程平均成绩;
void sourse_average(int a[M][N]){
int sum=0,i,j;float x1;for(i=0;i
{
} sum=sum+a[i][j];x1=(float)(sum/N);printf(“每门课程的平均分为:%fn”,x1);
} //最高分;
void max(int a[M][N]){
int max=a[0][0],t,s,k,i,j;for(i=0;i
for(j=0;j
} if(max
} max=a[i][j];a[i][j]=t;s=i+1;k=j+1;printf(“%d %d %dn”,max,s,k);
} 8.15# include # include char m[4][80];int n[4];void shuru();void paixu();void found();void main(){
} shuru();printf(“排好顺序为:n”);paixu();found();void shuru(){ int i;printf(“请输入职工姓名以及工号:n”);
} void paixu(){
for(i=0;i
for(i=0;i
}
}
} if(n[i]>n[i+1]){
} t=n[i];n[i]=n[i+1];n[i+1]=t;
strcpy(c,*m[i]);strcpy(*m[i],*m[i+1]);strcpy(*m[i+1],c);for(i=0;i
void found(){
int p,i,j,flag=0,mid;
printf(“输入要查找的职工号:n”);scanf(“%d”,&p);i=0;j=3;while(i
} mid=(i+j)/2;if(p==n[mid]){ flag=1;break;} else {
} if(p>n[mid])j=mid-1;else
i=mid+1;
if(flag==1)
printf(“找到了,名字是%sn”,m[mid]);
else printf(“无此人!n”);
} 8.16 # include # include void main(){
char a[20]={0},c[20],b[20];int i,j,m,n,y;printf(“请输入十六进制数字:n”);gets(a);n=strlen(a);m=strlen(c);for(i=0;i
if(a[i]
} for(i=0;i
} for(i=0;i
int k;c[0]=c[0]*16+a[i];for(k=1;k=0;j--){
} b[i*4+j]=y%2;y=y/2;
} for(k=0;k
} while(y>0){
} m++;c[m]=y%10;y=y/10;y=y+c[k];c[k]=y%10;y=y/10;for(i=m;i>=0;i--)printf(“%d”,c[i]);getchar();} 8.17 # include void F(int m);void main(){ int n;printf(“输入数字:n”);
} scanf(“%d”,&n);F(n);putchar(10);void F(int m){
int j;if(m>=0&&m
}
j=m%10;F(m/10);
printf(“%d”,j);} 8.18 # include
void DJT(int y,int m,int d);int leap(int year);void main(){ int year,month,day;printf(“请输入年-月-日:n”);
}
int leap(int year){
} int flag=0;if(year%4==0){
if(year%100==0){ if(year%400==0)flag=1;else flag=0;scanf(“%d%d%d”,&year,&month,&day);DJT(year,month,day);
} else flag=1;} else flag=0;return flag;
void DJT(int y,int m,int d){
int p=0;int r=0;if(leap(y))r=29;else r=28;switch(m){
case 1:p=d;break;case 2:p=31+d;break;case 3:p=31+r+d;break;case 4:p=31+r+31+d;break;case 5:p=31+r+31+30+d;break;case 6:p=31+r+31+30+31+d;break;
}
case 7:p=31+r+31+30+31+30+d;break;case 8:p=31+r+31+30+31+30+31+d;break;case 9:p=31+r+31+30+31+30+31+31+d;break;case 10:p=31+r+31+30+31+30+31+31+30+d;break;case 11:p=31+r+31+30+31+30+31+31+30+31+d;break;case 12:p=31+r+31+30+31+30+31+31+30+31+30+d;break;default :;} printf(“这是%d年的第%d天n”,y,p);
例1.1 要求在屏幕上输入以下一行信息.This is a C program.编写程序: #include // 这是编译预?处理命令 int main( ) // 定义主函数{// 函数开始的标志 printf ("This is......
一 选择题(24分,每小题2分)1.已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是()。 A 存放读入数据项的存储区B 存放读入数据的地址或指向此地址的指针 C 一个......
C语言设计 学习笔记早晨: 06:40起床 07:20——08:20 上午: 08:30——10:30 10:50——11:30 中午: 12:00——02:00 下午: 02:30——04:30 晚上: 05:30——08:00 08:00——09:00......
第一章 程序设计和C语言 【第15页】 1-5 #include int main ( ) { printf ("**************************\n\n"); printf(" Very Good!\n\n"); printf ("*******......
C语言设计谭浩强第三版的课后习题答案1.5请参照本章例题,编写一个C程序,输出以下信息: main() { printf("************ \n"); printf("\n"); printf("Very Good! \n")......