-
-
0OJ上大数阶乘的问题,我编了个程序,但运行后发现只能算33以下的阶乘,大于33后阶乘结果没法正确输出,自己没捡查出来是哪里出了问题,遂来吧里咨询老师和同学们。 程序: #include<stdio.h> int main() { int i,j,n,reminder,digit,temp,k; int a[10000]; scanf("%d",&n); a[0]=1;digit=1; for(i=2;i<=n;i++) { for(reminder=0,j=1;j<=digit;j++) { temp=a[j-1]*i+reminder; a[j-1]=temp%10; reminder=temp/10; } while(reminder>0) { digit++; a[digit-1]=reminder; reminder=0; } } for(k=digit;k>=1;k--) { printf("%d&q
-
2
-
0fatal error:conio.h:没有那个文件或目录 linux的vim编译器
-
12我原先的代码是这样的: #include<stdio.h> #define MAXLINE 1000 #include<math.h> #include<ctype.h> int htoi(char s[]) { int i=2,j,c,n; for(j=0;s[j]!='\n'&&s[j]!='\0';j++) ; for(i=2;i<=j;i++) { c=s[i]; switch(c) {case 'a':case 'A': n=n+10*pow(16,j-i-1); break; case 'b':case 'B': n=n+11*pow(16,j-i-1); break; case 'c':case 'C': n=n+12*pow(16,j-i-1); break; case 'd':case 'D': n=n+13*pow(16,j-i-1); break; case 'e':case 'E': n=n+14*pow(16,j-i-1); break; case 'f
-
3编写函数any(s1, s2),将字符串s2中的各个字符在字符串s1中第一次出现的位置作为结果输出: 输出结果为0表示错误,可是不知如何修改?大神和助教哥哥求教 #include<stdio.h> int any(char s1[], char s2[]) { int i, j; for(i = 0; s1[i] != '\0'; i++){ for(j = 0; s2[j] != '\0'; j++) if(s1[i] == s2[j]) return i; return -1; } } int main() { char s1[50]; char s2[50]; scanf("%d %d", &s1, &s2); printf("%d", any(s1, s2)); }
-
11.本贴吧用于助教对C语言课程同学的提问回答。 2.在提问前,请在吧内搜索查看是否问题已经有人问过。 3.请在问题前加上【提问】字样,以提示助教此贴是问题贴。 4.助教将会定时对问题进行解答,同学们也可以相互解答。
-
0亲爱的各位吧友:欢迎来到果壳c100