考点导航
  • /*-------------------------------------------------------
    编写函数fun,将所有大于1小于形参m的非素数存入数组a中,个数通过指针变量k返回。
    例如:若输入17,则应输出4 6 8 9 10 12 14 15 16。
    -------------------------------------------------------*/
    #include <stdio.h>
    void fun(int m,int* k,int a[])
    {
    int i,j,n=0;
    for (i=2;i<m;i++)/*找出大于1小于整数m的非素数*/
    {
    /**********Program**********/



    /********** End **********/
    }
    *k=n; /*返回非素数的个数*/
    }
    void main()
    {
    int m,n,b[100];
    scanf("%d",&n);
    fun(n,&m,b);
    printf("大于1小于%d的非素数有%d个\n",n,m);
    for (n=0; n<m; n++)
    printf("%4d",b[n]);
    }
  • /*-------------------------------------------------------
    编写函数fun,返回区间[n1,n2]之间素数的个数。
    例如:[0,8]间素数个数为4。
    -------------------------------------------------------*/
    #include <stdio.h>
    #include <math.h>
    /**********Program**********/



    /********** End **********/
    int main()
    {
    int count;
    count=fun(0,20);
    printf("素数个数是%d\n",count);
    return 0;
    }
  • /*-------------------------------------------------------
    编写函数fun,编程判断形参n(n>=2)是否素数。(要求使用函数sqrt)
    -------------------------------------------------------*/
    #include <stdio.h>
    #include <math.h>
    int fun(int n);
    void main()
    {
    int m;
    scanf("%d",&m);
    if (fun(m))
    printf("%d是素数\n",m);
    else
    printf("%d不是素数\n",m);

    }
    /**********Program**********/



    /********** End **********/
  • /*-------------------------------------------------------
    编程:输出前100个素数,并计算它们的平均值。(使用函数调用)
    要求:输出时每个数占5个字符宽度,5个一行。
    -------------------------------------------------------*/
    #include <stdio.h>
    int fun(int n){//判断n是否是素数
    int i;
    for (i=2;i<n;i++)
    if (n%i==0) return 0;
    return 1;
    }
    int main()
    {
    int i=2,t=0;
    float sum=0;
    while (t<100)
    {
    /**********Program**********/



    /********** End **********/
    }
    printf("平均值为%.2f\n",sum/100);
    return 0;
    }
  • /*-------------------------------------------------------
    编程:找出200到300间的所有素数。
    输出时每个数占5个字符宽度,5个一行。要求在奇数中找素数。
    -------------------------------------------------------*/
    #include <stdio.h>
    #include <math.h>
    void main()
    {
    int i,j,k,t;
    k=0;//k用于记录素数个数
    for (i=201;i<300;i+=2)
    {
    t=sqrt((float)i);
    /**********Program**********/



    /********** End **********/
    }
    }
  • /*-------------------------------------------------------
    编程:由键盘输入一个正整数n,判断其是否是素数。(使用for)
    -------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int n,i;
    scanf("%d",&n);
    /**********Program**********/



    /********** End **********/
    if (i==n)
    printf("%d是素数\n",n);
    else
    printf("%d不是素数\n",n);
    }
  • /*-------------------------------------------------------
    编程:由键盘输入一个正整数n(n>=2),判断其是否是素数。(使用for)
    -------------------------------------------------------*/
    #include <stdio.h>
    #include <math.h>
    void main()
    {
    int n,i,k;
    scanf("%d",&n);
    k=sqrt((float)n);
    /**********Program**********/



    /********** End **********/
    if (i>k)
    printf("%d是素数\n",n);
    else
    printf("%d不是素数\n",n);
    }
  • /*----------------------------------------------------------------------
    编写函数fun,计算两个正整数的最大公约数。(使用while)
    -------------------------------------------------------*/
    #include <stdio.h>
    int fun(int a,int b);
    void main()
    {
    int m,n;
    scanf("%d%d",&m,&n);
    printf("%d和%d的最大公约数是:%d\n",m,n,fun(m,n));
    }
    /**********Program**********/



    /********** End **********/
  • /*----------------------------------------------------------------------
    编程:输出从公元2020年至2100年所有闰年的年号,每输出5个年号换一行。
    ----------------------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int year,count;
    count=0;
    for (year=2020;year<=2100;year++)
    {
    if (year%4==0&&year%100!=0||year%400==0)
    {
    printf("%-6d",year);
    /**********Program**********/



    /********** End **********/
    }
    }
    }
  • /*-------------------------------------------------------
    编程:给出年月日,计算出该日是该年的第几天。(注:使用Switch)
    -------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int year,month,day,d,days=0;
    scanf("%d-%d-%d",&year,&month,&day);
    for (int i=1;i<month;i++)
    {
    /**********Program**********/



    /********** End **********/
    }
    printf("%d-%d-%d是该年第%d天\n",year,month,day,days+day);
    }
  • /*-------------------------------------------------------
    编程:输入年月日,输出该月所对应的天数。(注:使用Switch)
    -------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int year,month,day,days;
    scanf("%d-%d-%d",&year,&month,&day);
    /**********Program**********/



    /********** End **********/
    printf("%d年%d月有%d天\n",year,month,days);
    }
  • /*----------------------------------------------------------------------
    编程:输入一个年号,判断该年2月的天数。
    提示:闰年的2月有29天,平年的2月有28天。
    例如:输入:2000
    输出:2000年的2月有29天
    输入:2023
    输出:2023年的2月有28天
    ----------------------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int year;
    scanf("%d",&year);
    /**********Program**********/



    /********** End **********/
    }
  • /*----------------------------------------------------------------------
    编写函数fun,判断某年是否为闰年。
    闰年的条件是:(1)能被4整除但不能被100整除。
    (2)能被400整除。
    符合(1)(2)任何一个条件就是闰年。
    ----------------------------------------------------------------------*/
    #include <stdio.h>
    int fun(int year)
    {
    int result;
    /**********Program**********/



    /********** End **********/
    return result;
    }

    void main()
    {
    int year;
    scanf("%d",&year);
    if (fun(year)==1)
    printf("%d是闰年",year);
    else
    printf("%d是平年",year);

    }
  • /*----------------------------------------------------------------------
    编写函数fun,求出整型形参x,y,z中的最大值,并将返回结果。
    举例:
    输入:15 26 88
    输出:88
    ----------------------------------------------------------------------*/
    #include <stdio.h>
    /**********Program**********/



    /********** End **********/
    void main()
    {
    int a,b,c,d;
    scanf("%d%d%d",&a,&b,&c);
    d=fun(a,b,c);
    printf("%d\n",d);
    }
  • /*-------------------------------------------------------
    编程:求s=1×2×3×……×n(n由键盘输入,使用for循环)
    -------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int i,n,t=1;
    scanf("%d",&n);
    /**********Program**********/


    /********** End **********/
    printf("1*2*...*%d=%d\n",n,t);
    }
  • /*-------------------------------------------------------
    编程:输入6个整数并求其平均值,输出每个数与平均值差的绝対值。
    要求:输出格式保留2位小数,每输出一个数后换行。
    ---------------------------------------------------------------*/
    #include<stdio.h>
    #include<math.h>
    void main()
    {
    int i,a[6];
    float s=0;
    for (i=0;i<6;i++)
    {
    scanf("%d",&a[i]);
    s+=a[i];
    }
    /**********Program**********/



    /********** End **********/;
    }
  • /*-------------------------------------------------------
    编程:从键盘输入5个整数,输出其最大值、最小值、平均值。(注:使用for循环)
    -------------------------------------------------------*/
    #include <stdio.h>
    void main()
    {
    int n,s,max,min,i;
    double avg;
    scanf("%d",&n);
    s=max=min=n;
    for (i=2;i<=5;i++)
    {
    scanf("%d",&n);
    /**********Program**********/



    /********** End **********/
    }
    avg=s/5.0;
    printf("max=%d,min=%d,avg=%f\n",max,min,avg);

    }
  • /*------------------------------------------------------------------------
    编程:在区间[0,1000]找整数,若该数加上100或268,则变成完全平方数。
    要求:每找出一个数则输出,输出格式为"%d\n"。
    ------------------------------------------------------------------------*/
    #include <stdio.h>
    #include <math.h>
    void main()
    {
    int i,x,y;
    for (i=0;i<=1000;i++)
    {
    /**********Program**********/



    /********** End **********/
    }
    }
  • /*----------------------------------------------------------------------
    编程:从键盘输入一个三位整数(100~999之间),按要求输出。
    要求:
    1、小于这个输入的三位整数;
    2、此数的个位数与十位数之和除以5所得的余数等于其百位数;
    举例:输入158,输出为:101,106,110,115,124,129,133,138,142,147,151,156,
    ---------------------------------------------------------*/
    #include "stdio.h"
    void fun(int n)
    {
    /*g代表个位,s代表十位,b代表百位*/
    int g,s,b;
    int i;
    /**********Program**********/



    /********** End **********/
    }
    void main()
    {
    int x,i;
    scanf("%d",&x);
    fun(x);
    }
  • /*----------------------------------------------------------------------
    编写函数:分别计算两数的加减乘除。
    ----------------------------------------------------------------------*/
    #include <stdio.h>
    /**********Program**********/



    /********** End **********/
    void main()
    {
    float a,b,c,d,e,f;
    scanf("%f%f",&a,&b);
    c=add(a,b); /*调用add函数计算两数的和*/
    d=sub(a,b); /*调用sub函数计算两数的差*/
    e=mul(a,b); /*调用mul函数计算两数的积*/
    f=div(a,b); /*调用div函数计算两数的商*/
    printf("%f+%f=%f\n",a,b,c);
    printf("%f-%f=%f\n",a,b,d);
    printf("%f*%f=%f\n",a,b,e);
    printf("%f/%f=%f\n",a,b,f);
    }