C语言关于字符串转化成字符串数组 如“123,423,234,546”转成 “123”,“456”,”546“

Python057

C语言关于字符串转化成字符串数组 如“123,423,234,546”转成 “123”,“456”,”546“,第1张

char str1[]="123,423,234,546"

char str2[10][5]

sscanf(str1,"%s,%s,%s,%s",str2[0],str2[1],str2[2],str2[3])

int main()

{

    int arr[5] = {546, 979, 4171, 67, 4}

    int buf = 0 /* 一般我编程习惯初始化,其实不初始化也没关系 */

    int i = 0, j = 0

    for (i = 0 i < 5 i ++) /* 从第 0 个数字到第 4 个数字循环 */

    {

        for (j = i + 1 j < 5 j ++) /* 从第 i + 1 个数字到第 4 个数字循环(之所以从第 i + 1 个开始,是为了避免重复比较) */

        {

            if (arr[i] > arr[j])

            {

                buf = arr[i]

                arr[i] = arr[j]

                arr[j] = buf /* 交换两个变量 */

            }

        }

    }

    printf("Result:\n")

    for (i = 0 i < 5 i ++)

        printf("%d\n", arr[i])

    system("pause")

    return 0

}

这个代码可能不是替换法(因为我也不知道什么是替换法),但这是我自己想出来的代码,运行结果如下:

#include<stdio.h>

void main()

{

int a,b,c,i

a=390

b=455

c=546

for(i=1i<390i++)

if(a%i==0)

{ if(b%i==0)

{

if(c%i==0)

{

printf("公约数=%d\t",i)

}

}

}

}

以上是我用C语言写了求此题的小程序

公约数为:1和13

最大公约数为13

根据定义,所有自然数都能被“1”整除,即“1”是最小公约数。但为什么不谈最小公约数呢?因为“1”作为最小公约数在数学上没有实用,如出2,3,4,5,6等自然数可应用于分数约分中,把分数约为最简式,而“1”就不起任何作用。