1. 首页 > 科技

大佬们 两道C语言编程题 求救 大一c语言编程题部分汇总

大佬们 两道C语言编程题 求救大一c语言编程题部分汇总

求救C语言高手,这两道程序该怎么编写啊

1.

//筛选法就是从1到100中依次剔除2,3,4,5,6,7……100(其实本质上是2,3,5,7)的倍数,剩下的就是素数了

//这个是用c++写的

#include<iostream>

using namespace std;

int main()

{

bool flag[100];

for(int i=0;i<=99;i++) flag[i]=false;

int a;

for(int i=2;i<=7;i++)

{

a=2*i;

while(a<=100)

{

flag[a-1]=true;

a+=i;

}

}

flag[0]=true;

for(int i=0;i<=99;i++) if(flag[i]==false) cout<<i+1<<' ';

return 0;

}

运行结果:

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

2.

//设最大公约数为max,最小公倍数为min,求max可以用辗转相减法(本质上跟辗转相除一样),min=m*n/max

//还是用c++

#include<iostream>

using namespace std;

int main()

{

int m,n,max,min;

cout<<"input two integers m,n:"<<endl;

cin>>m>>n;

min=m*n;

while(m*n!=0)

{

if(m>n) m-=n;

else n-=m;

}

max=(m==0)?n:m;

min/=max;

cout<<"max="<<max<<' '<<"min="<<min;

return 0;

}

运行后,例如:

input two integers m,n:

60 72

max=12 min=360

C语言求解,两道题,求大神们帮忙

1. #include int MaxP(int a,int b)//最大公约数 { int temp=a; while(temp!=0) { temp=b%a; b=a; a=temp; } return b; } int MinP(int a,int b)//最小公倍数 { int min; min=(a*b)/MaxP(a,b); return min; } void main() { int num1,num2; printf("输入两个整数:"); scanf("%d%d",&num1,&num2); printf("最大公约数:%d\n",MaxP(num1,num2)); printf("最小公倍数:%d\n",MinP(num1,num2)); printf("\n"); } 2. #include #include double Sum(int x,int n) { int i; double sum=1.0; for(i=0;i

紧急 求助:两道C语言上机题~高分悬赏!!!回答正确继续加分!!!

第一题:

三个空分别填:1、*s    2、s++    3、n

程序代码如下:

#include  <stdio.h>

int fun(char  *s, char  *t)

{ int  n=0;

  while(*s)

  { if(*s < 97) {

/**********found**********/

    *(t+n)= *s;  n++;  }

/**********found**********/

    s++ ;

  }

  *(t+n)=0;

/**********found**********/

  return  n ;

}

void main()

{ char  s[81],t[81];    int  n;

  printf("\nEnter a string:\n");  gets(s);

  n=fun(s,t);

  printf("\nThere are %d letter which ASCII code is less than 97: %s\n",n,t);

}

运行结果截图:

第二题:主要修改了一句代码:xa += x[j]/n;
改为两句:xa +=x[j];    xa=xa/n;

同时,在修改一个符号,int j, c=0, double xa=0.0;  c=0后面的逗号必须改为分号
 修改之后为:int j, c=0; double xa=0.0;

int j, c=0, double xa=0.0;

修改之后的代码:

#include <stdio.h>

int fun(double x[], int n)

{

/************found************/

  int j, c=0; double xa=0.0;

   for (j=0;j<n;j++)

    xa +=x[j];

   xa=xa/n;

   printf("ave =%f\n",xa);

   for (j=0; j<n; j++ )

/************found************/

    if (x[j]>=xa)

    c++;

   return c;

}

void main ( )

{  double x[10] = {193.199,195.673,195.757,196.051,196.092,196.596,196.579,196.763};

   printf("%d\n", fun (x, 8));

}

运行结果截图:

c语言作业,五道题目,程序大佬们救救孩子吧,源代码谢谢

你好,我回答的请先不要采纳,我需要把5道题的全部上传,

如果你采纳了我就没有办法连续上传,谢谢~

#include <stdio.h>

#include <stdlib.h>

int main()

{

    int m,n;    //定义两个变量

    int t;      //用于m和n交换时使用

    int i = 0;  //循环变量

    int s = 0;  //数据和

    printf("请输入m和n的值:\n");

    scanf("%d%d",&m,&n);

    //判断m和n的大小,如果m>n,交换,如果m<n,继续执行程序

    if(m > n)

    {

        t = m;

        m = n;

        n = t;

    }

    //在n-m个数中找出满足条件的数的和并输出

    for(i=0; i<=(n-m); i++)    ////这里要吧n-m算上所以是<=

    {

        if((i+m)%3 != 0 && (i+m)%7 != 0)

        {

            s += (i+m); //先把最小的数给s

        }

    }

    printf("两个正整数[m,n]之间所有既不能被 3 整除也不能被 7 整除的整数之和是:\n");

    printf("总和s=:%d",s);

    return 0;

}