黑马程序员_C语言循环
来源:互联网 发布:国际域名和国内域名 编辑:程序博客网 时间:2024/05/17 05:18
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
循环是C语言的三种基本结构之一,在很多问题中都需要用到循环控制,如1~100之间不能够被7整除的数的和,如果不使用循环的话,我们只能先把1~100不能被7整除的数找出来,然后再求出它们之和,但如果使用循环的话,可以让程序语句从1开始循环,只要是不能够被7整除的数都将被输出并计算累加和,执行完最后一次循环操作后,就能够得到最终结果,这个时候就使用循环语句就很有必要。
#include <stdio.h>
int main(int argc,constchar * argv[]) {
int i=1,sum=0;
while (i<=100) {
sum=sum+i;
i++;
}
printf("1+2+3+...+100=%d\n",sum);
}
b.使用do...while循环
#include <stdio.h>
int main(int argc,constchar * argv[]) {
int i=1,sum=0;
do
{
sum=sum+i;
i++;
}
while(i<=100);
printf("1+2+3+...+100=%d\n",sum);
}
c.使用for循环
#include <stdio.h>
int main(int argc,constchar * argv[]) {
int sum=0;
for(int i=1;i<=100;i++)
sum=sum+i;
printf("1+2+3+...+100=%d\n",sum);
}
三种语句最后的输出结果都是5050,可以看到for循环代码量最少,而且书写格式更规范,可以避免遗漏变量初始化等问题。当然循环中可以嵌套条件语句,也可以嵌套循环语句。
3.循环的嵌套使用
循环中嵌套循环语句可以解决判断较多,多次使用循环的问题,但是要注意在使用嵌套语句时使用break和continue语句:
(1).break语句为从循环体内跳出循环体,提前结束循环;
(2).continue语句为跳过循环体中本次尚未执行的语句,接着进行下一次循环;
我们看两个实例:
实例1.求1~100之内不能被7整除的数(循环中嵌套条件语句)
#include <stdio.h>
int main(int argc, const char * argv[]) {
int num;
int sum =0;
//使用for循环对不能被7整除的数进行累加
for (num=1;num<=100 ; num++)
{
if (num%7==0)
//循环过程中如果碰到能被7整除的数就跳出本次循环,使用continue
continue;
sum=sum+num;
}
printf("1-100之间不能够被7整除的数的和为%d\n",sum);
}
#include <stdio.h>
int main()
{
int num[10]={};
int i;
int len=sizeof(num)/sizeof(int);
for (i=0; i<10; i++)
{
printf("请输入数组的第%d个数据\n",i+1);
// 输入数组元素
scanf("%d",&num[i]);
}
//打印数组元素
for(i=0;i<len;i++)
{
printf("%d ",num[i]);
}
printf("\n");
int c;
//外循环每次都比较出len-d中的最大数
for(int d=0;d<len-1;d++)
{
/*定义p=1为了num[1]与num[0]比较,第一轮比较len-1次,
第二轮比较len-2次,第三轮比较len-3次,因此此处for的循环限制条件可写为:len-d
*/
for(int p=1;p<len-d;p++)
//如果后一个数小于前一个数,交换位置,把大的数往后排
if(num[p]<num[p-1])
{
c=num[p-1];
num[p-1]=num[p];
num[p]=c;
}
}
//打印排序后的数组位置
for(i=0;i<10;i++)
{
printf("%d ",num[i]);
}
return 0;
}
- 黑马程序员_C语言循环
- 黑马程序员_C语言_循环结构
- 黑马程序员_C#语言中各种循环的优缺点
- 黑马程序员_C语言冒泡算法和约瑟夫循环分析
- 黑马程序员_C语言概述
- 黑马程序员_C语言基本概念
- 黑马程序员_C语言指针
- 黑马程序员_C语言typedef
- 黑马程序员_C语言基础
- 黑马程序员_C语言基础
- 黑马程序员_C语言复习
- 黑马程序员_C语言指针
- 黑马程序员_C#循环语句的学习
- 黑马程序员_C语言基础_循环结构使用区别,9*9口诀表
- 黑马程序员_C#语言基础知识概括
- 黑马程序员_C语言结构体
- 黑马程序员_C语言的数据类型
- 黑马程序员_C语言的函数
- Android Fragment 真正的完全解析
- 云计算基础知识第二讲:云分类及服务模式
- 【02】常用关键字,常量和变量,运算符,判断语句
- Drools5集成Spring3
- Hbase 知识点记录总结(1)
- 黑马程序员_C语言循环
- 云计算基础知识第三讲:云计算的产生和特点
- 将一条长链接转成短链接。
- [Python] DNS-Related Python Program
- js 图形 http://www.bootcss.com/p/chart.js/
- ios面试题汇总
- 云计算基础知识第四讲:虚拟化概念及相关概念介绍
- Android键盘将布局顶上去的解决办法
- java按照map的value排序