实验三

任务一

#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; 
} 

任务二

#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;
} 

任务三

#include <stdio.h>
#include <math.h> 
int main(){
       int n,m;
       int k;
       k=0;
       int x;
       x=0;
       for(n=101;n<=200;n++){
	   
       	    for(m=2;m<=sqrt(n);m++)
       	    	if(n%m==0)break;
       	    	if(m>sqrt(n)){
       	            printf("%5d",n);
       	            x++;
       	            k++;
				    if(k%5==0)
				    printf("\n");
				}		  		   
	   }
	printf("\n");
	printf("101`200间共有%d个素数\n",x);		   
        
return 0;
} 

任务四

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

先从右开始提取第一位数,并判断是否为奇数,如果是则赋值给t,用s=s/10来提取下一位数,并接着判断,接下来的循环依靠pow(10,n)实现所提取到的数的从右到左的依次排序。

任务五

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

任务六

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
	int x,y;
	int k;
	k=0;
	printf("猜猜2020年12月哪一天会是你的luck day\n开始喽,你有三次机会,猜吧(1~31):");
    srand(time(NULL));
    x=rand()%(31)+1;
while(k<=2){
scanf("%d",&y);
if(y==x){
    printf("luck day\n");
	break;
	}
   else {
        if(y<x){
        printf("你猜的日期早了,luck day还没到呢\n");
        printf("再猜(1~31)");
        k++;
	    }
        else if(y>x){
                printf("你猜的日期晚了,luck day悄悄溜到前面啦\n");
                printf("再猜(1~31)");
                k++;
	        }  
   }
if(k==3)
printf("次数用完啦,偷偷告诉你:12月,你的lack day是%d号",x);
}
return 0;
}

 

posted @ 2020-11-16 17:50  ignored  阅读(66)  评论(0)    收藏  举报