实验3

//ex1
#include<stdio.h>
#include<math.h>

int main() {
    float a, b, c, x1, x2;
    float delta, real, imag;

    printf("输入 a,b,c:");

    while (scanf_s("%f%f%f", &a, &b, &c) != EOF) {
        if (a == 0)
            printf("方程无解。\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("输入 a,b,c:");
    }
    return 0;
}

//ex2
#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;
        printf("%3d",x);
    }while(n<N);
    
    printf("\n");
    
    return 0;
}

//ex3
#include<stdio.h>
#include<math.h>
int sushu(int);

int sushu(int x){
    int a;
    if(x<2)
    return 0;
    else
    for(a=2;a<=sqrt(x);a++)
        if(x%a==0)
        return 0;
        
    return 1;    
}
int main(){
    
    int N,i;
    i=0;
    for(N=101;N<=200;N++)
    if(sushu(N)){
        printf("%5d",N);
        i++;
    }
    printf("\n");
    printf("101~200之间共有%d个素数。",i);
    return 0;
}

作业做晚了,就用了一下函数。。(函数是真的方便)

//ex4
#include<stdio.h>

int main(){
    long int s;
    int F[10],i,m;
    printf("输入一个数:");
    while(scanf("%ld",&s)!=EOF){
        i=1;
        F[1]=0;
        while(s>0){
        m=s%10;
        if(m==0);
        if(m%2==1){
            F[i++]=m;
        }
        s=s/10;
    }
    if(i>1)
    i--;
    printf("新数是:");
    while(i>=1)
    printf("%d",F[i--]);
    printf("\n");
    printf("输入一个数:");
    }
    return 0;
}

(偷偷用了数组。。)

//ex5
#include<stdio.h>
#include<math.h>
int main(){
    int n,i,m;
    double s;
    printf("输入一个数(0<n<=10):");
    while(scanf("%d",&n)!=EOF){
        s=0;
        m=1;
        for(i=1;i<=n;i++){
            m=m*i;
            s=s+pow(-1,i-1)*1.0/m;
        }
        printf("n=%d,s=%lf",n,s);
        printf("\n");
        printf("输入一个数(0<n<=10):");
    }
    return 0;
}

//ex6
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 3 

int main(){
    int x,n,m;
    srand(time(0));
    x=rand()%32;
    printf("猜猜2020年12月哪一天会是你的lucky day\n你有三次机会");
    for(n=1;n<=N;n++){
        printf("(1~31):");
        scanf("%d",&m);
        if(m<x)
        printf("在后面哦,再来一次。");
        else if(m>x)
        printf("在前面哦,你太急了。");
        else{
        printf("你可真skr小机灵鬼。");
        break;
    }
    }
    printf("\n你个菜鸡,次数没了(不可充值)。\nlucky day是%d",x);
    return 0;
}

 

posted @ 2020-11-19 00:13  完美且天才  阅读(59)  评论(2)    收藏  举报