返回

C语言---循环结构

发布时间:2023-05-08 18:06:35 226

一、goto语句

 1、求100以内3的倍数之和

#include
//求100以内3的倍数之和
//sum=3+6+9...+99;
int main()
{
int sum = 0;
int i = 3;
loop:
sum = sum + i;
i += 3;
if (i <= 100)
{
goto loop;
}
printf("%d\n", sum);
}

二、while语句

2、用while循环来实现: 逆序输出一个非负数的值。

#include
// 用while循环来实现: 逆序输出一个非负数的值。
int main()
{
int a, b = 0;
scanf("%d", &a);
while (a)
{
b = b * 10 + a % 10;
a = a / 10;
}
printf("%d\n", b);
}

三、do...while语句

3、求n!

#include
// 求n!(n是由用户输出)
int main()
{
int n;
int i =1;
int s = 1;
scanf("%d", &n);

do
{
s = s*i;
i++;
}
while(i <= n);

printf("%d! == %d\n", n, s);
}

四、for语句

4、打印所有的“水仙花数”。水仙花数 是一个三位数,并且这个三位数它的个位、十位、百位上的数字的立方之和  等于其本身

#include
// 打印所有的“水仙花数”。水仙花数 是一个三位数,
//并且这个三位数它的个位、十位、百位上的数字的立方之和 等于其本身
int main()
{
int a,b,c;
int i;
for(i=100;i<1000;i++)
{
a=i%10;//个位
b=i/10%10;//十位
c=i/100;//百位
if((a*a*a+b*b*b+c*c*c)==i)
{
printf("%d\n",i);
}
}
}

5、计算自己活了多少天

#include 

/*
Is_RunYear: 判断一个年份是否为闰年
@year : 年份
返回值:
1 => 闰年
0 => 平年
*/
int Is_RunYear(int year)
{
if((year % 4== 0 && year % 100 != 0) || (year % 400 == 0))
{
return 1;
}
else
{
return 0;
}
}


/*
Get_Days: 用来求一个日期到当年年末的天数
@y, m , d : 输出参数分别代表 年月日
返回值:
天数 => int

*/
int Get_Days(int y, int m , int d)
{
int d1 = 0;
switch(m)
{
case 1:
d1 += 31;
case 2:
d1 += 28;
if(Is_RunYear(y))
{
d1 += 1;
}
case 3:
d1 += 31;
case 4:
d1 += 30;
case 5:
d1 += 31;
case 6:
d1 += 30;
case 7:
d1 += 31;
case 8:
d1 += 31;
case 9:
d1 += 30;
case 10:
d1 += 31;
case 11:
d1 += 30;
case 12:
d1 += 31;
}
d1 -= d;

return d1;
}



/*
写一个程序,计算一下自己活了多少天!!
*/
int main()
{
int y,m,d;
int year,month,day;
int days = 0; //结果天数
int d1,d2,d3;
d1 = d2 = d3 = 0;

scanf("%d-%d-%d", &y, &m, &d);
scanf("%d-%d-%d", &year, &month, &day);

d1 = Get_Days( y, m, d);

int i;
for(i = y+1; i <= year; i++)
{
if(Is_RunYear(i))
{
d2 += 366;
}
else
{
d2 += 365;
}
}

d3 = Get_Days( year, month, day);

days = d1 + d2 - d3;
printf("%d-%d-%d到%d-%d-%d有%d天!\n", y,m,d, year,month,day, days);

}

6、判断一个数是否为质数

#include

int main()
{
int a,f=1;
scanf("%d",&a);
for (int i = 2; i <= a-1; i++)
{
if (a % i == 0)
{
f = 0;
break;
}
}
if (f == 1)
{
printf("为质数\n");
}
else
{
printf("不是质数\n");
}
}
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
一道set例题 2023-05-08 14:55:31