zoukankan      html  css  js  c++  java
  • C语言代码

    //计算1/1+1/ (1+2) +1/ (1+2+3) +…+1/(1+2+…n)的值,要求小数点后保留6位,n从键盘输入
    #include<stdio.h>
    main(){
        double result=0;
        double num=0;
        int n;
        int i;
        printf("请输入正整数n:");
        scanf("%d",&n);
        for(i=1;i<=n;i++){
            num+=i;
            result+=(1/num);
        }
        printf("%10.6lf",result);
    }
    /*将三个学生、四门课程……,内容为三个学生的四门课成绩,求出每个学生四门课的平均分并输出,再求出每门课三个学生的平均分并输出!*/
    #include <stdio.h> /** *created by simuhunluo */ int *input(); int *compute(int m[4][5]); void output(int m[4][5]); main() { int *a; int i,j; int m[4][5]; a=input();//输入值,此时只有3*4 for(i=0;i<3;i++)//读取指针中的数据并存进二维数组 { for(j=0;j<4;j++){ m[i][j]=*a; a++; } } a=compute(m);//计算了总分以及单科平均此时有4*5 for(i=0;i<4;i++)//读取指针中的数据并存进二维数组 { for(j=0;j<5;j++){ m[i][j]=*a; a++; } } output(m);//输出结果 } int *input()//输入函数,返回数组首部地址 { //{78 , 78 ,78,78,98,98,98,98,87 ,87, 87 ,87 }测试数据 int m[12]; int i,j; printf("请使用空格或者回车来分隔 "); for(i=0;i<3;i++) { printf("请输入第%d个学生的四门课程的成绩: ",i+1); for(j=0;j<4;j++){ scanf("%d",&m[4*i+j]); } } return m; } int *compute(int m[4][5]){ int *a; int i,j; int temp[20]; for(i=0;i<4;i++) { m[i][4]=0; if(i==3) { for(j=0;j<4;j++) {//单科均值 m[3][j]=0; for(i=0;i<3;i++) { m[3][j]+=m[i][j]; } m[3][j]/=3; } break; } for(j=0;j<5;j++){ m[i][4]+=m[i][j]; } } for(i=0;i<4;i++){ for(j=0;j<5;j++){ temp[5*i+j]=m[i][j]; } } a=temp; return a; } void output(int m[4][5]){ int i,j; printf(" 课程一 课程二 课程三 课程四 总分 "); for(i=0;i<4;i++) { if(i<3){ printf("学生%d ",i+1); }else{ printf("单科平均分"); } for(j=0;j<5;j++){ printf(" %d",m[i][j]); }printf(" "); } }
    /*在具有10个元素的一维整形数组中,将数组的元素逆序。要求:初始化一维数组,输出原始数组以及逆序后的数组*/
    #include<stdio.h>
    main(){
        int a[10]={3 ,4 ,1,34,45,23,16,89,5,99};
        int b[10];//逆序后的数组
        int i;
        for(i=0;i<10;i++){//输出原始数组
            printf("%d,",a[i]);
        }
        for(i=0;i<10;i++){//逆序过程
            b[i]=a[9-i];
        }
        printf("
    ");
        for(i=0;i<10;i++){//输出逆序后的数组
            printf("%d,",b[i]);
        }
    }
     
    /*从键盘输入三角形的三边长,判断这个三角形是否是直角三角形*/
    #include<stdio.h>
    main(){
        int a,b,c;
        printf("请输入三角形的三边长:
    ");
        scanf("%d%d%d",&a,&b,&c);
        a=a*a;
        b=b*b;
        c=c*c;
        if(a+b==c||a+c==b||b+c==a){
            printf("是直角三角形
    ");
        }else{
            printf("不是直角三角形
    ");
        }
    }
    #include<stdio.h>
    int isPrime(int temp);
    main(){
        //1.验证哥德巴赫猜想:输入一个偶数,输出满足哥德巴赫猜想的解
        //            任一不小于6的偶数都可写成两个质数之和
        int demo=0,a=3,b;
        printf("请输入一个不小于6的偶数:");
        while(demo<6){
            scanf_s("%d",&demo);
        }
        while(a<(demo/2)){
            b=demo-a;
            if(isPrime(b)){
                printf("%d = %d + %d", demo, a, b);
                break;
            }
            a++;
        }
    }
    //函数判断是否是素数,是则返回1,否返回0
    int isPrime(int temp){
        int i;
        i=2;
        while(i<temp)
        {
            if(temp%i==0)
                break;
            i++;
        }
        if(i==temp)
            return 1;
        else
            return 0;
    }
    #include<stdio.h>
    //2.输出100-999之间的孪生素数
    int isPrime(int temp);
    main(){
        int n,m;
        for(n=101;n<=999;n=n+2){
            m=n+2;
            if(isPrime(n)&&isPrime(m)){
                printf("孪生素数:%d和%d
    ",n,m);
            }
        }
    }
    int isPrime(int temp){
        int i;
        i=2;
        while(i<temp)
        {
            if(temp%i==0)
                break;
            i++;
        }
        if(i==temp)
            return 1;
        else
            return 0;
    }
    //编写函数clear (char *t)将字符串t中的全部英文字母删除,要求在主函数中定义数组存储字符串信息,调用函数实现链接后,输出结果。
    #include<stdio.h>
    #include "stdlib.h"
    void clear(char *t){
        int i=0;
        char *temp;
        temp=(char *)malloc(sizeof(char));
        while(*t != '')
        {
            if(!(*t>='a' && *t<='z' ||*t>='A' && *t<='Z'))  // 如果不是字母字符,则存放于temp字符串中
                {
                   *(temp+i) = *t;
                   i++;
                }
            t++;
        }
        printf("%s",temp);
    }
    main(){
        char *str;
        str="s13fd897h";
        clear(str);
    }
  • 相关阅读:
    changing a pointer rather than erasing memory cells
    验证码识别 edge enhancement 轮廓增强 region finding 区域查找
    Manipulating Data Structures
    passing parameters by value is inefficient when the parameters represent large blocks of data
    Aliasing 走样
    Artificial Intelligence Research Methodologies 人工智能研究方法
    Thread safety
    include pointers as a primitive data type
    flat file
    functional cohesion
  • 原文地址:https://www.cnblogs.com/simuhunluo/p/6808484.html
Copyright © 2011-2022 走看看