#include<stdio.h> int baoshuFinish(int* a,int n) { int flag=0; for(int i=0;i<n;i++){ if(a[i]==1){flag++;} } return flag; } int baoshu(int n) { int a[n]; for(int i=0;i<n;i++){ a[i]=1; } int i=-1; while(baoshuFinish(a,n)!=1){ for(int j=0;j<3;j++){ do { i++;i%=n; }while(a[i]==0); while(a[i]==0){ i++;i=i%n; } } a[i]=0; } int save; for(int i=0;i<n;i++){ if(a[i]==1){save=i+1;} } return save; } int main() { int n; scanf("%d",&n); printf("%d",baoshu(n)); }
#include <stdio.h> int main() { int i, n, temp, t; scanf("%d", &n); int a[n ]; for (i = 1; i <= n; i++) { if (i % 3 == 0) { temp = i; } } if (temp = n) { temp -= 1; }else if (n%temp==1) { temp = n; } printf("%d", temp); return 0; } 为啥这个只有50分彦祖们帮忙看下
dotcpp0712666 2023-12-13 13:24:12 |
理解错了,没事了
#include <stdio.h> int main() { int a,b,c=0; int sz[50]; scanf("%d",&a); for(b=0; b<a; b++){ sz[b]=b+1; } int d=a; while(d>1){ for(b=0; b<a; b++){ if(sz[b]!=0){ c++; if(c==3){ sz[b]=0; c=0; d--; } } } } for(b=0; b<a; b++){ if(sz[b]!=0) printf("%d",sz[b]); } return 0; }
#include<stdio.h> int main() { int a,e=0,f; scanf("%d", &a); int c = 1, b[100], i,d; for (i = 0; i < a; i++) { b[i] = i+1; } i = 0; while (e!=1) { e = 0; d = i % a; if (c != 3 && b[d] != -1) c++; else if (c == 3&&b[d]!=-1) { b[d] = -1, c = 1; } for (f = 0; f < a; f++) { if (b[f] != -1) e++; } i++; } for (i = 0; i < a; i++) { if (b[i] != -1) { printf("%d", b[i]); break; } } return 0; }
为什么第一个数组的方法可以int a[n],这个n不是变量吗,而且我的devc++还能编译运行????
current为什么要等于-1,为什么不能直接让它等于0后面current=current%n?
链表这里我有个问题,按照我的理解,Node和*List都是结构体的别名,那么头节点Node *t = (Node *)malloc(sizeof(Node)); 是不是等同于List t = (List)malloc(sizeof(Node)); 呢
不惧黑夜 2022-08-29 22:39:46 |
一样吧 我觉得
ashinchen5 2022-10-21 14:48:42 |
这里只是为了方便阅读,创建节点的时候用Node,表的时候用List
大神老白 (C语言代码)浏览:691 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:700 |
【蟠桃记】 (C语言代码)浏览:697 |
简单的for循环浏览:1495 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:760 |
The 3n + 1 problem (C语言代码)浏览:603 |
用筛法求之N内的素数。 (C语言代码)浏览:711 |
C二级辅导-等差数列 (C语言代码)浏览:891 |
简单的a+b (C语言代码)浏览:617 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:639 |