第五章作业十题

阅读程序题20
文字描述:

1.定义两个整数变量,分别为n,i;

2.分别给n和i赋值,n=0,i=0;

3.如果i<3为真,则执行4,否则结束循环;

4.若n++==0||n++==1||n++==2||n++==3为真输出“%2d”,n++,执行5,为假执行5;

5.i++,返回3;

流程图:


代码:#include<stdio.h>
int main()
{
    int n = 0, i;
    for (i = 0; i < 3; i++)
        switch (n++) {
        case 0:
        case 1:
        case 2:
        case 3:
            printf("%2d", n++);
        }
    return 0;
}

 

运行结果:

完善程序题5 

 文字描述:

1.定义六个整数变量,分别为n,i,k,j,p,sum;

2.给n赋值,n=2;

3.如果n<=10为真,则执行4,否则循环结束;

4.计算k=n*n*n;

5.给i赋值,i=1;

6.如果i<k/2为真执行7,否则执行16;

7.给j和sum赋值,j=i,sum=0;

8.如果sum<k为真,则执行9,否则执行10;

9.计算sum+=j;j+=2;返回8

10如果sum==k为真,则输出n,n,n,sum;为假执行18

11.给p赋值,p=i;

12.如果p<j-2为真,则输出p,执行13,否则执行14;

13.计算p+=2;返回12

14.输出p;

15.计算j+=2;返回8;

16.如果i>=k/2为真,则执行17,否则执行19;

17.输出:\n error,执行19

18.计算i+=2,返回6;

19.计算n=n+1,返回3;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    long n, i, k, j, sum, p;
    for (n = 2; n <= 10; n++) {
        k = n * n * n;
        for (i = 1; i < k / 2; i += 2) {
            for (j = i, sum = 0; sum < k; j += 2) {
                sum += j;
            }
            if (sum == k) {
                printf("\n%ld*%ld*%ld=%ld=", n, n, n, sum);
                for (p = i; p < j - 2; p += 2) {
                    printf("%ld+", p);
                }
                printf("%ld", p);
                break;
            }
        }
        if (i <= k / 2) {
            printf("\n error!");
        }
    }
    return 0;
}
 

运行结果:

 完善程序题6

 文字描述:

1.定义五个长整型常量,分别为m,n,k,s,flag;

2.给flag赋值,flag=0;

3.从键盘上获取一个数存入k;

4.给k赋值,k=n;

5.给m赋值,m=n;

6.计算s=n*(n-m)-m*m;

7.如果s*s==1为真,则执行8,否则执行9;

8.给flag赋值,flag=1;

9.计算m--;

10.如果m>0&&!flag为真,则返回6,否则执行11;

11.如果m==0为真,则执行n--;

12.如果n>0&&!flag为真,则返回5,否则执行13;

13.输出m,n;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    long m, n, k, s, flag = 0;
    printf("input k:");
    scanf_s("%ld", & k);
    n = k;
    do {
        m = n;
        do {
            s = n * (n - m) - m * m;
            if (s * s == 1) {
                flag = 1;
            }
            else {
                m--;
            }
        } while (m > 0 && !flag);
        if (m == 0) {
            n--;
        }
    } while (n > 0 && !flag);
    printf("m=%ld,n=%ld", m, n);
    return 0;
}
 

运行结果:

 完善程序题8

 文字描述:

1. 定义三个整数变量和一个长整型变量,分别为i,j,line,n;

2.从键盘上获取一个数存入n;

3.如果n<=1,则执行4,否则执行5;

4.重新输入一个数存入n;

5.给i赋值,i=2;

6.如果i<=n为真,则执行7,否则循环结束;

7.给j赋值,j=2;

8.如果j<i为真,则执行9,否则执行11;

9.如果i%j==0为真,则执行10;

10.计算j++,返回8;

11.如果j==i&&i%10!=9为真,则执行12,否则执行15;

12.输出i,line++;

13.如果line==10为真,则执行14,否则执行15;

14.输出换行,line=0;

15.计算i++,返回6;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    int i, j, line = 0; long int n;
    printf("Please enter n:");
    scanf_s("%ld", &n);
    while (n <= -1)
    {
        printf("Enter error,enter again.");
        scanf_s("%ld", &n);
    }
    for (i = 2; i <= n; i++)
    {
        for (j = 2; j < i; j++)
            if (i % j == 0)break;
        if (j == i && i % 10 != 9)
        {
            printf("%d\t", i);
            line++;
            if (line == 10)
            {
                printf("\n"); line = 0;
            }
        }
    }
    return 0;
}

运行结果:

完善程序题9 

 文字描述:

1.定义三个整数变量和两个长整型变量,分别为i,j,n,temp,sum;

2.给sum赋值,sum=0;

3.从键盘上获取一个数存入n;

4.如果n<1||n>10为真,则执行5,否则执行6;

5.重新从键盘上获取一个数存入n;

6.i=0;

7.如果i<n为真,则执行8,否则执行15;

8.temp=0;

9.j=0;

10.如果j<=i为真,则执行11,否则执行13;

11.计算temp+=(long int)pow(10,j)*(i+1);

12.j++,返回10;

13.计算sum+=temp;

14.i++,返回7;

15.输出sum;
 

流程图:

 

代码:

#include<stdio.h>
#include<math.h>
int main()
{
    int i, j, n;
    long temp, sum = 0;
    printf("Plase input terms numbers.");
    scanf_s("%d", &n);
    while (n < 1 || n>10) {
        printf("Enter error,enter again.");
        scanf_s("%d", &n);
    }
    for (i = 0; i < n; i++) {
        temp = 0;
    }
    for (j = 0; j <= i; j++) {
        temp += (long int)pow(10, j) * (i + 1);
        sum += temp;
    }
    printf("sum=%ld\n", sum);
    return 0;
}

运行结果:

 编程题1

 文字描述:

1.定义四个整数变量,分别为i, j, n, sum;;

2.n=0;

3.i=1;

4.如果i<1000为真,则执行5,否则执行13;

5.sum=0;

6.j=1;

7.如果j<a为真,则执行8,否则执行10;

8.如果i%j==0为真,则计算sum+=j,否则执行9;

9.j++,返回7;

10.如果sum==i为真,则输出i,n++,否则执行11;

11.如果n%5==0,输出换行;否则执行12;

12i++;返回4;

13输出n;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    int i, j, n = 0, sum;
    printf("1000以内的完数:");
    for (i = 1; i <= 1000; i++)
    {
        sum = 0;
        for (j = 1; j < i; j++)
        {
            if (i % j == 0)
                sum = sum + j;
        }
        if (sum == i)
        {
            printf("%d\n", sum);
            n++;
        }
        if (n % 5 == 0)
        {
            printf("\n");
        }

    }
    printf("%d\n", n);
    return 0;
}
 

运行结果:

 编程题2

 文字描述:

1.定义两个整数变量,分别为year,n;

2.n=0;

3.year=1900;

4.如果year<=2000为真,则执行5,否则循环结束;

5.如果year%4==0&&year%100!=0||year%400==0为真,则执行6,否则执行7;

6.输出year,n++;

7.如果n%3==0,则执行8,否则执行9;

8.输出换行;

9year++,返回4;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    int year, n = 0;
    for (year = 1900; year<= 2000; year++)
    {
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            printf("%d\t", year);
            n++;
            if (n % 3 == 0) printf("\n");
        }
    }
    return 0;
}
 

运行结果:

 编程题3

 文字描述:

1.定义五个整数变量,分别为i,a,b,c,n;

2.n=0;

3.i=100;

4.如果i<=999为真,则执行5,否则循环结束;

5.a=i/100;

6.b=(i-a*100)/10;

7.c=i%10;

8.如果a*a*a+b*b*b+c*c*c==i为真,则执行9,否则执行11;

9.输出i;

10.n++;

11.如果n%2==0为真,则执行12,否则执行13;

12.输出换行;

13.i++,返回4;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    int i, a, b, c, n = 0;
    for (i = 100; i <= 999; i++)
    {
        a = i / 100;
        b = (i - a * 100) / 10;
        c = i % 10;
        if (a * a * a + b * b * b + c * c * c == i)
        {
            printf("%d ", i);
            n++;
            if (n % 2 == 0)printf("\n");
        }
    }
    return 0;
}
 

运行结果:

 编程题4

 文字描述:

1.定义四个整数变量和一个小数变量,分别为i,k,n,m,e;

2.k=1,e=1;

3.从键盘上获取一个数存入n;

4.m=1;

5.i=1;

6.如果i<=k为真,则执行7,否则执行9;

7.m=m*i;

8.i++,返回6;

9.e=e+1.0/m;

10.k++;

11.如果k<=n为真,则执行4,否则执行12;

12.输出e;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    int k = 1, i, n, m;
    float e = 1;
    scanf_s("%d", &n);
    do {
        m = 1;
        for (i = 1; i <= k; i++) {
            m = m * i;
        }
        e = e + 1.0 / m;
        k++;
    } while (k <= n);
    printf("%.2f", e);
    return 0;
}
 

运行结果:

 编程题5

 文字描述:

1.定义六个小数变量,分别为y,s,x,k,a,i;

2.s=1,k=1,a=1,i=1;

3.从键盘上输入一个数存入x;

4.a=-a;

5.i++;

6.k=k*x;

7.y=i/k;

8.s=s+a*y;

9.如果y>0.00001为真,返回4,否则执行10;

10输出s;
 

流程图:

 

代码:

#include<stdio.h>
int main()
{
    float y, s = 1, x, xx = 1, a = 1, i = 1;
    scanf_s("%f", &x);
    do
    {
        a = -a;
        i++;
        xx = xx * x;
        y = i / xx;
        s = s + a * y;
    } while (y > 0.00001);
    printf("%f", s);
    return 0;
}

运行结果:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值