一些小程序的練習(二)

交換兩個數組的內容並打印

#include <stdio.h>

#include<stdlib.h>

int main()

{

int arr1[5]={1,2,3,4,5},arr2[5]={6,7,8,9,0},arr3[5]={0};

int i=0;

for(i=0 ; i<sizeof(arr1)/sizeof(arr1[0]) ; i++)

{

arr3[i]=arr1[i];

arr1[i]=arr2[i];

arr2[i]=arr3[i];

}

printf("arr1=");

for(i=0 ; i<sizeof(arr1)/sizeof(arr1[0]) ; i++)

{

printf("%d",arr1[i]);

}

printf("\n");

printf("arr2=");

for(i=0 ; i<sizeof(arr2)/sizeof(arr2[0]) ; i++)

{

printf("%d",arr2[i]);

}

system("pause");

return 0;

}




3個數從大到小排序

#include <stdio.h>

#include<stdlib.h>


int main()

{

int a=0,b=0,c=0,num=0;

printf("請輸入3個數:");

scanf("%d%d%d",&a,&b,&c);

if(a<b)

{

num=a;

a=b;

b=num;

}

if(a<c)

{

num=a;

a=c;

c=num;

}

if(b<c)

{

num=b;

b=c;

c=num;

}

printf("\n從大到小排序爲:%d %d %d\n",a,b,c);

system("pause");

return 0;

}



最大公約數

#include <stdio.h>

#include<stdlib.h>

int main()

{

int m=0,n=0,num;

printf("請輸入2個數:");

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

while(m%n!=0)

{

num=m%n;

m=n;

n=num;

}

printf("2個數的最大公約數爲:%d",n);

system("pause");

return 0;

}




輸出一個數的2進制基數位和偶數位

#include<stdio.h>

#include<stdlib.h>

int main()

{

int num=0;

char arr1[16];

char arr2[16];

int i=0,j=0;

printf("請輸入一個數:");

scanf("%d",&num);

for(i=0 ; i<32 ; i+=2)

{

arr1[j]=((num>>i)&1);

j++;

}

j=0;

for(i=1 ; i<32 ; i+=2)

{

arr2[j]=((num>>i)&1);

j++;

}

printf("\n基數位2進制碼:");

for(i=15 ; i>=0 ; i--)

{

printf("%d",arr1[i]);

}

printf("\n偶數位2進制碼:");

for(i=15 ; i>=0 ; i--)

{

printf("%d",arr2[i]);

}

system("pause");

return 0;

}



一個數的每一位輸出來

#include<stdio.h>

#include<stdlib.h>

int main ()

{

int num;

scanf("%d",&num);

while(num)

{

printf("%d ",num%10);

num/=10;

}

system("pause");

return 0;

}


1到100之間有多少個9   (20個)

#include<stdio.h>

#include<stdlib.h>

int main ()

{

int num=0;

int count=0;

for(num=1; num<100 ; num++)

{

if(num%10==9)

{

count++;

}

if(num/10==9)

{

count++;

}

}

printf("一共有%d個9.",count);

system("pause");

return 0;

}


1到10 的階乘 和

#include<stdio.h>

#include<stdlib.h>

int main ()

{

int i=0;

int ret=1;

int sum=0;

for (i=1 ; i<=10 ; i++)

{

ret=ret*i;

sum=sum+ret;

}

printf("1!+2!+...+10!=%d\n",sum);

system("pause");

return 0;

}



求1/1-1/2+1/3-...-1/100的值

#include<stdio.h>

#include<stdlib.h>

int main ()

{

int i=0;

double j=0.0;

int t=1;

for (i=1 ; i<101 ; i++)

{

j=j+(1.0/i)*t;

t=-t;

}

printf("1/1-1/2+1/3-...-1/100=%lf",j);

system("pause");

return 0;

}



#include<stdio.h>

#include<stdlib.h>

int main ()

{

char a;

    scanf("%c", &a);

    while ((a = getchar()) != EOF)

    {

        if (a >= 'a'&& a <= 'z')

        {

            printf("%c", (a - 32));

        }

        else if (a >= 'A'&& a <= 'Z')

        {

            printf("%c", (a + 32));

        }

        else if (a >= '0'&&a <= '9')

        {

            printf("");

        }

 

    }

system("pause");

return 0;

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章