#include<stdio.h>
int main()
{
inti;
for(i=1i<=8i++)
printf("1234567890\n");
return0;
}
扩展资料:
for 循环语句的一般形式为:
for (表达式1; 表达式2; 表达式3)
{
语句;
}
首先要强调两点:
1) 表达式1、表达式2和表达式3之间是用分号;隔开的,千万不要写成逗号。
2) for(表达式1;表达式2;表达式3)的后面千万不要加分号,很多新手都会犯这种错误——会情不自禁地在后面加分号。
因为 for 循环只能控制到其后的一条语句,而在C语言中分号也是一个语句——空语句。所以如果在后面加个分号,那么 for 循环就只能控制到这个分号,下面大括号里面的语句就不属于 for 循环了。
#include <stdio.h>#include <string.h>
void my_itoa(unsigned long int m, char a[], int p){
int i=0
while(m>0) {
a[i]=m%p+'0'
m=m/p
i=i+1
}
a[i]=0
int n=i
int j
int mid =n/2
for(i=0,j=n-1i<midi++,j--) {
if(a[i] != a[j]) a[i]=(a[i]+a[j])-(a[j]=a[i])
}
return
}
int isCircle(unsigned long int m) {
if(m>0 && m<10) return 1
char a[32]
my_itoa(m,a,10)
if(strstr(a,"0")) return 0
int n=strlen(a)
int i,j
for(i=1i<ni++) {
for(j=0j<ij++) {
if(a[i]==a[j]) return 0
}
}
int visited[n]
for(i=0i<ni++) visited[i]=0
visited[0]=1
int start=0
int end= (a[start]-'0'+start)%n
while(visited[end]==0) {
visited[end]=1
start=end
end=(a[start]-'0'+start)%n
}
for(i=0i<ni++) {
if(visited[i]==0) return 0
}
return end==0
}
int main(int argc, char* argv[]) {
unsigned long m
while(scanf("%u",&m)!=EOF) {
while(!isCircle(++m))
printf("%u\n",m)
}
return 0
}
1.根据次数循环输入 根据循环次数输入 首先输入循环次数,然后可进行多次输入,注意:循环条件是n --,而不是 – n具体区别是n --的值是n,而-- n的值是n-1,这样导致-- n的循环次数会少1#include<stdio.h>intmain(intargc,charconst*argv[]){intnintwscanf("%d",&n)//确定循环n次while(n--){//while循环条件是括号中的值不为0则进行循环,所以直接每次循环后都减一printf("%d循环\n",n)scanf("%d",&w)printf("%d\n",w)}return0}
2.
根据条件循环输入 1.死循环输入 while循环条件是括号中的值为不为0则进行循环,所以直接为