本文最后更新于 980 天前,其中的信息可能已经有所发展或是发生改变。
题目来源:
《程序设计基础(C语言)》
嵌套调用与递归调用
//使用构造函数的方法 #include<stdio.h> double a(int k) { int i; double f; for(i = 1,f = 1;i<=k;i++) f*=i; return(f); } double b(int m,int n) { double res; res = a(m)/(a(n)*a(m-n)); return res; } int main() { int m,n; double t; printf("input m n"); scanf("%d %d",&m,&n); t = b(m,n); printf("C(%d,%d) = %lf\n", m,n,t); return 0; }
编写时遇到的报错
[Error] stray ‘\243’ in program
原因:
1.可能在给变量起名时用了汉字
2.存在汉语标点
3.可能存在全角字符
待续。。。。。。。。。。。。。。。
2021年3月12日 20:50:38
排序问题
题目:选择排序:用选择法将10个整数从小到大排序输出
编写时遇到的问题:
虽然很容易看懂,但是自己编写还算是挺困难的,没有想出利用变量将数组前一个数组的值引出
#include<stdio.h> int main() { int a[10],i,j,k,t,n = 10; for(i = 0; i <=n-1;i++) scanf("%d",&a[i]); for(i = 0; i<=n-2;i++) { k = i; for(j = i+1; j<=n-1; j++) //出现改动 i =j { if(a[k]>a[j]) k=j; // a[k] = a[j]错了 } if(k!=i) { t = a[k]; a[k] = a[i]; //a[k] = a[j]改动 a[i] = t; //改动 } } for(i = 0;i<=n-1;i++) { if(i == n-1) printf("%d\n",a[i]); else printf("%d",a[i]); } return 0; }
哈哈哈哈