问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言编写 输入一组正整数(数量小于20),输出其最大公约数。 输入:121 33 44 11 1111 输出:11

发布网友 发布时间:2022-04-24 11:43

我来回答

5个回答

热心网友 时间:2022-04-24 13:12

#include<stdio.h>

int main(int argc,char **argv)
{
    int a[20];
    int inputnum=0,i,j;
    int min_num;
    int flag=0;
    int rtn=0;


    printf("你想求几个数的公约数?\n");
    scanf("%d",&inputnum);
    if(inputnum<2 || inputnum >20)
    {
        printf("数的个数应大于2个小于20个!\n");
return 0;
    }
    printf("input %d numbers:\n",inputnum);
    /*for(i=0;i<inputnum;i++)
    {
printf("now,input the %d number:",i+1);
        scanf("%d",&a[i]);
    }*/
for(i=0;i<inputnum;i++)
{
scanf("%d",&a[i]);
printf("a[%d]=%d\n",i,a[i]);
}
    min_num=a[0];
    for(i=0;i<inputnum;i++)
    {
        if(min_num>a[i])
        {
            min_num=a[i];        //找到最小的数
        }
    }
    for(i=1;i<=min_num;i++)
    {
        for(j=0;j<inputnum;j++)
        {
            if(a[j] % i==0)

                {flag++;}
        }
            if(flag==inputnum)
            {
                rtn=i;
            }
            flag=0;
    }
    
    printf("最大公约数是:%d\n",rtn);
    return 0;
}

测试过了,没什么问题。望采纳。

热心网友 时间:2022-04-24 14:30

#include <stdio.h>
int maxdivsor(int m,int n)//求m和n的最大公因子
{
    int t;
    if(m<n)//交换m和n
    {
        t=m; m=n; n=t;
    }
    t=m%n;
    while(t!=0)
    {
        m=n;
        n=t;
        t=m%n;    
    }
    return n;
}
int main()
{
    int a[20]={0};
    int i;
    int cdiv;//最大公因子
    printf("请输入20个正整数,中间用空格隔开:");
    for(i=0;i<20;i++)
        scanf("%d",&a[i]);
    cdiv=maxdivsor(a[0],a[1]);
    for(i=2;i<20;i++)
        cdiv=maxdivsor(cdiv,a[i]);
    printf("这20个正整数的最大公因子为:%d\n",cdiv);
    return 0;
}

热心网友 时间:2022-04-24 16:05

#include <stdio.h>

int main(int argc, const char * argv[])

{

int a[20];

for (int i=0; i<20; i++) {

printf("请输入第%d个整数:",i+1);

scanf("%d",&a[i]);

printf("\n");

}

int min=a[0];

for (int i=1; i<20; i++) {

if (min>a[i]) {

min=a[i];

}

}

int maxCommom=1;

int recyeCount=0;//循环次数

for (int j=2; j<=min; j++) {

for (int i=0; i<20; i++) {

if (a[i]%j!=0)//说明不可以除尽

{

break;//跳出循环

}

else

{

recyeCount++;

}

if (recyeCount==5) {

recyeCount=0;

maxCommom=j;//最大公约数

}

}

if (j==min) {

break;

}

}

printf("最大公约数是%d\n",maxCommom);

return 0;

}

热心网友 时间:2022-04-24 17:56

# include<iostream.h>
//我习惯用C++的输入输出,你不喜欢的话可以改掉

void f()
{
int A[20],count=0; //A为存储数据的数组,count用来记录输入的数据个数。

int data;
cin>>data; //这里可以换成scanf

while(data!=0) //输入数据 以0作为结束

{
A[count]=data;
count++;
cin>>data;
}
int result=A[0],tmp;

for(int i=1;i<count;i++)
{
for(int j=A[i];j>0;j--)
{
if(result < j) continue;
if(result%j==0 && A[i]%j==0)
{
result=j;
break;
}
}
}
cout<<result; //这里可以换成printf

}

int main()
{
f();
return 0;
}追问这个题就是这样,不能以0为结束,数据要求很严格,随便加结束符会不能通过的

追答//改过了 应该能满足你的要求 回车直接就能得到结果了
# include
void f()
{
int A[20],count=0;
int data;
char ch;
cin>>data;
cin.get(ch);
while(ch!='\n')
{
A[count]=data;
count++;
cin>>data;
cin.get(ch);
}
int result=A[0];
for(int i=1;i0;j--)
{
if(result < j) continue;
if(result%j==0 && A[i]%j==0)
{
result=j;
break;
}
}
}
cout<<result;
}

int main()
{
f();
return 0;
}

热心网友 时间:2022-04-24 20:04

华为机试么是吧 西电的?我也参加,这是完全ok的程序,拿走吧

#include<iostream>
using namespace std;

int main()
{
int a=0;
cin>>a;
int b[20];
for(int l=0;l<a;l++)
{
cin>>b[l];
}
for(int i=0;i<a;i++)
for(int j=1;j<a-i;j++)
{
if(b[j]<b[j-1])
{
int temp=b[j];
b[j]=b[j-1];
b[j-1]=temp;
}
}
cout<<b[0];
int h=b[0];
int k=0;
for(;h>=1;h--)
{
for(k=0;k<a;k++)
{
if(b[k]%h!=0)
break;
}
if(k==a)
break;
}
cout<<h;
}追问你刚开始输入a了,题目没有要求呀,这样写行吗

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
右附件包块怎么治疗? 右侧附件区见混合性包块回声、大小约4 .9*4。8cm.包膜完整、内可见不... 网络学术资源网络学术资源的获取途径 请问:正式出版物一定是合法出版物吗? 正式出版发行的期刊有哪些 玉米莲藕排骨汤怎么做才好吃 电脑开机进入不了BOSS, 怎么关闭苹果手机的自动备份功能 钢结构制作与安装的阶段和要点 钢结构设计的基本概念、关键步骤和应用 泡菜中明矾的用法与用量,明矾在泡菜中起到什么用途? 感恩节的资料。。。急!!! 编程输入一个正整数n,寻找小于等于n的数中因子个数最大的数。 输入: PR能做出flash里面那种动画补间的效果吗?形状补间那种,还是说只能用AE才可以做 如何做好基层武装工作? 如何抓好新形势下基层武装工作落实 如何加强和改进基层武装工作规范化建设水平的相关思考 肝硬化引起门静脉高压还有救吗 如何降低门静脉高压 门静脉高压吃什么药好 煮豆浆时煮成豆腐花能吃吗?(没放石膏之类的东西) 豆浆未煮熟能做豆腐吗 我自己煮的豆浆过了三个小时差不多变成豆腐花了,没有酸味 。能吃吗?这样是不是没什么营养了? 煮豆浆时直接变成豆腐花能吃吗?(只放了点冰糖一起煮) 没煮到100度的豆浆做成豆腐花能吃吗 如何鉴别苹果手机的真假 怎样鉴别苹果手机的真假 苹果6怎么分辨真假 input限制最小100最大10000 成年后乳房还能再发育吗? &gt; 煎中草药是开盖好还是盖盖好? 不锈钢锅熬煎可以盖盖子吗? 华为手机的创史人是哪里的 请问:在煎中药的时候,用不用盖锅盖呢?谢谢! 煎中药需不需盖着盖子 排斥所有人是什么心理疾病 那种对社会现象各种不满,满脑子负面情绪是什么心理疾病? 如果感觉讨厌所有人,讨厌这个世界,感觉自己有病怎么办 反感身边所有人是什么原因? 为什么我会对所有人不满 厌恶所有人 觉得很累不想和任何人说话是有病了吗? 我偶尔对社会不满,这是心理疾病吗? 我现在讨厌所有人我是不是有病? 为什么我对身边的人都很不满意,身边的人对我也是这样? 对一个人很不满的原因 瑞士燕麦粥怎么做? 为什么会讨厌所有人 怎样吃瑞士麦脆麦片吃得健康些? 落地请开手机·电视剧在哪个视频下载能看到? 为什么我看身边的所有人都不顺眼