1. 程式人生 > 程式設計 >C# 泛型集合的自定義型別排序的實現

C# 泛型集合的自定義型別排序的實現

#include <math.h>
#include <stdio.h>
int main() 
{
    float a, b, c, x1, x2;
    float delta, real, imag;
    printf("Enter a, b, c: ");
    while(scanf("%f%f%f", &a, &b, &c) != EOF) 
{
    if(a == 0)
    printf("not quadratic equation.\n\n");
    else 
{
    delta = b*b - 4*a*c;
    
if(delta >= 0) { x1 = (-b + sqrt(delta)) / (2*a); x2 = (-b - sqrt(delta)) / (2*a); printf("x1 = %.2f, x2 = %.2f\n\n", x1, x2); } else { real = -b/(2*a); imag = sqrt(-delta) / (2*a); printf("x1 = %.2f + %.2fi, x2 = %.2f - %.2fi\n\n", real, imag, real, imag); } } printf(
"Enter a, b, c: "); } return 0; }

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 5
    int main() 
{
    int x, n;
    srand(time(0)); // 以當前系統時間作為隨機種子
    n = 0;
    do 
{
    n++;
    x = rand()%10; // 生成一個0~9之間的隨機整數
    printf("%3d", x);
}
    while(n<N);
    printf(
"\n"); return 0; }

#include <stdio.h>
void main()
{
    int n=0; 
    int i,j;
    for(i = 101 ; i <= 200 ; i++ )
    {
        for(j = 2 ; j < i ; j++)
        {
            if(i % j == 0)//只要除到一個數讓 i 能被整除就跳出該迴圈。
            {
                break;
            }
            else
            {
                if( j == i-1 )//除完最後一個數後還不跳出迴圈,就可以判斷該數為素數。
                {
                    n++;printf("%5d",i);
                    if(n%5==0){printf("\n");}
                }
            }
        
        }
    }
    printf("\n");
    printf("101到200之間一共有%d個素數\n",n);
    return 0;

}

# include<stdio.h>
# include<math.h>
int main()
{
    long x,y,z;
    while(printf("Enter a number:"),scanf("%ld",&x)!=EOF)
    {
        long i=0,z=0;    
        while(x>0)
        {
            y=x%10;
            if(y%2!=0)
            {
            z=z+y*pow(10,i);
            i++;    
            }
            x=x/10;
        }
        printf("new number is:%ld\n",z);
    }
    return 0;
} 

通過取餘將數字一個個取出,將取出的數字再與2取餘判斷是否為奇數

取數的時候按順序取數,直接判斷就保證高位任然在高位,低位任然在低位

#include<stdio.h>
int main()
{
    int i=1;
    int n;
    float s=0,h=1;
    printf("Enter n(1~10):");
    while(scanf("%d",&n)!=EOF)
{
    for(;i<=n;i++)
{
    h=h*i; 
    if(i>=2) h=-1*h;
    s=s+1/h;
}
    printf("n=%d,s=%f\n",n,s);
    printf("Enter n(1~10):");
}
}
 

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
    int a,x,y=1;
    srand(time(0));
    x=rand()%31+1;
    printf("猜猜2020年12月哪一天會是你的luck day\n");
    printf("開始嘍,你有三次機會,猜吧(1~31): ");
    scanf("%d",&a);
    while(y<3)
    {    
        if(a==x)
        {
            printf("你猜的日期是正確的!\n");
            break;
        }
            else if(a>x)
            printf("你猜的日期晚了,luck day悄悄溜到前面啦\n");
            else
            printf("你猜的日期早了,luck day還沒到呢\n"); 
            printf("再猜(1~31):  ");
            scanf("%d",&a);
            y++;
    }
    if (y>=3)
    printf("次數用完了,偷偷告訴你:12月,你的luck day是:%d",x);
    return 0;
} 

通過實驗三發現就演算法而言還有許多的不熟練,沒有能夠一次完成的程式設計,都是需要經理多次修改。有一些程式拿到手後知道怎麼算卻不知道如何用C語言準確的表達出來,總結還是需要多加練習。