1. 程式人生 > 實用技巧 >colly爬蟲 go

colly爬蟲 go

#include<stdio.h>
#include<math.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; }

//生成n個0~9之間的隨機整數 
#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>
#include<math.h>
#include<stdlib.h>
int main(){
    int x,y,z=0;
    for(y=101;y<=200;y++){
        for(x=2;x<=sqrt(y);x++){
            if(y%x==0)                
                continue;
            }            
            printf(" %d ",y);
            z=z+1;
            }
            
    printf("\n101~200之間共有%d個素數",z);        
    return 0;
}

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int main(){
    int n,m,t=0;
    int d,l=0;
    printf("Enter a number: ");
    scanf("%d",&n);
    if(n<0){
        printf("輸入錯誤\n");
        exit(0); 
    } 
    while(n!=0){
        m=n%10;
        n=n/10;
        if(m%2!=0){
            t=t*10+m;
            
        }        
    }
    while(t!=0){
        d=t%10;
        t=t/10;
        l=l*10+d;
    }
    printf("new number is:%d\n",l);
    
    return 0;
    
}

思路:先分離出數字判斷奇偶,再將位置倒過來,最後再次分離數字並將位置倒回去。

#include<stdio.h>
#include<math.h>
int main(){
    int n,t,k=0,z;
    double s=1.0,m;
    printf("Enter n(1~10):");
    scanf("%d",&n);
    for(t=2;t<=n;t++){
        m=1.0;
        for(z=1;z<=t;z++)
            m*=z;
        k=++k;
        s=s+pow(-1,k)*1/m;
    }
    printf("n = %d,s = %lf",n,s);
    return 0;
}

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

總結:瞭解了for的用法和生成偽隨機數字的方法,分離數字的方法和將數字倒位的方法,算階乘的方法。

問題:實驗5仍可優化,exit(0)的用法不清楚,實驗六必須輸入四次才能得到答案。

for()中一定要有三個分號,代表有三個語句,第一個為賦值,第二個為關係,第三個為為賦值,都可省略,但分號不可省略,for(i=1,i<=3,i++)需執行三次且第一次為1。

算階乘