zoukankan      html  css  js  c++  java
  • 6

    #include <stdio.h>
    void Ws5()
    {
        int aa;
        printf("输入题目序号1-6:
    	1.书上第3章课后题中的5道编程题。
    	2.利用双重循环打印三角形:
    	");
        scanf("%d",&aa);
        switch(aa)
        {
            case 1:
            printf("1.书上第3章课后题中的5道编程题。
    #include<stdio.h>
    	int main()
    	{
    	int a,b,c,n;
    	printf("输入整数:");
    	scanf("%d %d %d",&a,&b,&c);
    	if(a>b)
    	{
    	n=b;
    	b=a;
    	a=n;
    	}
    	if(a>c)
    	{
    	n=c;
    	c=a;
    	a=n;
    	}
    	if(b>c)
    	{
    	n=c;
    	c=b;
    	b=n;
    	}
    	printf("这三个数从小到大分别是:%d %d %d",a,b,c);
    	return 0;
    	}
    	 ");
            break;
            case 2:
            printf("2.#include<stdio.h>
    	int main()
    	{
    	int a,b;
    	printf("该条公路限速:");
    	scanf("%d",&a);
    	printf("该机动车车速:");
    	scanf("%d",&b);
    	if(b-a>0.1*a && b-a<=0.5*a)
    	printf("予该机动车处200元罚款");
    	else if(b-a>0.5*a)
    	printf("予机动车吊销驾驶证处罚");
    	else
    	printf("不予该机动车处罚");      
    	   return 0;
    	}
    	");
            break;
            case 3:
            printf("#include<stdio.h>
    	int main()
    	{
    	int a,b,c;
    	printf("行驶里程(公里):");
    	scanf("%d",&a);
    	printf("等待时间(分钟):");
    	scanf("%d",&b);
    	if(a>3 && a<=13)
    	c=(a-3)*2+10;
    	else if(a>13)
    	c=30+(a-13)*3;
    	else
    	c=10;
    	c=c+b/5*2;
    	printf("应支付车费(元):%d",c);   
    	  return 0;
    	}
    	");
            break;
            case 4:
            printf("#include<stdio.h>
    	int main()
    	{
    	int n;
    	printf("共统计多少学生的成绩:");
    	scanf("%d",&n);
    	int i,a;
    	int b=0,c=0,d=0,e=0,f=0;
    	for(i=1;i<=n;i++)
    	{
    	printf("输入百分制成绩:");
    	scanf("%d",&a);
    	if(a>=90)
    	{
    	printf("该同学五分制成绩为:A
    ");
    	b++;
    	}
    	else if(a<90 && a>=80)
    	{
    	printf("该同学五分制成绩为:B
    ");
    	c++;
    	}
    	else if(a<80 && a>=70)
    	{
    	printf("该同学五分制成绩为:C
    ");
    	d++;
    	}
    	else if(a<70 && a>=60)
    	{
    	printf("该同学五分制成绩为:D
    ");
    	e++;
    	}
    	else
    	{
    	printf("该同学五分制成绩为:E
    ");
    	f++;
    	}
    	}
    	printf("%d个学生的成绩中中共有:
    %d个A级,
    %d个B级,
    %d个C级,
    %d个D级,
    %d个E级
    ",n,b,c,d,e,f); 
    	        return 0;
    	}
    	");
            break;
            case 5:
            printf("#include<stdio.h>/n/t#include<math.h>int main()
    	{/n/tdouble x1,y1,x2,y2,x3,y3,a,b,c,s,h,w,z,area;
    	printf("请输入平面上任意三个点的坐标:");
    	scanf("(%lf,%lf) (%lf,%lf) (%lf,%lf)",&x1,&y1,&x2,&y2,&x3,&y3);
    	if(x1>=x2)
    	w=x1-x2;
    	else
    	w=x2-x1;
    	if(y1>=y2)
    	h=y1-y2;
    	else
    	h=y2-y1;
    	a=sqrt(pow(w,2)+pow(h,2));
    	if(x1>=x3)
    	w=x1-x3;
    	else
    	w=x3-x1;
    	if(y1>=y3)
    	h=y1-y3;
    	else
    	h=y3-y1;
    	b=sqrt(pow(w,2)+pow(h,2));
    	if(x3>=x2)
    	w=x3-x2;
    	else
    	w=x2-x3;
    	if(y3>=y2)
    	h=y3-y2;
    	else
    	h=y2-y3;
    	c=sqrt(pow(w,2)+pow(h,2));
    	if(a+b>c && a+c>b && b+c>a)
    	{
    	z=a+b+c;
    	printf("该三角形周长为:%.2f
    ",z);
    	s=z/2;
    	area=sqrt(s*(s-a)*(s-b)*(s-c));
    	printf("该三角形面积为:%.2f
    ",area);
    	}
    	else
    	printf("Impossible");
    	return 0;
    	}
    	");
            break;
            case 6:
            printf("#include<stdio.h>
    	int main()
    	{
    	int i,j,k;
    	for(j=1;j<=10;j++)
    	{
    	for(k=1;k<j;k++)
    	printf(" ");
    	for(i=1;i<=11-j;i++) 
    	           printf("*");
    	printf("
    ");  
    	  }     
    	return 0;
    	}
    	");
            break;
            default:
            printf("无作业
    ");
            break; 
        }
    }
    
    void Ws4()
    {
        int aa;
        printf("1.猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。
    
    2.从键盘上输入2个正整数,输出这两个数的最大公约数和最小公倍数。
    	");
        scanf("%d",&aa);
        switch(aa)
        {
            case 1:
            printf("#include<stdio.h>
    	#include<stdlib.h>
    	#include<time.h>int main()
    	{
    	srand(time(NULL));
    	while(true)
    	{
    	int min = 0;
    int max = 100;
    	int a = 0 ;
    	int count = 0;//次数
    	int target = rand()%max + 1;//产生随机数
    	while(true)
    	{
    	int guess = 0;
    	printf("请输入%d-%d之间的数
    ",min,max);
    	scanf("%d",&guess); 
    	count++;
    	 if(guess < a)
    	   {
    	printf("负数无效,Game Over
    ");
    	exit(0);
    	}
    	if(guess < min||guess > max)
    	{
    	printf("你粗心了,请看清楚,输入的数为%d - %d
    ",min,max);
    	continue;
    	}
    	else
    	{
    	if(target==guess)
    	{
    	printf("YOU WIN!
    ",count);
    	 printf("共猜了%d次。
    ",count); 
    	  break;
    	}
    	else if(target > guess)
    	{
    	 min = guess;
    	printf("数字大于%d
    ",guess);
    	printf("Too small
    ");
    	}
    	else
    	{
    	max = guess;
    	printf("数字小于%d
    ",guess);
    	printf("Too big
    ");
    	}
    	}
    	}
    	printf("共猜了%d次。
    ",count)
    	;  if(count==1)
    	printf ("Bingo!");
    	if(count<=3)
    	printf("Lucky you!!");
    	if(count>3)
    	printf("Good guess!!!");
    	}
    	return 0;
    	}
    	");
            case 2:
            printf("#include<stdio.h>
    	int main()
    	{
    	int a,b,m,i,o=1;
    	printf("请输入:");
    	scanf("%d %d",&a,&b);
    	m=a;
    	if(a<b)
    	{
    	a=b;
    	b=m;
    	}
    	for(i=2;i<=b;i++)
    	{
    	if(a%i==0&&b%i==0)
    	o=i;
    	}
    	printf("最大公约数:%d
    ",o);
    	m=(a*b)/o;
    	printf("最小公倍数:%d
    ",m);
    	return 0;
    	}
    	"); 
            default:
            printf("无作业
    ");
            break; 
        }
    }
    
    void Ws3()
    {
        int aa;
        printf("#include<stdio.h>
    	int main()//十行三角形
    	{
    		printf("*
    ");
    		printf("**
    ");
    		printf("***
    ");
    		printf("****
    ");
    		printf("*****
    ");
    		printf("******
    ");
    		print("*******\n");
    		printf("********
    ");
    		printf("*********
    ");
    		printf("**********
    ");
    		return 0 ;
    	}
    	");
        scanf("%d",&aa);
        switch(aa)
        {
            case 1:
            printf("#include<stdio.h>
    	int main()//十行三角形
    	{
    		printf("*\n");
    		printf("**\n");
    		printf("***\n");
    		printf("****\n");
    		printf("*****\n");
    		printf("******\n");
    		printf("*******\n");
    		printf("********\n");
    		printf("*********\n");
    		printf("**********\n");
    		return 0 ;
    	}
    	");
            break;
            case 2:
            printf("...");
            break;
            default:
            printf("无作业
    ");
            break; 
        }
    }
    
    void Ws2()
    {
        int aa;
        printf("请输入题目序号1-9:
    	1.C语言基本数据类型及其占用的内存空间大小分别是:
    	2.算数运算符有:+-*/% ++ --
    	3.关系运算符有:> <    ==  >=  <=  !=   <>
    	4.逻辑运算符的优先顺序是:! &&  ||
    	5.赋值运算符有:= +=  -=  *=  /=  %=
    	下面代码的输出结果是什么?请解释原因。
    	6.
    	char c=132;
    	 printf(“%d”,c);
    	7.
    	int a=-7;
    	 printf(“%d”,a>>1);
    	8.
    	int a=7;
    	int b=8;
    	printf(“%d”,a&b);
    	9.
    	int a=7;
    	int b=8;
    	printf(“%d”,a^b);");
        scanf("%d",&aa);
        switch(aa)
        {
            case 1:
            printf("1.C语言基本数据类型及其占用的内存空间大小分别是:int:4字节,short[int]:2字节,long[int]:4字节,unsigned[int]:4字节,unsigned short[int]:2字节,unsigned long[int]:4字节,char:1字节,float:4字节,double:8字节。");
            break;
            case 2:
            printf("2.算数运算符有:+,?,*,/,%,++,??。");
            break;
            case 3:
            printf("3.关系运算符有:>,<,==,>=,<=,!=,<>。");
            break;
            case 4:
            printf("4.逻辑运算符的有限顺序是:!,&&,||。");
            break;
            case 5:
            printf("5.赋值运算符有:=,+=,-=,*=,/=,%=。");
            break;
            case 6:
            printf("6.char c=132;printf("%d",c);解:char的范围为-127~128,132超出范围,132变为二进制是10000100,因为在计算机中0为正1为负所以该数为负数,而负数需要取反加一,所以该数为-01111011+1=-01111100,输出结果为-124。");
            break;
            case 7:
            printf("7.int a=7;printf("%d",a?1);
    解:7:00000000 00000000 00000000 00000111
    -7:11111111 11111111 11111111 11111001(取反加一)
    a>>1:111111111 11111111 11111111 1111100(右移一位)
    -00000000 00000000 00000000 00000100(取反进一)
    所以向右移1位为-4.");
            break;
            case 8:
            printf("8.int a=7;int a=8;printf("%d",a&b);
    解:a=7:00000000 00000000 00000000 00000111
    b=8:00000000 00000000 00000000 00001000
    因为没有相同为1的项
    所以输出值为0.");
            break;
            case 9:
            printf("9.int a=7;int b=8;printf("%d",a^b);
    解:a=7:00000000 00000000 00000000 00000111
    b=8:00000000 00000000 00000000 00001000
    00000000 00000000 00000000 00001111
    所以输出值为15.
    ");
            break;
            default:
            printf("无作业
    ");
            break; 
        }
    }
    
    void Ws1()
    {
        int aa;
        printf("请输入题目序号(1-3):
    实验1-1:求最大值
    要求由键盘输入两个整数a和b,程序输出其中较大的数。
    
    实验1-2:求m到n之和
    要求程序计算并输出m~n(m< n)之间所有整数的和,其中m和n由用户从键盘上输入。
    
    实验1-3:求平均数
    从键盘上依次读入5个整数,计算并输出他们的平均数。
    
    ");
        scanf("%d",&aa);
        switch(aa)
        {
            case 1:
            printf("1-1:求最大值要求由键盘输入两个整数a和b,程序输出其中较大的数
    #include<stdio.h>
    	int main ()
    	{
    	int a;
    	int b;
    	scanf("%d %d",&a,&b);
    	if(a>b)
    	printf("%d",a);
    	else
    	printf("%d",b);
    	return 0;
    	}
    	");    
            case 2:
            printf("1-2 求m到n的和
    #include<stdio.h>
    int main()//求m-n的和
    {
    int m;
    int n;
    scanf("%d,%d",&m,&n);
    int i=m;
    int sum=0;
    for(i=m;i<=n;i++)
    sum=sum+i;
    printf("%d",sum);
    return 0;
    }
    ");
            case 3:
            printf("1-3 求平均数
    	#include<stdio.h>
    	int main()//求平均数
    	{
    	int sum=0;
    	int a;
    	int b;
    	int c;
    	int d;
    	int e;
    	scanf("%d %d %d %d %d",&a,&b,&c,&d,&e);
    	sum=a+b+c+d+e;
    	printf("%d",sum/5);
    	return 0 ;
    	}
    	");
            default:
            printf("无作业
    ");
            break;  
        }
    }
    int main() 
    {
        int score,a;
        printf("请选择作业次数(1-5):
    ");
        scanf("%d",&score);
        switch(score)
        {   
            case 5:
                Ws5();
              break;
            case 4:
                Ws4();
              break;
              case 3:
                Ws3();
              break;
              case 2:
                Ws2();
              break;
              case 1:
                Ws1();
              break;
              default:
                printf("无作业
    ");
                break;    
        }
        return 0;
    }
  • 相关阅读:
    新浪微盘又是一个给力的产品啊,
    InfoQ: 百度数据库架构演变与设计
    列式数据库——Sybase IQ
    MapR初体验 淘宝共享数据平台 tbdata.org
    IBM正式发布新一代zEnterprise大型机(组图) 大型机,IBM,BladeCenter,美国,纽约 TechWeb News
    1TB is equal to the number of how many GB? 1PB equal to is equal to the number of TB? 1EB PB? | PCfault.com
    Cassandra vs HBase | WhyNosql
    The Hadoop Community Effect
    雅虎剥离开源软件平台 Hadoop ,与风投新建 Hortonworks 公司 品味雅虎
    RowOriented Database 、ColumnOriented Database 、KeyValue Store Database 、DocumentOriented Database
  • 原文地址:https://www.cnblogs.com/linhao8/p/6027326.html
Copyright © 2011-2022 走看看