编写简单的单片机c语言程序 1、指定数组找最大值 2、排序
来源:网络收集 点击: 时间:2024-02-23#includestdio.h
#defineNR10//数组元素个数
/*从主函数开始*/
intmain(intargc,char**argv)
{
intar;
inti;
fprintf(stdout,请输入%d个整数:\n,NR);
/*获取并检查用户输入*/
while(1)
{
/*循环获取NR个数据*/
for(i=0;iNR;i++)
{
if(fscanf(stdin,%d,ar)!=1)
{
fprintf(stdout,输入错误!请重新输入:\n);
while(getchar()!=\n);//丢弃多余非法字符
break;//打破内层for循环
}
}
/*检查是否获取到NR个数据*/
if(i!=NR)
{
continue;
}
else
{
break;
}
}
/*查找最大值和最小值*/
intmax,min;
max=ar;//假定第一个数为最大值
min=ar;//同时假定也第一个数为最大值
/*从第二个数开始比较查找最值*/
for(i=1;iNR;i++)
{
if(armax)//最大值
{
max=ar;
}
if(armin)//最小值,不能使用elseif,否则会跳过比较
{
min=ar;
}
}
fprintf(stdout,最大值为:%d最小值为:%d\n,max,min);
/*接下来:查找第二大值*/
intsecond;
/*先获取前两个数的第一大和第二大值*/
arar?(max=ar,second=ar):\
(max=ar,second=ar);
/*从第2个数开始比较查找*/
for(i=2;iNR;i++)
{
if(armax)//查找最大值:目的是为了比较第二大值
{
second=max;//先把最大值保存给第二大值
max=ar;
}
elseif(secondar)//比最大值小的数再看看是否大于第二大值
{
second=ar;
}
}
fprintf(stdout,第二大值为:%d\n,second);
return0;
}
扩展资料
一、c语言程序求数组内所有数的和:
1、通过索引的方式就可以访问到数组内部的元素,索引是从0到数组长度-1。
2、数组点Lenth就是数组的长度。
二、c语言程序冒泡排序:
1、比较相邻的两个元素的大小,如果第一个比第二个大就互换一下。
2、然后每一对都做如上操作,如此一来最后一个元素肯定是最大的数了。
3、除了最后一个元素,重复以上步骤。然后倒数第二个就是次大的值了
4、一次按照这个逻辑直到没有任何数字可以比较了。
参考资料来源:百度百科—c语言
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_113918.html