Skip to content

799353918/hello-world-

Repository files navigation

hello-world-

//////第2关:不使用第3个变量,实现两个数的对调 ////#include<stdio.h> ////int main(void) ////{
//// //// int a,b; //// scanf("%d%d",&a,&b); //// printf("a=%d b=%d\n",a,b); //// a=a-b; //// b=a+b; //// a=b-a; //// printf("a=%d b=%d\n",a,b); //// return 0; ////} // ////第3关:用宏定义常量 //#include<stdio.h> //int main(void) //{
// /Begin/ // int x; // scanf("%d",&x); // printf("%d",30x); // // /End/ // return 0; //} //// // //第4关:数字分离 //任务描述 //输入一个三位数,分别求出x的各位数字,十位数字,百位数字的值。 //#include<stdio.h> //int main(void) //{
// /Begin/ // int x; // scanf("%d",&x); // printf("%d ",x/100); // printf("%d ",(x/10)%10); // printf("%d",x%10); // // /End*/ // return 0; //} // //第5关:计算总成绩和平均成绩 //#include<stdio.h> //int main(void) //{
// /Begin/ // int a,b,c,d,e,sum; // scanf("%d %d %d %d %d",&a,&b,&c,&d,&e); // sum=(a+b+c+d+e); // printf("%d ",sum); // printf("%.2f",(double)sum/5); // // /End*/ // return 0; //} // //第6关:求三角形的面积 //#include<stdio.h> //#include <math.h> //int main(void) //{
// /Begin/ // float area,x,y,z,s; // // scanf("%f %f %f",&x,&y,&z); // // s = (x+y+z)/2; // area =sqrt(s*(s-x)(s-y)(s-z)); // // printf("%.3f",area); // /End*/ // return 0; //} // //第7关:立体几何计算题 //任务描述 //本关任务:设圆半径r,圆柱高h , 求圆周长C1,半径为r的圆球表面积Sb,圆半径r,圆柱高为h的圆柱体积Vb。 用scanf输入数据,输出计算结果,输出时取小数点后两位数字。请编程序。 PI=3.14 //#include<stdio.h> //#include <math.h> //int main() //{
// /Begin/ //#define PI 3.14 // double r,h,C1,Sb,Vb; // scanf("%lf,%lf",&r,&h); // // C1= 2PIr; // Sb= 4PIrr; // Vb= PIrrh; // printf("C1=%.2f\nSb=%.2f\nVb=%.2f\n",C1,Sb,Vb); // /End*/ // return 0; //} // //第8关:计算两个正整数的最大公约数 //#include<stdio.h> //int MaxCommonFactor( int a, int b) //{ // int c; // if(a<=0||b<=0) // return -1; // while(b!=0) // { // c=a%b; // a=b; // b=c; // } // return a; //}
//int main(void) //{
// /Begin/ // int a,b; // scanf("%d,%d",&a,&b); // printf("%d\n",MaxCommonFactor(a,b)); // // /End*/ // return 0; //} // //第1关:排序 //任务描述 //本关任务:下面的程序是从键盘输入三个整数按从小到大的顺序输出。 //#include<stdio.h> //int main() //{
// int a,b,c,t; // printf("请输入三个整数:"); // scanf("%d%d%d",&a,&b,&c); // if(a>b) // { // t=a; // a=b; // b=t; // } // if(a>c) // { // t=a; // a=c; // c=t; // } // if(b>c) // { // t=b; // b=c; // c=t; // } // printf("从小到大排列为:%d,%d,%d",a,b,c); // return 0; //} // //第2关:选择结构-闰年判断 //#include<stdio.h> //int main(void) //{
// /Begin/ // int a; // scanf("%d",&a); // if(a%400==0){ // printf("%d 是闰年!",a); // }else{ // printf("%d 不是闰年!",a); // } // /if(a%100==0){ // printf("%d不是闰年!",a); // }else{ // if(a%4==0){ // printf("%d是闰年!",a); // }else{ // printf("%d不是闰年!",a); // } // }/ // // /End*/ // return 0; //} // //第3关:选择结构-分段函数问题 //#include <stdio.h> // //int main(void) { // float x; // float y; // scanf("%f", &x); // if (x < 0 && x != -3) // { // y = (x * x + x - 6); // printf("%.3f", y); // return 0; // } // // if (x >= 0 && x <= 10 && x != 2 && x != 3) // y = (x * x - 5 * x + 6); // else // y = (x * x - x - 1); // printf("%.3f", y); // return 0; // // //} // //第4关:学生成绩等级换算 //#include<stdio.h> //#include<math.h> //int main(void) //{
// float result; // int x; // scanf("%f",&result); // if(result>=0&&result<=100){ // x=result/10; // switch(x) //{ // case 10:printf("A");break; // case 9:printf("A");break; // case 8:printf("B");break; // case 7:printf("C");break; // case 6:printf("D");break; // default:printf("E"); //} // }else // printf("Score is error!"); // return 0; //} // //第1关:小球自由落体运动 //#include<stdio.h> //int main() //{
// int N; // float M,Jump,sum; // scanf("%f%d",&M,&N); // sum=M; // if(N==1) // { // Jump=M/2.0; // } // // else // { // for(int i=0;i<N;i++) // { // M=M/2; // Jump=M; // sum+=2M; // } // } // sum -= 2M; // printf("%.2f %.2f",Jump,sum); // return 0; //} // // //第2关:求解出n以内所有能被5整除的正整数的乘积 //#include<stdio.h> //int main(void) //{
// /Begin/ // int n,i,s=1; // scanf("%d",&n); // for(i=1;i<=n;i++) // { // if(i%5==0) // s=si; // } // printf("%d\n", s); // // /End/ // return 0; //} // //第3关:最大公约数和最小公倍数 //#include<stdio.h> //int main(void) //{
// /Begin/ // int m,n,max,min,b,c; // scanf("%d%d",&m,&n); // c=m%n; // b=mn; // while(c!=0) // { // m=n; // n=c; // c=m%n; // } // max=n; // min=b/max; // printf("最大公约数是:%d\n最小公倍数是:%d\n",max,min); // return 0; // // /End/ // return 0; //} // //第4关:字符串中各类字符数的统计 //#include<stdio.h> //int main(void) //{
// /Begin/ // int letters=0,num=0,space=0,others=0; // char ch; // while((ch=getchar())!='\n') // { // if(ch>='a'&&ch<='z') // letters++; // else if(ch>='1'&&ch<='9') // num++; // else if(ch==' ') // space++; // else // others++; // } // printf("%d %d %d %d",letters,num,space,others); // /End*/ // return 0; //} // //第5关:求sn=a+aa+aaa+aaaa+......的值 //#include<stdio.h> //#include<math.h> //int main(void) //{
// /Begin/ // int x,n,i,su=0,sum=0; // scanf("%d %d",&x,&n); // for(i=0;i<n;i++) // { // su=xpow(10,i)+su; // sum=sum+su; // } // printf("%d",sum); // // // /End/ // return 0; //} // // //第1关:C循环-求平均成绩 //#include<stdio.h> //int main(void) //{
// /Begin/ // int number; // int i; // float sum=0,score; // printf("the number of students:"); // scanf("%d",&number); // if(number <= 0) // { // printf("the scores:average=0.00"); // } else // { // printf("the scores:"); // for(i= 0; i<number ;i++) // { // scanf("%f",&score); // sum += score; // } // printf("average=%.2f",sum / number); // } // /End*/ // return 0; //} // //C循环-求各位数字之积 //#include <stdio.h> //int main() //{ // int num; // int s=1; // scanf("%d",&num); // while(num>0) // { // s=s*(num%10); // num=num/10; // } // printf("%d",s); //} // //第3关:C循环-求阶乘之和 //#include<stdio.h> //int main() //{ // int a; // int num,n; // while(~scanf("%d",&n)){ // num=0; // for(int i=1;i<=n;i++){ // a=1; // for(int j=1;j<=i;j++){ // a*=j; // } // num+=a; // } // printf("%d",num); // } // return 0; //} // //第4关:C循环-水仙花数 所谓水仙花数是指一个三位数,其各位数字的立方和等于该数字本身。比如153是一个水仙花数,因为153=1^3+5^3+3^3 #include <stdio.h> #include <math.h> int main() { int omit,i; scanf("%d",&omit); for(i=100;i>99 && i<1000;i++) { int temp1,temp2,temp3,temp_result; temp1 = i%10; temp2 = i/10%10; temp3 = i/100; temp_result = pow(temp1,3)+pow(temp2,3)+pow(temp3,3); if(temp_result == i) { printf("%d ",i); } } return 0; }

第5关:C循环-寻找完数 本关任务:一个数如果恰好等于它的因子之和,这个数就称为"完数"。 例如,6的因子为1、2、3,而6=1+2+3,因此6是"完数"。 编程序找出1000之内的所有完数。 #include <stdio.h> int main() { int i,j,x,y; for(i=1;i<1000;i++) { x=0; y=0; for(j=1;j<i;j++) { if(i%j==0) { x=x+j; } } if(x==i) { printf("%d",x); printf("\n"); } } return 0; }

第6关:分数求和 #include<stdio.h> #include<math.h> int main() { int b=1; float sum=0,c,a=1,n=1; while(b<=100) { c=n*a/b; sum=sum+c; b++; n=-n; } printf("%.3f",sum); }

第1关:快递费用计算 #include <stdio.h> #include <math.h> int main() { int area; float weight,price = 0; scanf("%d,%f",&area,&weight); if(area<0||area>4) { printf("Error in Area\n"); } else if(area==0) { if(weight<1) { price=10; } else { weight = ceil(weight); price = 10 + (weight-1)*3; } } else if(area==1) { if(weight<1) { price=10; } else { weight = ceil(weight); price = 10 + (weight-1)*4; } } else { if(weight<1) { price=15; } else { if(area==2) { weight=ceil(weight); price=15+(weight-1)*5; } else if(area==3) { weight=ceil(weight); price=15+(weight-1)*6.5; } else { weight = ceil(weight); price = 15 + (weight-1)*10; } } } printf("Price: %.2f\n",price); return 0; }

第2关:计算一元二次方程的根 #include<stdio.h> #include<math.h> int main(void) {
/Begin/ float a,b,c,x1,x2; printf("Please enter the coefficients a,b,c:\n"); scanf("%f,%f,%f",&a,&b,&c); double e=(bb-(4ac)); if(e<0){ printf("error!\n"); } else{ x1=-b/(2a)+sqrt((bb)-(4ac))/(2a); x2=-b/(2a)-sqrt((bb)-(4ac))/(2*a); printf("x1=%.4f, x2=%.4f\n",x1,x2); }

/*********End**********/ 
return 0;

}

第3关:产品信息格式化 #include<stdio.h> int main(void) { int num,date[3]; float price; printf("Enter item number:\n"); scanf("%d",&num); printf("Enter unit price:\n"); scanf("%f",&price); printf("Enter purchase date (mm/dd/yy):\n"); printf("Item Unit Purchase\n"); scanf("%d/%d/%d",&date[0],&date[1],&date[2]); printf("%-9d$ %-9.2f%02d%02d%02d",num,price,date[0],date[1],date[2]); return 0; }

输入两个正整数 m 和 n,求其最大公约数和最小公倍数。 求最小公倍数算法:

最小公倍数 = 两整数的乘积 ÷ 最大公约数

根据求最小公倍数的算法,可以看出如果已知最大公约数,就能很容易求出最小公倍数。而通过辗转相除法和相减法,可以求得最大公约数,下面分别进行介绍。

辗转相除法 已知有两整数m和n,利用辗转相除法求它们的最大公约数,具体步骤如下: ① m%n得余数t; ② 若t=0,则n即为两数的最大公约数; ③ 若t≠0,则m=n,n=t,再回去执行①。 #include<stdio.h> int main(void) {
/Begin/ int m,n,max,min,b,c; scanf("%d%d",&m,&n); c=m%n; b=m*n; while(c!=0) { m=n; n=c; c=m%n; } max=n; min=b/max; printf("最大公约数是:%d\n最小公倍数是:%d\n",max,min); return 0;

/*********End**********/ 
return 0;

}

用do-while循环按公式e=1+1/1!+1/2!+1/3!+… #include <stdio.h> int main() { /********** Begin *********/ float s; int i=1; float sum=1; float t=1; scanf("%f",&s); do{ t=ti; sum+=(1.0/t); i++; } while((1.0/t)>=s); printf("i=%d\ne=%f",i,sum);

/********** End **********/
return 0;

}

用for循环求sn=a+aa+aaa+aaaa+......的值 #include<stdio.h> #include<math.h> int main() { int m,n,sum=0,h=1,l=0; double i; scanf("%d%d",&m,&n); for(;n>0;n--) { sum=0; for(i=0;i<n;i++) { h=pow(10,i)*m; l=l+h; } sum=sum+l; } printf("%d",sum); }

第1关:求和 #include <stdio.h> int main(){ int x,sum=0; scanf("%d",&x); for(int i=0;i<=x;i++){ sum=sum+i; } printf("%d",sum); }

第2关:回文数计算 #include "stdio.h"

int main() { /Begin/ int i=1258,a,b,c,d; for(i=200; i<=3000; i++) { a=i/1000; b=(i-a1000)/100; c=((i-a1000)-b100)/10; d=i%10; if(i<1000 && b==d) printf("%d\n",i); if( i>=1000 && a==d && b==c) printf("%d\n",i); } /End/ }

第3关: 编写函数求表达式的值 题目描述:有如下表达式 s = 1 + 1 / 3 + (1 * 2) / (3 * 5) + (1 * 2 * 3) / (3 * 5 * 7) + .... + (1 * 2 * 3 * .... * n) / (3 * 5 * 7 * ... * (2 * n + 1))。 #include "stdio.h" /Begin/ int function(int n); //function函数 int function(int n) { double a=1,b=1,i; double s=0; for(i=0; i<=n; i++) { if(i==0 || i==1) a=1; else a=ai; b=b(2*i+1); s+=(double)a/b; } printf("%.10lf\n",s); }

/End*/ int main(void) { /Begin/ int n; scanf("%d",&n); function(n); /End*/ return 0; }

第4关:阶乘数列 题目描述:求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字 #include<stdio.h> long long solve(long long n){ /Begin/ if(n<=1) return 1; return(n*solve(n-1));

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

} int main(void) { long long n; scanf("%lld",&n); long long ans=0; for(long long i=1;i<=n;i++) ans+=solve(i); printf("%lld", ans); return 0; }

第5关:亲密数 题目描述:两个不同的自然数A和B,如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。

相关知识(略) #include <stdio.h> int main() { int a, i, b, n; for (a = 1; a < 3000; a++) {
for (b = 0, i = 1; i <= a / 2; i++ ) { if(! (a % i)) b += i; } for (n = 0, i = 1; i <= b/2; i++) { if(! (b % i)) n += i; } if(n == a && a < b) printf("(%d,%d)", a, b); }
return 0; }

第6关:公约公倍数 #include<stdio.h> int main() { int max(int m,int n);//最大公约数的自定义函数 long long int min(long long int m,long long int n,long long int j);//最小公约数的自定义函数 int x,y,b; long long int c; scanf("%d %d",&x,&y); if(x>0&&y>0) { b=max(x,y); c=min(x,y,b); printf("%d %lld",b,c); } else printf("Input Error"); } int max(int m,int n) { int i; if(m>=n) i=n; else i=m; for(;i>0;i--) { if(m%i==0&&n%i==0) { return i; break; } } } long long int min(long long int m,long long int n,long long int j) { long long int k; k=m*n/j; return k; }

第1关:递归求阶乘数列 #include<stdio.h> long long solve(long long n){ /Begin/ long long sum=1; for(long long j=1;j<=n;j++){ sum=sumj; } return sum; /End/ } int main(void) { long long n; scanf("%lld",&n); long long ans=0; for(long long i=1;i<=n;i++) ans+=solve(i); printf("%lld", ans); return 0; }

第2关:递归实现输出一个整数的逆序 #include<stdio.h> void solve(int n) { printf("%d", n%10); /Begin/ n=n/10; /End*/ if(n>0) solve(n); } int main() { int n; scanf("%d",&n); solve(n); return 0; }

第3关:将整数递归转换成字符串 #include <stdio.h> void solve(int n) { int temp=n%10; int ds; n/=10; if(n) solve(n); ds=temp; if(n) printf(" %d",ds);

else
	printf("%d",ds);

} int main() { int n; scanf("%d",&n); solve(n); return 0; }

第4关:递归实现Ackman函数 编写一函数实现下列Ackman函数,其中m,n为正整数 // // Acm(m,n)=  //⎩ //⎪ //⎪ //⎨ //⎪ //⎪ //⎧ //​ // //n+1 //Acm(m−1,1) //Acm(m−1,Acm(m,n−1)) //​ // // if m=0,n>0 //  if n=0,m>0 //  if n>0,m>0 // ​ // //

#include<stdio.h> int Acm(int m,int n) { int x; if(m==0&&n>0) /Begin/ x=n+1; /End*/ else if(n==0&&m>0) /Begin/ x=Acm( m-1, 1); /End*/ else /Begin/ x=Acm( m-1, Acm( m,n-1)); /End*/ } int main(void) { int m,n; scanf("%d%d",&m,&n); printf("%d", Acm(m,n)); return 0; }

第1关:字符逆序 #include <stdio.h> #include <string.h>

int main() { char str[100]; scanf("%s", str); int len = strlen(str); for (int i = len - 1; i >= 0; i--) { printf("%c", str[i]); } return 0; }

第2关:字符统计 题目描述:对于给定的一个字符串,统计其中数字字符出现的次数。 #include<stdio.h> int main(void) { int n,i,j,count; char s[10][50]; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%s",&s[i]); } for(i=0;i<n;i++) { count=0; for(j=0;s[i][j]!='\0';j++) if(s[i][j]>='0'&&s[i][j]<='9') count++; printf("%d\n",count); } return 0; }

第3关:字符插入 输入两个字符串a和b,将b串中的最大字符插入到a串中最小字符后面。 #include<stdio.h> #include<string.h> int main(void) { int i,j,m,n,x,y; int max,min; char a[50],b[50]; gets(a); gets(b); m=strlen(a); n=strlen(b); for(i=0,min=a[0];i<m;i++)
if(a[i]<=min)
{ min=a[i]; x=i; } for(i=0,max=b[0];i<n;i++) if(b[i]>=max)
{ max=b[i]; y=i; } for(j=0;j<=x;j++) printf("%c",a[j]); printf("%c",b[y]); for(j=x+1;j<m;j++) printf("%c",a[j]); return 0; }

第4关:字符串处理 #include<stdio.h> #include<string.h> int main(void) { int i,j,m,n,num; char a[100],b[100]; gets(a); gets(b); m=strlen(a); n=strlen(b); scanf("%d",&num); for(j=0;j<num;j++) printf("%c",a[j]); for(j=0;j<n;j++) printf("%c",b[j]); for(j=num;j<m;j++) printf("%c",a[j]); return 0; }

第5关:字符串统计 题目描述:输入一段字符(由空格、字母和数字几种组成,保证开头不为空格),里面有若干个字符串,求这些字符串的长度和,并输出最长字符串内容,如果有多个输出最先出现的那个字符串。以stop作为最后输入的字符串。 #include<stdio.h> #include<string.h> int main() { int i,j=0,m,count,max; char a[100]; while(1) { gets(a); count=0; max=0; if(strcmp(a,"stop")==0) break; for(i=strlen(a)-1;i>=0;i--) { if(a[i]!=' '&&i!=0) { j++; count++; } else if(a[i]==' '||i==0) { if(i==0) { j++; count++; } if(j>=max) { max=j; m=i; if(i==0) m=i-1; } j=0; } } printf("%d ",count); for(i=m+1;i<m+1+max;i++) printf("%c",a[i]); printf("\n"); }

/*********End**********/
return 0;

}

第6关:字符串排序 输入3行,每行n个字符串,按由小到大的顺序输出 #include<stdio.h> #include<string.h> int main() { char str1[20],str2[20],str3[20]; gets(str1); gets(str2); gets(str3); if(strcmp(str1,str2)>0&&strcmp(str2,str3)>0) { puts(str3); puts(str2); puts(str1); } if(strcmp(str1,str2)>0&&strcmp(str2,str3)<0&&strcmp(str1,str3)>0) { puts(str2); puts(str3); puts(str1); } if(strcmp(str2,str1)>0&&strcmp(str1,str3)>0) { puts(str3); puts(str1); puts(str2); } if(strcmp(str2,str1)>0&&strcmp(str1,str3)<0&&strcmp(str2,str3)>0) { puts(str1); puts(str3); puts(str2); } if(strcmp(str3,str2)>0&&strcmp(str2,str1)>0) { puts(str1); puts(str2); puts(str3); } if(strcmp(str3,str2)>0&&strcmp(str2,str1)<0&&strcmp(str1,str3)>0) { puts(str2); puts(str1); puts(str3); } return 0; }

第1关:排序问题 本关任务:将十个数进行从大到小的顺序进行排列 #include <stdio.h> #include<math.h> int main() { int a[10]; int n,i,m; for(i=0;i<10;i++) scanf("%d",&a[i]); printf("\n"); for(m=0;m<9;m++) { for(i=0;i<9-m;i++) { if(a[i]<a[i+1]) { n=a[i]; a[i]=a[i+1]; a[i+1]=n; } }

}
for(i=0;i<10;i++)
	printf("%d ",a[i]);
printf("\n");
return 0;

}

第2关:查找整数 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。 #include<stdio.h> int main() { int m,n,i,j; int a[1000]; int num=0; scanf("%d",&m); for(i=0; i<m; i++) scanf("%d", &a[i]); scanf("%d",&n); for(j=0; j<m; j++) { if(a[j]==n) { printf("%d",j+1); num=1; break; } } if(num==0) printf("-1"); return 0; }

第3关:计算数组中元素的最大值及其所在的行列下标值 按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值。其中m和n的值由用户键盘输入。已知m和n的值都不超过10 #include<stdio.h> int main(void) { /Begin/ int m,n,max,row,col; int i,j; int a[10][10]; printf("Input m, n:"); scanf("%d,%d",&m,&n); printf("Input %d*%d array:\n",m,n); for(i=0;i<m;i++) { for(j=0;j<n;j++) { scanf("%d",&a[i][j]); } } max=a[0][0]; for(i=0;i<m;i++) { for(j=0;j<n;j++) { if(a[i][j]>=max) { max=a[i][j]; row=i+1; col=j+1; } } } printf("max=%d, row=%d, col=%d\n",max,row,col); /End*/ return 0; }

第4关:二分查找 将n个从小到大排序的整数(n<1000000)从1~n进行编号,并一个待查找的整数m,请使用二分法进行查找。 输入 输入包括3行,第一行为整数n,第二行包括n个整数,以空格分隔,第三行为整数m。 输出 如果能够在序列中找到整数m,则输出编号(如果存在多个编号,返回编号最小的),如果不存在,则输出None。

测试说明 #include<stdio.h> int main() { int n,a[100],m,x=0; int i,j; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } scanf("%d",&m); for(j=0;j<n;j++) { if(a[j]==m) { printf("%d",j+1); x=1; break; } } if(x==0) printf("None"); return 0; }

第5关:鞍点 找出具有m行n列二维数组Array的“鞍点”,即该位置上的元素在该行上最大,在该列上最小,其中1<=m,n<=10。 #include <stdio.h>

int main() { int m, n; scanf("%d%d", &m, &n); int a[m][n]; // 读入数组 for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { scanf("%d", &a[i][j]); } } int flag = 0; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { int max_in_row = 1; int min_in_col = 1; for (int k = 0; k < n; k++) { if (a[i][k] > a[i][j]) { max_in_row = 0; break; } } // 判断该位置是否为该列最小值 for (int k = 0; k < m; k++) { if (a[k][j] < a[i][j]) { min_in_col = 0; break; } } if (max_in_row && min_in_col) { printf("Array[%d][%d]=%d\n", i, j, a[i][j]); flag = 1; break; } } if (flag) { break; } } if (!flag) { printf("None\n"); } return 0; }

第6关:删除最大值 题目描述:输入10个互不相同的整数并保存在数组中,找到该最大元素并删除它,输出删除后的数组 #include<stdio.h> #define N 10 int main(){ int a[N],i,max=0; for(i=0;i<N;i++){ scanf("%d",&a[i]); if(a[i]>a[max]) max=i; } for(i=max;i<N-1;i++){ a[i]=a[i+1]; } for(i=0;i<N-1;i++){ printf("%d ",a[i]); } return 0; }

第7关:杨辉三角 #include <stdio.h>

int main() { int n = 10; int a[20][20] = {0}; for (int i = 1; i <= n; i++) { a[i][1] = 1; a[i][i] = 1; for (int j = 2; j < i; j++) { a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; } } for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { printf("%d", a[i][j]); if (j == i) { printf("\n"); } else { printf(" "); } } } return 0; }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published