用C语言编写以下程序:1。有函数F(x)等于(x+1)2 和G(x)等于2x+1,输入x的值计算F(G(x))的值2。任意输入三个字符,要求首先按逆序输出,然后同行原序输出3。编写打印如下图形的程序(不能直接用输出语句) *****
***** *****
*****
*****4。依次输入十个整数,找出其平方最大的一个数并打印出来5。输入N,求下列级数前N项的和 1+1/2-2/3+3/4。。。(-1)N(N-1)/N6。有函数pk(x)等于(x-1)(x-2)...(x-k)(k等于1,2...20)和p(x)等于p1(x)+p2(x)+...+p20(x).输入x的值,计算p(x)的值7。依次输入10个自然数,输出最大的数及其输入次序8。编写打印如下图形的程序(不能直接用输出语句) 12345
1234
123
12
19。有一数列:2/4,4/7,6/10,8/13,10/16,12/19。。。输出这个数列前20项之和以上为我的所有问题,望各位C语言高手伸出援助之手。十分感谢!!
9题一起写了...#include <stdio.h>#include <math.h>#define ARRYLEN 3// 2用到#define DEFAULT 5// 3,8用到int F (int x);
// 第一题函数 int G (int x);
// 第一题函数 long int pk (int k, int x);// 第六题函数long int p (int x);
// 第六题函数void main() { int i, j;
// 2,3,4,5,7,8用到 int x;
// 1,6用到 char cArry[ARRYLEN];
// 第二题用到 int MaxNum = 0, tmpNum; // 4,7用到 int N = 0;
// 第五题用到 double s = 1.0;
// 第五题用到 int flag = 0;
// 第七题用到 float result = 0;
// 第九题用到 // 1 printf ("第一题内容>>\\n请输入x的值:"); scanf ("%d", &x); printf ("F(G(x)) = %d\\n", F(G(x))); // 2 printf ("第二题内容>>\\n"); scanf ("%s", cArry); for (i = ARRYLEN - 1; i >= 0; i--) printf("%c", cArry); printf(" %s\\n", cArry); // 3 printf ("第三题内容>>\\n"); for (i = 1; i <= DEFAULT; i++) { for (j = 1; j <= DEFAULT; j++) printf("*"); printf("\\n"); } // 4 printf ("第四题内容>>\\n"); for (i = 0; i < 10; i++) { printf("请输入第%d(共10个)个整数:", i + 1); scanf("%d", &tmpNum); if (abs(tmpNum) > abs(MaxNum)) // 平方最大,要比较绝对值! MaxNum = tmpNum; } printf ("平方最大的整数为:%d 平方后为:%g\\n", MaxNum, pow(MaxNum, 2)); // 5 printf ("第五题内容>>\\n"); do { printf("请输入N(N为正整数):"); scanf ("%d", &N); for (i = 2; i <= N; i++) s += pow(-1, i) * (i - 1) / i; printf("前%d项的和为:%g\\n", N, s); } while (N < 1); // 6 printf ("第六题内容>>\\n"); x = 0; printf ("请输入正整数x:"); scanf ("%d", &x); printf("结果为:%ld\\n", p (x));// 结果太大了! // 7 printf ("第七题内容>>\\n"); printf ("请输入10个自然数:\\n"); MaxNum = -32768; for (i = 0; i < 10; i++) { scanf ("%d", &tmpNum); if (MaxNum < tmpNum) { MaxNum = tmpNum; flag = i; } } printf ("最大的自然数为:%d所在位置为第%d个数.\\n", MaxNum, flag + 1); // 8 printf ("第八题内容>>\\n"); for (i = DEFAULT; i >= 1; i--) { for (j = 1; j <= i; j++) printf("%d", j); printf("\\n"); } // 9 printf ("第九题内容>>\\n"); for (i = 1; i <= 20; i++) { result += (float) (2 * i) / (4 + 3 * (i - 1)); } printf ("前20项的和为:%f\\n", result);}int F (int x) { return pow(x + 1, 2); // 题目是(x+1)的平方?}int G (int x) { return 2 * x + 1;}long int pk (int k, int x) { int i; long int s = 1; for (i = 1; i <= k; i++) { s *= x - i; } return s;}long int p (int x) { int s = 0; int k; for (k = 1; k <= 20; k++) { s += pk (k, x); } return s;}
提问者对答案的评价: |