C语言基础编程题目2
- 辗转相除法求最大公约数
- 求a的连续和 a+aa+aaa+…+aaaaaaa(n个)
- 求圆的面积 (21年淮南师范专升本)
- 矩阵转置(21年淮南师范专升本)
- 直接插入(09年合肥师范专升本)
- 数组操作 (09年合肥师范专升本)
1辗转相除法求最大公约数
#include #include int main(){ int m=46,n=12,t; while(n!=0){ t=m%n; m=n; n=t; printf("过程%d %d %d\n",m,n,t); } printf("最大公约数%d",m); return 0;}
2求a的连续和 a+aa+aaa+…+aaaaaaa(n个)
#include #include int main(){ int n=4,a=2; int t=a; long sum=0; for (int i = 0; i < n; i++) { sum=sum+a; a=a*10+t; printf("a= %d \n",a); } printf("sum is %ld",sum); return 0;}
3求圆的面积(21年淮南师范C大题)
#include #include int main(){ double area,r; printf("请输入圆的半径:"); scanf("%lf",&r); area=3.14*r*r; printf("圆的面积为%lf",area); return 0;}
4 矩阵转置(21年淮南C)
#include #include int main(){ int i,j,a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; int b[4][3]; for ( i = 0; i < 3; i++) for ( j = 0; j < 4; j++) b[j][i]=a[i][j]; for ( i = 0; i < 4; i++){ for ( j = 0; j < 3; j++) printf(" %d ",b[i][j]); printf("\n"); } return 0;}
5 直接插入 (09年合肥师范专升本)
现有一个已排序(升序)的整数数组,今输入一个数,要求按原排序规律,将此数插入数组中
#include #include int main(){ int a[5]={1,2,4,5}; int n,i; int len=sizeof(a)/sizeof(a[0]); printf("请输入一个整数: "); scanf("%d",&n); for ( i = 0; i < len-1; i++) { if(a[i]>n) break; } for (int j = len-1; j > i; j--) { a[j]=a[j-1]; } a[i]=n; for (int i = 0; i < len; i++) { printf("%d",a[i]); } return 0;}
6 数组操作 (09年合肥师范专升本)
输入20个不同的整数,保存到数组a中,在输入一个整数n,如果在数组中存在则,返回数组元素的下标,若不存在则输出“此数不存在”
#include #include int main(){ int a[20]; int i,n,flag=0; for ( i = 0; i < 20; i++) { scanf("%d",&a[i]); } printf("请输入数字n:"); scanf("%d",&n); for ( i = 0; i < 20; i++) { if(a[i]==n) { flag=1; break; } } if(flag==1) printf("下标为%d",i); else printf("没有这个数"); return 0;}