2025-03-13 16:46:35 +08:00

11 KiB
Raw Permalink Blame History

C语言-1

/*
-------------------------------------------------------
【程序填空】
---------------------------------------------------------
打印以下图案:
*****
 *****
  *****
   *****
    *****
*/
#include<stdio.h>
void main() 
{   
	int  i =0 , j =0 , k=0; 

	/**********Program**********/
	for(i=0;i<5;i++){
		for(j=0;j<i;j++){
			printf(" ");
		}
		for(k=0;k<5;k++){
			printf("*");
		}
		printf("\n");
	}

	/**********  End  **********/

	printf("\n");
}

C语言-2

/*-------------------------------------------------------
功能:编写程序,求两个非零整数之和。
-------------------------------------------------------*/
#include"stdio.h"
main()
{
	int x,y,z=0;
	scanf ("%d%d", &x,&y);
/**********Program**********/
	if(x!=0 && y!=0){
		z = x+y;



/**********  End  **********/	
          printf("z=%d\n", z);
	}
	else
		printf("两个数中至少有一个数为零值\n");
}

C语言-3

/*------------------------------------------------------------------------
【程序设计】请编写函数sum,其功能是用While循环语句求1到n之间包括n)能
被3整除的所有整数之和,并将结果返回给主函数。n值由主函数传入
运行程序后若输入10则输出为18
----------------------------------------------------------------------*/
#include "stdio.h"

long sum(int n)
{
/**********Program**********/
	int i, s=0;
	for(i=1;i<=n;i++){
		if(i%3==0){
			s+=i;
		}
	}
		

	return s;
/**********  End  **********/
	
}

void main()
{
	int x;
	long f;
	scanf("%d",&x);
	f=sum(x);
	printf("%ld\n",f);

}

C语言-4

/*-------------------------------------------------------
功能:设计程序打印出如下图案(菱形)

   *
  ***
 *****
*******
 *****
  ***
   * 
-------------------------------------------------------*/
#include <stdio.h>
main()
{
	int i,j,k;
/**********Program**********/
	for(i=-3;i<=3;i++){
		for(j=0;j<(i<0?-i:i);j++){
			printf(" ");
		}
		for(k=0;k<7-j*2;k++){
			printf("*");
		}
		printf("\n");
	}




/**********  End  **********/	
}

C语言-5

/*------------------------------------------------------
题目从键盘输入一个整数n,求2 至 n-1内所有能被n整除的数。
例如输入10    输出 2   5
      输入99    输出 3 9 11 33
--------------------------------------------------------*/
#include "stdio.h"
 int main ( )
{ 
int n,i;
printf("input a number:");
scanf ("%d", &n);
/**********Program**********/
	for(i=2;i<n;i++)
		if(n%i==0)
			

/**********  End  **********/
printf ("%d\n",i);
}

C语言-6

/*-------------------------------------------------------
  【程序填空】  2、有一箱苹果100—200之间如果分成4个苹果一组的若干组则多2个苹果若分成7个苹果一组则多3个苹果  若分成9个苹果一组则多5个苹果编程实现求苹果的个数。  
  --------------------------------------------------------*/   

  # include <stdio.h>  
  main ()  
  {  
  int i;   
  for(i=100;i<200;i++)
/**********Program**********/
	if(i%4==2 && i%7==3 && i%9==5)




/**********  End  **********/   
  printf ("%d",i);  
  } 

C语言-7

/*-------------------------------------------------------
【程序填空】---------------------------------------------------------
功能计算武汉城区出租车收费的程序当里程在3公里以内含3公里时收费12元超过3公里在0和1之间均计1公里的部分每公里收费2元。
备注使用switch来实现
--------------------------------------------------------*/
#include<stdio.h>
main(){    
	int m,n;    
	scanf("%d",&m);    
	
	/**********Program**********/
	n=0;
	switch(m){
		default: n+=(m-3)*2;
		case 1:
		case 2:
		case 3:n+=12;
	}

	/**********  End  **********/

	printf("本次收费为:%d",n);
}

C语言-8

/*-------------------------------------------------------
功能从键盘输入2个整数相加再输入答案如果正确显示"right",否则显示"error"。
--------------------------------------------------------*/
#include "stdio.h"
main( )
{
	int a,b,c;
	printf("please input a and b:\n");
	scanf("%d,%d",&a , &b);
	printf("please input the answer:\n");
	scanf("%d",&c);
/**********Program**********/
	if(a+b==c)




/**********  End  **********/	
               printf("right\n");
	else
		printf("error\n");
}

C语言-9

/*-------------------------------------------------------
功能:功能:输入三角形的三边长,判断能否构成三角形,若能,利用海伦公式计
      算该三角形的面积计算结果保留3位小数。
      l=(a+b+c)/2s=sqrt(l*(l-a)*(l-b)*(l-c))
--------------------------------------------------------*/
#include <stdio.h>
#include <math.h> 
main()
{    
    float a,b,c,s,l; 
        scanf("%f,%f,%f",&a , &b , &c); 
        if(a+b<c||a+c<b||b+c<a) 
                printf("该3个数据不能构成三角形\n");
        else
        { 
/**********Program**********/
		l=(a+b+c)/2;
		s=sqrt(l*(l-a)*(l-b)*(l-c));

/**********  End  **********/                
                printf("该三角形的面积为%.3f\n",s);
        } 
    
}

C语言-10

/*------------------------------------------------------------------------
【程序设计】功能使用for循环输出Fibonacci数列的前15项要求每行输出5项。
      Fibonacci数列1,1,2,3,5,8,13...........
----------------------------------------------------------------------*/
#include <stdio.h>
main()
{
	int fib[15],i;                                
	fib[0]=1;fib[1]=1;
/**********Program**********/
	for(i=2;i<15;i++){
		fib[i]=fib[i-1]+fib[i-2];
	}




/**********  End  **********/
		                                        
	for(i=0;i<15;i++)
	{ 
		printf("%d\t",fib[i] );
		if ( i%5==4 ) printf("\n");                        
	}
}

C语言-11

/*-------------------------------------------------------      
1. 判断101-200之间有多少个素数并输出所有素数。判断素数的方法IsPrime用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。  --------------------------------------------------------*/       
#include <stdio.h>      
#include<math.h>    
int  IsPrime (int n)   
{                
	int i=2;                
	for(i=2;i<=sqrt(n);i++)    
/**********Program**********/
	if(n%i==0){
		return 0;
	}




/**********  End  **********/	               
	return 1;             
}
            
int main( )    
{             
 int   i ;                
 for(i=100;i<=200;i++ )             
 {                       
	 if  ( IsPrime( i) )                
	 {                   
	  printf("% d",i);                
	 }            
}              
return 0;          
}

C语言-12

/*-------------------------------------------------------

功能输出100到1000之间的各位数字之和能被15整除的所有数输出时每10个一行。
输出每个数占5个字符
  159  168  177  186  195  249  258  267  276  285
  294  339  348  357  366  375  384  393  429  438
  447  456  465  474  483  492  519  528  537  546
  555  564  573  582  591  609  618  627  636  645
  654  663  672  681  690  708  717  726  735  744
  753  762  771  780  807  816  825  834  843  852
  861  870  906  915  924  933  942  951  960
-------------------------------------------------------*/
#include<stdio.h>
main()
{
	int m,n,k,i=0;
	for(m=100;m<=1000;m++)
	{
		k=0;
		n=m;
/**********Program**********/
		while(n){
			k+=n%10;
			n/=10;
		}
		if(k%15==0){
			i++;
			printf("%5d", m);

			if(i%10==0){
				printf("\n");
			}
		}



/**********  End  **********/

	}
}

C语言-13

/*-------------------------------------------------------
题目: 打印以下图案:

*********
  *******
    *****
      ***
        *
--------------------------------------------------------*/
#include<stdio.h>
void main() 
{
	int i,j,k;
	for( i=0 ; i<5;  i++ )
	{
          printf("\n");
/**********Program**********/
		  for(j=0;j<i*2;j++){
			printf(" ");
		  }
		  for(k=0;k<9-j;k++){
				printf("*");
		  }




/**********  End  **********/	
	}
   printf("\n");
}

C语言-14

/*-------------------------------------------------------
1. 编写程序,打印以下图案:
*****
 ***
  *
--------------------------------------------------------*/
#include<stdio.h>
void main() 
{
   int i,j,k;
/**********Program**********/
   for(i=0;i<3;i++){
	   for(j=0;j<i;j++){
		   printf(" ");
	   }
	   for(k=0;k<5-j*2;k++){
		   printf("*");
	   }
	   printf("\n");
   }





/**********  End  **********/

   printf("\n");
}

C语言-15

/*-------------------------------------------------------
功能:不用第三个变量,实现两个数的对调操作。
--------------------------------------------------------*/
#include <stdio.h>
main()
{ 
    int a,b;
    scanf("%d%d",&a , &b );
    printf("a=%d,b=%d\n",a,b);
/**********Program**********/
	a = a+b;
	b = a-b;
	a = a-b;




/**********  End  **********/    
   printf("a=%d,b=%d\n", a,b);
}

C语言-16

/*-------------------------------------------------------
题目请将123-321之间偶数累加输出最终结果。
--------------------------------------------------------*/
#include <stdio.h>
int main() 
{
   int i;
   long sum = 0;
   for(i = 123; i <= 321;   i++ ) 
    {
/**********Program**********/
		if(i%2==0){
			sum += i;
		}
/**********  End  **********/      
    }
   printf ("总和为 : %ld.\n",sum);
   return 0;
}

C语言-17

/*-------------------------------------------------------  
题目把123321之间的可以被7整除的数输出。使用for循环  
--------------------------------------------------------*/  
#include <stdio.h>   
void main()   
{       
	int a=0;     
/**********Program**********/
	for(a=123;a<=321;a++){
		if(a%7==0){

              


/**********  End  **********/
	printf("%d\n",a);          
    }      
 } 
}

C语言-18

/*-------------------------------------------------------
功能:依次输入十个整数,找出其平方最大的一个数并打印出来。
--------------------------------------------------------*/
#include <stdio.h>
void main()
{
	int i;
	float x,y,z=0;
	printf("\n请输入10个数");
	for(i=1;i<=10;i++)
	{
/**********Program**********/
		scanf("%f", &x);
		if(x*x > z){
			z = x*x;
			y = x;
		}
/**********  End  **********/		
	}
	printf("平方最大的一个数是:%f\n",y);
}

C语言-19

/*-------------------------------------------------------
功能从键盘输入一位整数i计算其各位数字之和。比如输入整数
      31421则打印结果为11。使用while循环
--------------------------------------------------------*/
#include<stdio.h>
main()
{  
	int i,sum=0,a;
	scanf("%d",&i); 
/**********Program**********/
	while(i){
		sum += i%10;
		i/=10;
	}




/**********  End  **********/	
	printf("%d\n",sum);
}

C语言-20

/*-------------------------------------------------------
功能编写程序使用Switch ),给出年月日,计算出该日是该年的第几天。判断是否为
      闰年的条件是:能被 4 整除但是不能被100整除或者能被四百整除。
--------------------------------------------------------*/
#include"stdio.h"
main()
{ 
	int year,month,day,days=0,i,d;
       printf("请输入年-月-日:");
	scanf("%d-%d-%d",&year,&month,&day);
	for(i=1;i<month;i++)
	{ 
/**********Program**********/
		switch(i){
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10: days+=31;break;
			case 2: days+=(28 + (year%4==0&&year%100!=0 || year%400==0?1:0));break;
			default: days+=30;
		}
/**********  End  **********/
	}
	printf("%d-%d-%d是该年第%d天\n",year,month,day,days + day);
}