C语言课后作业答案
gets(str);
i=strlen(str)-1;
for (i=0;i<5;i++)
for (j=0;j<3;j++)
scanf("%d",&score[i][j]);
for (i=0;i<3;i++)
{
s=0;
for (j=0;j<5;j++) s=s+score[j][i];
v[i]=s/5;
}
printf("各科平均成绩为:");
for (i=0;i<3;i++) printf("%4d",v[i]);
for (b=5-i*2;b>=1;b--) printf("*");
printf("\n");
}
}
鸡兔同笼
#include <stdio.h>
void main()
{
int a,b;
for (a=0;a<=35;a++)
for (b=0;b<=24;b++)
{
if (a*2+b*4==94&&a+b==35)
else ch=ch-32;
}
printf("%c\n",ch);
}
3-5-3大写转化成小写或者小写变大写
#include <stdio.h>
void main()
{
char ch;
printf("请输入一个字符:");
scanf("%c",&ch);
if(ch>='a'&&ch<='z') ch=ch-32;
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z') num1++;
else if(c==' ') num2++;
else if(c>='0'&&c<='9') num3++;
else num4++;
}
printf("字母:%d,空格:%d,数字:%d,其他:%d\n",num1,num2,num3,num4);
switch(ch)
{
case '+':printf("%f+%f=%f\n",x,y,x+y);break;
case '-':printf("%f-%f=%f\n",x,y,x-y);break;
case '*':printf("%f*%f=%f\n",x,y,x*y);break;
case '/':printf("%f/%f=%f\n",x,y,x/y);break;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",c[i][j]);
printf("\n");
}
}
最高最低温度
正确
#include <stdio.h>
void main ()
{
float max,min,a[31];
int i;
printf("请输入31天的温度:");
int n;
p=a;
scanf("%s",a);
for(n=0;*(p+n)!='\0';n++);
printf("%d\n",n);
}
输入一个字符串,将其逆序输出
#include <stdio.h>
#include <string.h>
void main()
{
char str[100];
int i;
{
m=i*100+j*10+k;
n=i*i*i+j*j*j+k*k*k;
if (m==n) a++,
printf("%d\n",m);
}printf("水仙花数的个数=%d\n",a);
}
三—7—16
#include<stdio.h>
void main()
{
float s=100,h;
int n;
h=s/2;
for (n=2;n<=10;n++)
{
s=s+2*h;
h=h/2;
}
printf("第十次落地共经过的米数:%f\n",s);
printf("第十次反弹的高度:%f\n",h);
}
#include <stdio.h>
#include <math.h>
void main()
{
int a;
float b,x,sum;
else
{
if(1<x<10) y=2*x+1;
else y=3*x-8;
}
printf("x=%d,y=%d\n",x,y);
}
3-6-2正确分段函数
#include <stdio.h>
void main()
{
int x,y;
printf("请输入x:");
scanf("%d",&x);
if(x>=10) y=3*x-8;
a=1;
b=1;
x=1;
sum=0;
while ((fabs(x))>1e-7)
{
sum=sum+x;
b=b*2;
x=a/b;
}
sum=sum*100+100;
printf("%f\n",sum);
}
课本习题四第四大题第一小题数组的值逆序输出
#include <stdio.h>
void main()
default:printf("输入的运算符错误!\n");
}
}
7—6正确
#include <stdio.h>
void main()
{
int x;
printf("请输入一个整数:");
scanf("%d",&x);
if(x%2==0) x=x;
else x=x+1;
printf("%d\n",x);
if(1<x<10) y=2*x+1;
else
if(x>=10) y=3*x-8;
printf("x=%d,y=%d\n",x,y);
}
计算器正确
#include <stdio.h>
void main()
{
float x,y,z;
char ch;
printf("请输入操作数运算符操作数:");
scanf("%f%c%f",&x,&ch,&y);
}
for (i=1;i<=2;i++)
{
for(a=i+1;a>=1;a--) printf(" ");
for (b=5-i*2;b>=1;b--) printf("*");
printf("\n");
}
}
副本输出由*组成的菱形(最左边无空列)
#include <stdio.h>
void main()
{
int i,a,b;
for (i=1;i<=3;i++)
{
for (a=3-i;a>0;a--) printf(" ");
for (b=2*i-1;b>0;b--) printf("*");
printf("\n");
}
for (i=1;i<=2;i++)
{
for(a=i;a>=1;a--) printf(" ");
}
矩阵相加
正确
#include <stdio.h>
void main()
{
int i,j;
int a[3][3],b[3][3],c[3][3];
printf("请输入矩阵a[3][3]:\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
else if(x>1) y=2*x+1;
else y=x;