2021-02-18

作业
31.
不会这题
#include"stdio.h"
int fn(int a,int n)
{
int s;
while(n>=0)
{
s=an+s;
a=a
10;
n–;
}
return s;
}

void main()
{
int a1,n1;
int sum;
printf(“please input the a1 and n1:\n”);
scanf("%d%d",&a1,&n1);
sum=fn(a1,n1);
printf(“sum=%d\n”,sum);
}
32.
不会
#include"stdio.h"
int fib(int n);
void printFN(int m,int n);
int main()
{
int m,n,t;
scanf("%d%d", &m,&n);
printFN(m,n);
return 0;
}

int fib(int n)
{
if(n1||n2)
return 1;
if(n>2)
return fib(n-1)+fib(n-2);
}

void printFN(int m,int n)
{
int i=0,j,k=1,count=0;
for(j=0;j<=21;j++)
{
i++;
if(fib(i)>=m && fib(i)<=n)
{
count++;
printf("%d",fib(i));
}
}
if(count0)
{
printf(“No Fibonacci number”);
}
}
33.
不会
#include"stdio.h"
#include"math.h"
int fun(int n)
{
int i;
if(n
2)
return 1;
if(n%20)
return 0;
for(i=3;i<=sqrt(n);i+=2)
if(n%i
0)
return 0;
return 1;
}

main()
{
int n,i,j,flag,counter=0;
for(n=6;n<=100;n++)
{
flag=0;
for(i=2;i<=n/2;i++)
{
if(fun(i))
if(fun(n-i))
{
printf("%d=%d+%d\t\t",n,i,n-i);
counter++;
ok=1;
if(counter%30)
printf("\n");
}
if(i!=2)
i++;
if(flag)
break;
}
}
}
34.
不会
#include"stdio.h"
#include"math.h"
int fun(int n)
{
int i;
if(n
2)
return 1;
if(n%20)
return 0;
for(i=3;i<=sqrt(n);i+=2)
if(n%i
0)
return 0;
return 1;
}
main()
{
int num,counter=0;
for(num=100;num<=200;num++)
if(fun(num))
{
counter++;
printf("%d\t",num);
if(counter%5==0)
printf("\n");
}
}
35.
不会
#include “stdio.h”
void main()
{
char c;
while((c=getchar())!=’\n’)
{
if((c>=‘a’&&c<=‘z’)||(c>=‘A’&&c<=‘Z’))
{
c=c+4;
if(c>‘Z’&&c<=‘Z’+4||c>‘z’)
c=c-26;
}
printf("%c",c);
}
printf("\n");
}
36.
不会
#include"stdio.h"
#include"string.h"
void main()
{
char st[20],string[3][20];
int i,j,p;
printf(“input three string:\n”);
for(i=0;i<3;i++)
gets(string[i]);
printf("\n");

for(i=0;i<3;i++)
{
  p=i;
  strcpy(st,string[i]);
  for(j=i+1;j<3;j++)
    if(strcmp(string[j],st)<0)
       {
        p=j;
        strcpy(st,string[j]);
       }
  if(p!=i)
    {
    strcpy(st,string[i]);
    strcpy(string[i],string[p]);
    strcpy(string[p],st);
    }
  puts(string[i]);

}
}
37.
不会
#include “stdio.h”
void main()
{
//数据定义:
int arr[5][4];
int i,j;
//初始化:
printf(“please input the arr:\n”);
for(i=0;i<4;i++)
for(j=0;j<3;j++)
scanf("%d",&arr[i][j]);

 for(i=0;i<4;i++) //让最后一列都为 0; 
     arr[i][3]=0;
 for(j=0;j<3;j++) //让最后一行都为 0; 
     arr[4][j]=0;
     
  //输出初始化后的数组: 
 for(i=0;i<5;i++)
   {
    for(j=0;j<4;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
  
 //计算:     
for(i=0;i<4;i++)
     for(j=0;j<3;j++)
     {   
         arr[4][3]+=arr[i][j];
        arr[i][3]+=arr[i][j];
         arr[4][j]+=arr[i][j];
    }     
//输出: 
printf("the result is :\n");
for(i=0;i<5;i++)
   {
    for(j=0;j<4;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  }      

}
38.
不会
#include “stdio.h”
void main()
{
int arr[3][4];
int arr_result[4][3];
int i,j;

 //初始化   
 printf("please input the arr:\n");
 for(i=0;i<3;i++)
     for(j=0;j<4;j++)
         scanf("%d",&arr[i][j]);
 
//输出初始化后的数组:  
 for(i=0;i<3;i++)
   {
    for(j=0;j<4;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
  
//运算: 
 for(i=0;i<4;i++)
    for(j=0;j<3;j++)
        arr_result[i][j]=arr[j][i];
 //输出: 
printf("the result is :\n");
for(i=0;i<4;i++)
   {
    for(j=0;j<3;j++)
         printf("%5d",arr_result[i][j]);
     printf("\n");   
  } 

}
39.
不会
#include “stdio.h”
void main()
{
int arr[4][4];
int i,j;
int sum_1=0,sum_2=0;
//初始化
printf(“please input the arr:\n”);
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&arr[i][j]);

//输出初始化后的数组: 
 for(i=0;i<4;i++)
   {
    for(j=0;j<4;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
  
//运算: 
 for(i=0;i<4;i++)
    for(j=0;j<4;j++)
        {
       if(i==j)
             sum_1+=arr[i][j];
        if(i+j==3)
             sum_2+=arr[i][j];
         }
 //输出: 
printf("\n the sum_1 is %d,  the sum_2 is %d  :\n",sum_1,sum_2);

}
40.
不会
#include “stdio.h”

void main()
{
int arr[30],sum=0;
int i,j;
for(i=0;i<30;i++)
arr[i]=2i+2;
//计算与输出
for(i=0;i<30;i++)
{
sum+=arr[i];
if((i+1)%5==0)
{
printf(“the average is :=%d\n”,sum/5);
sum=0;
}
}
}
41.
不会
#include <stdio.h>
#include <stdlib.h>
void main()
{
int m,n,i,cnt=0,CNT=0,flag;
printf(“please input the m and n:\n”);
scanf("%d%d",&m,&n);
int a=(int)malloc(n
sizeof(int));
for(i=0;i<n;i++)
a[i]=i+1;
while(1)
{
flag=CNT;
for(i=0;i<n;i++)
{
if(a[i]!=0)
{
cnt++;
CNT++;
}
if(cntm)
{
a[i]=0;
cnt=0;
printf("%d ",i+1);
}
}
if(CNT
flag+1)
break;
}
free(a);
}
42.
不会
#include “stdio.h”
void main()
{
int arr[3][3];
int i,j,max,min;
int max_i,max_j;
int min_i,min_j;

 //初始化 
 printf("please input the arr:\n");
 for(i=0;i<3;i++)
     for(j=0;j<3;j++)
         scanf("%d",&arr[i][j]);
         
//输出初始化后的数组: 
 for(i=0;i<3;i++)
   {
    for(j=0;j<3;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
//运算: 
 max=arr[0][0];
 min=arr[0][0];
 for(i=0;i<3;i++)
    for(j=0;j<3;j++)
       {
           if(arr[i][j]>max)
           {
           max=arr[i][j];
           max_i=i;
           max_j=j;
        }
        if(arr[i][j]<min)
           {
           min=arr[i][j];
           min_i=i;
           min_j=j;
        }
       }
 
 //输出: 
printf("the result is :\n");
printf("the max element is %d, index is [%d][%d]\n\n",max,max_i,max_j);
printf("the min element is %d, index is [%d][%d]\n\n",min,min_i,min_j);
}
43.
**不会**

#include “stdio.h”
void main()
{
int arr[3][3];
int i,j;
int sum_1=0,sum_2=0;
//初始化
printf(“please input the arr:\n”);
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&arr[i][j]);

//输出初始化后的数组: 
 for(i=0;i<3;i++)
   {
    for(j=0;j<3;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
  
//运算: 
 for(i=0;i<3;i++)
    for(j=0;j<3;j++)
        {
       if(i==j)
             sum_1+=arr[i][j];
        if(i+j==2)
             sum_2+=arr[i][j];
         }
 //输出: 
printf("\n the sum_1 is %d,  the sum_2 is %d  :\n",sum_1,sum_2);

}
44.
不会
#include “stdio.h”
void main()
{
int arr[3][3];
int i,j,max,min;
int max_i,max_j;
int min_i,min_j;

 //初始化 
 printf("please input the arr:\n");
 for(i=0;i<3;i++)
     for(j=0;j<3;j++)
         scanf("%d",&arr[i][j]);
         
//输出初始化后的数组: 
 for(i=0;i<3;i++)
   {
    for(j=0;j<3;j++)
         printf("%5d",arr[i][j]);
     printf("\n");   
  } 
//运算: 
 max=arr[0][0];
 min=arr[0][0];
 for(i=0;i<3;i++)
    for(j=0;j<3;j++)
       {
           if(arr[i][j]>max)
           {
           max=arr[i][j];
           max_i=i;
           max_j=j;
        }
        if(arr[i][j]<min)
           {
           min=arr[i][j];
           min_i=i;
           min_j=j;
        }
       }
 
 //输出: 
printf("the result is :\n");
printf("the max element is %d, index is [%d][%d]\n\n",max,max_i,max_j);
printf("the min element is %d, index is [%d][%d]\n\n",min,min_i,min_j);
}
45.
**不会**
#include<stdio.h>

main()
{
int year,mouth,day,days=0;
int w,m,d,y;
printf(“请输入年,月,日\n”);
scanf("%d%d%d",&y,&m,&d);
mouth=m;
year=y;
day=d;
switch(mouth)
{
case 1:days=0;break;
case 2:days=31;break;
case 3:days=59;break;
case 4:days=90;break;
case 5:days=120;break;
case 6:days=151;break;
case 7:days=181;break;
case 8:days=212;break;
case 9:days=243;break;
case 10:days=273;break;
case 11:days=304;break;
case 12:days=334;break;
}
days+=day;
if(mouth>2&&year%40&&year%100!=0||year%4000)
days++;
printf("%d年%d月%d日第%d天",year,mouth,day,days);
}
46.
不会
#include<stdio.h>
main()
{
int i,j,k,count=0;
for(i=1;i<5;i++)
{
for(j=0;j<5;j++)
{
for(k=0;k<5;k++)
{
if(i!=j&&j!=k&&i!=k)
{
count++;
printf("%d%d%d “,i,j,k);
if(count%5==0)
printf(”\n");
}
}
}
}
printf("\n一共有%d种方法",count);
}
47.
不会
#include"stdio.h"
void main()
{
int a,b,t,r,n;
printf(“please input the a and b:\n”);
scanf("%d%d",&a,&b);
if(a<b)
{
t=b;
b=a;
a=t;
}
r=a%b;
n=ab;
while(r!=0)
{
a=b;
b=r;
r=a%b;
}
printf(“这两个数的最大公约数为%d,最小公倍数为%d\n”,b,n/b);
}
48.
不会
#include <stdio.h>
void main()
{
double i,s=0,x=100,y; //x用于表示落下的高度,第一次为100;s用于保存球一共走过的路径,y用来记录每次落下后弹起的高度
for(i=1;i<=10;i++) //题目要求求第10次,所以循环10次
{
y=x/2; // 第一次y弹起x的一半,即50
s=s+x+y; // s为第一次球走过的总路径,即落下高度x+弹起高度y+之前球走过的总路径s
x=y; // y是第一次的弹起高度,也即第二次的落下高度,所以赋值给x,便可以进行第二次的计算
}
s=s-y; //这里是因为循环体内无条件会加上一个弹起高度y,第十次的弹起高度y需要减去,因为题目要求是求第十次落地的总路程
printf(“共经过:%lf米\n”,s);
printf(“第十次反弹:%lf米\n”,y);
}
49.
#include"stdio.h"
void main()
{
int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<=2
i-1;j++)
printf("*");
printf("\n");
}

for(i=3;i>=1;i--)
 {
     for(j=1;j<=2*i-1;j++)
      printf("*");
   printf("\n");
} 

}
50.
不会
#include"stdio.h"
void main()
{
double a=2; //分子
double b=1;//分母
double sum=0; //和值
double temp=0;//临时变量
int i;
for(i=1;i<=20;i++)
{
sum+=a/b;
temp=a;
a+=b;
b=temp;
}
printf(“the result is :%.2f\n”,sum);
}
51.
不会
#include"stdio.h"
void main( )
{
long a,b,c,d,e,x;
printf(“请输入不多于5位的正整数:”);
scanf("%ld",&x);
a=x/10000; /分解出万位/
b=x%10000/1000; /分解出千位/
c=x%1000/100; /分解出百位/
d=x%100/10; /分解出十位/
e=x%10; /分解出个位/
if (a!=0)
printf(“为5位数,逆序为: %ld %ld %ld %ld %ld\n”,e,d,c,b,a);
else if(b!=0)
printf(“为4位数,逆序为: %ld %ld %ld %ld\n”,e,d,c,b);
else if(c!=0)
printf(“为 3 位数,逆序为:%ld %ld %ld\n”,e,d,c);
else if(d!=0)
printf(“为 2 位数,逆序为: %ld %ld\n”,e,d);
else if(e!=0)
printf(“为 1 位数,逆序为:%ld\n”,e);
else
printf(“errer!\n”);
}
52.
#include “stdio.h”
void main()
{
int arr[10];
int i,j,temp;
printf(“please input the arr:\n”);
for(i=0;i<10;i++)
scanf("%d",&arr[i]);
for(i=1;i<10;i++)
for(j=0;j<10-i;j++)
if(arr[j]>arr[j+1])
{
temp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
}
printf(“the result is :\n”);
for(i=0;i<10;i++)
printf("%d “,arr[i]);
}
53.
#include “stdio.h”
main()
{
int arr[10];
int i,j;
int temp;
printf(“please input the arr:\n”);
for(i=0;i<10;i++)
scanf(”%d",&arr[i]);
for(i=0,j=9;i<5;i++,j–)
{
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
printf(“the result is :\n”);
for(i=0;i<10;i++)
printf("%5d",arr[i]);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值