#include //2.计算1到100的和 #include printf(\"sum=%d\\n\ } //3.最大公约数 #include //求m,n的最大公约数 int main() { int m, n; int i, k; printf(\"请输入两个数:\"); scanf(\"%d %d\ //三元运算符找较小的那个 k = m < n ? m : n; //从较小的那个数倒着往前找 for(i=k; i>=1; i--) { //这是公约数 if((m % i == 0) && (n % i ==0)) { printf(\"最大公约数是%d\\n\ break; //跳出for循环 } } } //4.最小公倍数 #include //求m,n的最小公倍数 int main() { int m, n; int max, min; //m,n中较大,较小的那个 int k; //max, 2*max, 3*max, ..... 1 printf(\"请输入两个数:\"); scanf(\"%d %d\ //也可以交换m,n,保证m小n大 max = m > n ? m : n; min = m < n ? m : n; k = max; //从max开始 while(k % min != 0) { k += max; //每次倍增 } printf(\"最小公倍数是%d\\n\ } //5.金字塔 #include //金字塔 int main() { int i; //外层 int j; //内层 for(i=1;i<=10;i++) { //当前是在第i行 //先补空格10-i个 for(j=1;j<=10-i;j++) { printf(\" \"); } //再打2i-1个* for(j=1;j<=2*i-1;j++) { printf(\"*\"); } printf(\"\\n\"); } } //6.九九乘法表 #include //打印九九乘法表 int main() { int i,j; for(i=1;i<=9;i++) //外层一定是9行 { for(j=1; j<=i; j++) //内层第几行走几遍 { printf(\"%d*%d=%d \ } printf(\"\\n\"); } } //7.百钱买百鸡 #include 百钱买百鸡,类似1,2,5凑100银币问题 */ int main2() { int i,j;//公鸡,母鸡个数 for(i=0; i<=20; i++) //公鸡 { for(j=0; j<=33; j++) //母鸡 { if( (15*i + 9*j + (100-i-j)) == 300) { printf(\"公鸡%d,母鸡%d,小鸡%d\\n\ } } 2 } } //1,2,5凑100银币问题 int main3() { int count = 0; //情况数 int i,j;//5分个数,2分个数 for(i=0; i<=20; i++) //5分个数 { for(j=0; j<=50; j++) //2分个数 { if( ( 5*i + 2*j ) <= 100 ) { count++; printf(\"%d: 5分%d个,2分%d个,1分%d个\\n\ } } } } //8.一维数组的最大值、最小值、平均值 #include 3 } sum += a[i]; } printf(\"max=%d, min=%d\\n\printf(\"average = %.2lf\\n\ //9.二维数组的最大值、最小值、平均值 #include //10.二维数组转置 #include //二维数组转置:行变列,列变行 //11.冒泡排序 #include int main() { int i; //下标索引 int j; {5,-6,7,8}, int tmp; //临时交换用 int a[N] = {58, 58, 96, 100, 25, 55, 66, 88, 99, 77}; //外层循环一定是N-1 for(i=0; i #include 4 //结构定义,用户自定义类型 typedef struct student{ char sno[20]; //学号 char name[20]; //姓名 int age; //年龄 char gender; //性别 char tel[20]; //电话 }; int main() { int i; int j; double sum = 0; struct student tmp; //两两交换临时用; //结构数组 struct student team[5]; for(i=0; i<5; i++) { printf(\"请输入第%d个队员的信息:\\n\i+1); scanf(\"%s %s %d %c %seam[i].sno, team[i].name, &team[i].age, &team[i].gender, team[i].tel); } //按年龄冒泡排序 for(i=0; i<5; i++) { for(j=0; j<5-i-1; j++) { //两两交换 if(team[j].age > team[j+1].age) { tmp = team[j]; team[j] = team[j+1]; team[j+1] = tmp; } } } //取值 printf(\"%-12s %-10s %-5s %-5s %-15s\\n\学号\姓名\年龄\性别\电话\"); 5 for(i=0; i<5; i++) { printf(\"%-12s %-10s %-5d %-5c %-15s\\neam[i].sno, team[i].name, team[i].age, team[i].gender, team[i].tel); } } //13.结构数组找年龄最大值 #include //结构定义,用户自定义类型 typedef struct student{ char sno[20]; //学号 char name[20]; //姓名 int age; //年龄 char gender; //性别 char tel[20]; //电话 }; int main() { int i; struct student tmp; //找最大临时用 //结构数组 struct student team[5]; for(i=0; i<5; i++) { printf(\"请输入第%d个队员的信息:\\n\ scanf(\"%s %s %d %c %seam[i].sno, team[i].name, &team[i].age, &team[i].gender, team[i].tel); } //取值 printf(\"%-12s %-10s %-5s %-5s %-15s\\n\学号\姓名\年龄\性别\电话\"); for(i=0; i<5; i++) { printf(\"%-12s %-10s %-5d %-5c %-15s\\neam[i].gender, team[i].tel); } //找学号最大的那一个 tmp = team[0]; for(i=1; i<5; i++) { if(strcmp(team[i].sno,tmp.sno) > 0 ) { tmp = team[i]; } } printf(\"学号最大的队员如下:\\n\"); printf(\"%-12s %-10s %-5d %-5c %-15s\\nmp.sno, tmp.name, tmp.age, tmp.gender, tmp.tel); } //14.文件读写 #include //结构定义,用户自定义类型 typedef struct student{ char sno[20]; //学号 char name[20]; //姓名 int age; //年龄 char gender; //性别 char tel[20]; //电话 }; //文件读写 6 int main() { struct student * s, * p1; //个数未知 FILE * fp; int i, n = 0; char buf[1024];//fgets缓冲区 //打开文件 fp = fopen(\"e:\\\est.txt\ while(fgets(buf, 1024, fp) != NULL) n++; fclose(fp); //指向一个可以存储n个student结构的内存空间 s = (struct student *)malloc(sizeof(struct student) * n); p1 = s; //不要动头位置s的值 //打开文件 fp = fopen(\"e:\\\est.txt\ for(i=0; i //15.输入三角形三边长计算周长和面积 #include int main() case 10: { case 12:printf(\"31\");break; double area,perimeter,s,a,b,c; case 4: case 6: printf(\"请输入三边长 a b c:\"); scanf(\"%lf%lf%lf\ case 9: if((a+b>c) && (a+c>b) && (b+c>a)) case 11:printf(\"30\");break; { case 2:printf(\"%d\ s=(a+b+c)/2; default:printf(\"error\");break; area=sqrt(s*(s-a)*(s-b)*(s-c)); } perimeter=a+b+c; return 0; printf(\"area=%.2f,perimeter=%.2f\\} n\ } else { printf(\"三边长无法构成三角形。//17.1,2,5分硬币问题 \\n\"); } #include return 0; int main() } { int sum = 0; for(int i=0; i<=20; i++) //16.输入年份和月份输出对应那一月的天 { for(int j=0; j<=50; j++) 数,要处理闰年 { if(5*i + 2*j <= 100) #include sum++; int main() else { break; int year,month; } int leap =0; } scanf(\"%d %d\ printf(\"%d\\n\ if((year %4==0 && year %100 !=0) || } year %400 ==0) //闰年2月29天 { leap=1; } //18.100到200所有的素数 switch(month) { #include int main() case 3: { case 5: int i,j,n; case 7: //外层 case 8: for(i=100; i<=200; i++) 7 //5分 //2分 { n = i; //内层 for(j=2;j<=n-1;j++) { if(n%j == 0) break; //不是素数 { int tmp = *pa; *pa = *pb; *pb = tmp; } int main() } { if(j==n) //没找到 printf(\"%d是素数\\n\ else printf(\"%d不是素数\\n\ } } } //19.输入一个数n,计算12+22+32+…+n2 #include int main() { int sum = 0; int i, k; scanf(\"%d\ i = 1; while(i <= k) { sum = sum + i * i; i++; } printf(\"sum = %d\\n\} //20.指针交换 //定义一个方法swap()通过指针交换两个整数 ,并在main()中调用 #include void swap(int *pa, int *pb) 8 int a = 3; int b = 5; int *pa = &a; int *pb = &b; swap(pa, pb); printf(\"a=%d, b=%d\\n\ 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务