C语言的一些简单操作练习。
互换两个数字:
# include <stdio.h> int main(void) { int i = 3; int j = 5; int t; //将i与j的值交换 t = i; i = j; j = t; printf("i = %d, j = %d ", i, j); return 0; }
输出随意字符随意层的金字塔:
# include<stdio.h> main() { int a,i,j; char c; printf("请输入金字塔层数,30内: "); scanf("%d",&a); printf("请输入要输出的字符: "); scanf(" %c",&c); for(i=a;i>0;i--) { printf("%*s",i," "); for(j=0;j<((a-i)*2-1);j++) { printf("%c",c); } printf(" "); } return 0; }
执行结果:
运算:
# include <stdio.h> int main(void) { /*float i; i = 51/4; printf("%f ", i); printf("%d %d %d %d %d %d ", 3%3, 13%-3, -13%3, -13%-3, -13%23, 3%5);*/ int m; int k = 10; m = (21>3) && (k=5); //m为布尔型值,k=5为真,当且仅当k=0时才为假,即0为假。其它数为真 printf("m=%d, k=%d ", m, k); //当左边无法推断m的真假值时,右边才运行;若左边即能够推断m值的真假。右边不运行。//&&左边的表达式为假时,右边的表达式肯定不会运行 //||左边的表达式为真时,右边的表达式肯定不会运行 return 0; }
三个数字排序:
# include <stdio.h> int main(void) { double i, j, k; printf("请输入三个数(中间以空格隔开):"); scanf("%lf %lf %lf", &i, &j, &k); if (i > j) { if (i > k) { printf("最大值为:%lf ", i); if (j > k) printf("数的大小顺序为:%lf > %lf > %lf ", i, j, k); else printf("数的大小顺序为:%lf > %lf > %lf ", i, k, j); } else { printf("最大值为:%lf ", k); if (i > j) printf("数的大小顺序为:%lf > %lf > %lf ", k, i, j); else printf("数的大小顺序为:%lf > %lf > %lf ", k, j, i); } } else { if (j > k) { printf("最大值为:%lf ", j); if (i > k) printf("数的大小顺序为:%lf > %lf > %lf ", j, i, k); else printf("数的大小顺序为:%lf > %lf > %lf ", j, k, i); } else { printf("最大值为:%lf ", k); if (i > j) printf("数的大小顺序为:%lf > %lf > %lf ", k, i, j); else printf("数的大小顺序为:%lf > %lf > %lf ", k, j, i); } } return 0; }