C语言,在一维数组中存入10个整数并排序,其中数据的输入,排序和输出功能自定义函数实现
#include
const int MAXSIZE = 10;
void input(int a[], int n) {
int i;
printf("输入 %d 整数(空格隔开):
",n);
for(i = 0; i < n; ++i)
scanf("%d",a[i]);
}
void mysort(int a[], int n) {
int i,j,k,t;
for(i = 0; i < n - 1; ++i) {
k = i;
for(j = i + 1; j < n; ++j) {
if(a[k] > a[j]) k = j;
}
if(i != k) {
t = a[i];
a[i] = a[k];
a[k] = t;
}
}
}
void show(int a[], int n) {
int i;
for(i = 0; i < n; ++i)
printf("%d ",a[i]);
printf("
");
}
int main() {
int a[MAXSIZE];
input(a,MAXSIZE);
printf("排序前:
");
show(a,MAXSIZE);
mysort(a,MAXSIZE);
printf("排序后:
");
show(a,MAXSIZE);
return 0;
}
#include
using namespace std;
void BubbleSort(int *pData,int Count)
{
int iTemp;
for(int i=1;i<Count;i++)
{
for(int j=Count-1;j>=i;j--)
{
if(pData[j]<pData[j-1])
{
iTemp=pData[j-1];
pData[j-1]=pData[j];
pData[j]=iTemp;
}
}
}
};
void Input(int *pData){
for(int i=0;i<10;++i)
cin>>pData[i];
}
void Show(int *pData){
for(int i=0;i<10;++i)
cout<<pData[i]<<" ";
cout<<endl;
}
void main()
{
int data[10];
Input(data);
BubbleSort(data,7);
Show(data);
}
纯手打 望采纳
#include<stdlib.h>
#define N 10
#define ShengXu 0
void input(int a[],int n)
{
int i;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
}
void output(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
void sort(int a[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++)
{
for(j=0;j<n-1-i;j++)
{
if(1==ShengXu)
{
if(a[j]>a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
else
{
if(a[j]<a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
}
}
int main()
{
int a[N];
input(a,N);
sort(a,N);
printf("%s排序后,数组各元素是:\n",(1==ShengXu ? "升序" : "降序"));
output(a,N);
printf("\n");
system("PAUSE");
return 0;
}
在一维数组的定义语句中,数组名后带有一对中括号
是的,在一维数组的定义语句中,数组名后通常带有一对中括号。在多数编程语言中,数组是一种用于存储同一类型数据元素的数据结构,每个元素可以通过其索引进行访问。数组的基本特点是可以使用连续的内存空间来存储元素,这使得访问特定元素变得非常快速。对于一维数组,其定义通常包括数组名、数组类型以及表示数...
c语言中输入一个数,在一维数组中查找,并输出它的地址,求大神
if(k==-1)printf(“你输入的 %d 不在数组中。”,c);else printf(“%d 是第 %d 个数,地址是 %x 。”,c,k,&a[k]);}
求!C语言一维数组编程:在一维数组中查找一个指定的值,找到返回其位置序 ...
if(R[mid].key>K)high=mid-1;\/\/继续在R[low..mid-1]中查找 else low=mid+1;\/\/继续在R[mid+1..high]中查找 } if(low>high)return-1;\/\/当low>high时表示查找区间为空,查找失败 }\/\/BinSeareh 修改了下 适应数组 intBinSearch(int *R,intn,KeyTypeK){ \/\/在有序表R[0..n-...
在一维数组中删除值为x的元素(用初学的c语言)
假设x=3 int main(){ int i,j,s=0,a[5]={1,2,3,4,5},x=3;for(i=0;i<5;i++)if(a[i]==x){ s++;for(j=i;j<5-s;j++){ a[j]=a[j+1];} } for(i=0;i<5-s;i++)printf("%d ",a[i]);}
C语言:找出100以内的所有素数,存放在一维数组中,并将所找到的素数按每...
C语言:找出100以内的所有素数,存放在一维数组中,并将所找到的素数按每行10个数的形式输出。 简单点,谢谢!le斑 | 浏览4064 次 |举报 我有更好的答案推荐于2017-12-15 09:32:47 最佳答案 素数,于是100以内的素数应该少于50个,我们就以a[50]来存放这些素数吧.还有1不是素数。main(){ int a[50]; int...
【C语言】编写程序,将一维数组中的元素向右循环移动N次。
题目描述编写程序,将一维数组中的元素向右循环移动N次。输入第一行整数n,表示数组大小为n第二行,n个数,表示数组中的n个元素。第三行,整数N,表示数组向右移动N次。输出移动后的数组元素,每个元素后跟空格。样例输入5 1 2 3 4 5 2样例输出... 展开 ...
c 语言中查找一个值在一个一维数组中是否存在 如果存在 得出它的下标...
find(67,arr,6)); printf("99在数组中的索引是:%d\\n",find(99,arr,6)); char c; scanf("%c",&c);\/\/这句是为了防止控制台退出 return 0;}算法思路1、定义一个方法,用于查找指定数组中的值并返回找到处索引;2、在main中定义数组变量并调用查找方法输出结果;这是在Visual ...
C语言中把一个五位数放进一维数组怎么放?
要将一个五位数放入一维数组中,你可以将该五位数的每一位数字分别存储在数组的不同位置上。以下是一个示例代码:include <stdio.h> int main() { int number = 12345;int array[5];\/\/ 将五位数的每一位数字存储到数组中 for (int i = 0; i < 5; i++) { array[i] = number % 10...
C语言,编写find函数,在一维数组x中查找是否有key,若有返回该数组元素下...
include<stdio.h>int find(int *a,int n,int key)\/\/int a[10]里的10没有意义,直接写int a[]或int *a,一个意思 { int i;for(i=0;i<n;i++){if(a[i]==key)return i;}return -1;\/\/我觉得返回-1更合理,非要返回1的话你自己改吧 }void main(){int n,i,m;int a[10];...
在C语言中,如何统计一维数组中重复频率最多次的元素,(数组中可能存在多...
struct VALUE_INFO { int nValue;int nCount;struct VALUE_INFO *pNextInfo;};void main(){ unsigned short arr[] = {1, 2, 2, 4, 5, 6, 6, 6, 6, 7, 8, 8, 9};int MAX_SIZE = sizeof(arr) \/ sizeof(short);struct VALUE_INFO *pHeadInfo = NULL, *pEndInfo = NULL, ...
潜都利胆: #include<iostream> using namespace std; int a[11],ans; int main() {for(int i=1; i<=10; i++){cin>>a[i];if (a[i]%2!=0) ans=ans+a[i];}cout<<ans<<endl;return 0; } 思路很简单,读入十个数,判断是否能被2整除,如果不能就是奇数,则ans累加上去,最后输出ans就行了.望采纳
昌宁县19442093050: C语言 输入10个整数到1维数组中,输出其中最大数 - ?
潜都利胆: 没看到是c,再来一次 #include <stdio.h> int main(void) { int a[10]; int max; for (int i=0;i<10;i++) { scanf("%d",&a[i]); } max=a[0]; for (int i=1;i<10;i++) { if (max<a[i]) max=a[i]; } printf("%d",max); return 0; }
昌宁县19442093050: C语言编程输入10个数据放入一维数组中C语言编程:输入10个数据 ?
潜都利胆: /*本程序使用简单选择法排序(从小到大)*/ #include #include #include void main() { int a[10],i,j,k,num; for(i=0;i
昌宁县19442093050: c语言"定义一维数组x,有十个元素,整数;输入十个整数;计算并且输出每一次的累加和" - ?
潜都利胆: 帮你现写了一个如下: #include <stdio.h>int main() {int i,a[10];int sum = 0;for(i=0;i<10;i++){printf("请输入第%d个整数:",i+1);scanf("%d",&a[i]);sum += a[i];printf("第%d次累加和为:%d\n\n",i+1,sum);}return 0; }运行结果如下:
昌宁县19442093050: 1. 编写c程序完成从键盘输入10个整数存入一维数组中,计算奇数元素之和及偶数元素之和 - ?
潜都利胆: #define N 10 main() { int a[N]; int i,t,sum1=0,sum2=0; for (i=0;i<N;i++ )scanf("%d",&a[i]); for (i=0;i<N;i++ ) if(a[i]%2!=0) sum1+=a[i]; else sum2+=a[i];printf("%d,%d",sum1,sum2); }
昌宁县19442093050: C语言编程序,要求从键盘输入10个整数存入一维数组.. - ?
潜都利胆: #include<stdio.h> void main(){ int num[10],i,j,temp; for(i=0;i<10;i++){ printf("请输入第%d个数:"); scanf("%d",&num[i]); }
昌宁县19442093050: c语言问题 通过键盘将10个整数输入到一维数组中,并把该数组中所有偶数放另外一个数组中 - ?
潜都利胆: #include int main() {int a[10];int b[10];int*pa=a;int*pb=b;int cnt=0;printf("输入:");while(pa-a<10){scanf("%d",pa);if((*pa)%2==0){*pb++=*pa;cnt++;}pa++;}pb=b;printf("\nb数组:");while(pb-b {printf("%d ",*pb);pb++;}return 0; }
昌宁县19442093050: C语言,从键盘输入10个整数给一维数组a,输出这10个元素的值,求元素之积 - ?
潜都利胆: #include "stdio.h" void main() {int i,b=1,a[10];for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++) printf("10个数是:=%d\n",a[i]); for(i=0;i<10;i++) b*=a[i];printf("10个数的乘积=%d\n",b); }
昌宁县19442093050: 用c语言编程,从键盘上输入10个整数存放到一维数组中,输出其中最大的数及其对应的数组下标值 - ?
潜都利胆: #include<stdio.h> int main() { int i; int max=0; int index=0; int a[10]={}; for(i=0;i<10;i++) { printf("请输入第%d个整数:",i+1); scanf("%d",&a[i]); if(a[i]>max) { max=a[i]; index=i; } } printf("输入的最大的数是:%d,对应下标是:%d\n",max,index); return 0; }
昌宁县19442093050: C语言:从键盘输入10个整数,存入数组中,再将该数组中数在同一数组中反向存放,然后输出. - ?
潜都利胆: #include "stdio.h" main() {int a[10],i,temp;printf("请输入10个整数,以空格隔开:");for(i=0;i<10;i++){scanf("%d",&a[i]);} for(i=0;i<5;i++){temp=a[i];a[i]=a[9-i];a[9-i]=temp;}printf("\n反序输出为:");for(i=0;i<10;i++)printf("%d\t",a[i]); }