当前位置:首页 » 编程语言 » c语言输入n个整数题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言输入n个整数题

发布时间: 2022-04-30 20:50:58

A. 在c语言中输入n个整数怎么写

#include<stdio.h>
intmain()
{
intA[2048],B[2048],C[2048],D[2048];
inta,b,c,d;
a=b=c=d=0;
scanf("%d",&a);
for(inti=0;i<a;++i){
scanf("%d",&a[i]);
}
for(intj=0;j<a;++j){
if(a[j]%3==0)B[b]=a[j],b++;
elseif(a[j]%3==1)C[c]=a[j],c++;
elseD[d]=a[j],d++;
}
for(inti=0;i<b;++i){
printf("%d",B[i]);
}
for(inti=0;i<c;++i){
printf("%d",C[i]);
}
for(inti=0;i<d;++i){
printf("%d",D[i]);
}
return0;
}

B. C语言题,在键盘上输入N个整数,试编制程序使该数组中的数按照从大到小的次序排列,要求用冒泡法,选择法

#include <stdio.h>

main()

{

int a[10],i,j,t;

printf("Please input 10 numbers: ");/*输入源数据*/

for(i=0;i<10;i++)

scanf("%d",&a[i]); /*排序*/

for(j=0;j<9;j++) /*外循环控制排序趟数,n个数排n-1趟*/

for(i=0;i<9-j;i++) /*内循环每趟比较的次数,第j趟比较n-j次*/

if(a[i]>a[i+1])

/*相邻元素比较,逆序则交换*/

{ t=a[i];

a[i]=a[i+1];

a[i+1]=t;

}/*输出排序结果*/

printf("The sorted numbers: ");

for(i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n");

}

C. c语言编程题:输入n个整数,将最小数与第一个数对换,把最大数与最后一个数对换。

#include
int main()
{
int a[10];
int i,max,min;
for(i = 0; i < 10; i ++)
scanf("%d",a+i);
max=min=0;
for(i = 1; i < 10; i ++)
{
if(a[max]<a[i]) max=i;
if(a[min]>a[i]) min =i;
}
i = a[max];
a[max]=a[9];
a[9]=i;

i = a[min];
a[min]=a[0];
a[0]=i;

for(i = 0; i < 10; i ++)
printf("%d ",a[i]);
}

D. C语言题目 输入N个整数,求这N个整数中的最大数、最小数和偶数平均数,并输出

将输入的数放在数组A[N]中
Amax = A[0];
Amin = A[0];
Aavr = 0;
j = 0;
for(i=0;i<N;i++)
{
if(A[i]>Amax)
Amax = A[i];
if(A[i]<Amin)
Amin = A[i];
if((A[i]%2) == 0)
{
Aavr += A[i];
j++;
}

}

Aavr = Aavr / j ;

Amax为最大数
Amin为最小数
Aavr为偶数的平均数

E. C语言编程题 输入n个整数 按照从小到大的顺序排列

#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,a[100],i=0,j,temp;
printf("请输入数的个数:");
scanf("%d",&n);
printf("\n请输入要排序的数:\n");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
for(j=i;j<n;j++)
if(a[j]<a[i])
temp=a[i],a[i]=a[j],a[j]=temp;
printf("排序后:\n");
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}

F. C语言,编写程序,在主程序中输入n个整数

#include<stdio.h>

int sort1(int a[],int n)//参数n数组长度

{

int t;

for(int i=0;i<n-1;i++)

for(int j=i+1;j<n;j++)

if(a[i]<a[j])

{

t=a[i];

a[i]=a[j];

a[j]=t;

}

}

int sort2(int a[],int n,int x)//参数n数组长度,x要插入的数

{

a[n]=x;

int t;

for(int i=0;i<n;i++)

for(int j=i+1;j<n+1;j++)

if(a[i]<a[j])

{

t=a[i];

a[i]=a[j];

a[j]=t;

}

}

int main()

{

int n,a[111],x;

scanf("%d",&n);

for(int i=0;i<n;i++)

scanf("%d",&a[i]);//输入n个数

scanf("%d",&x);//要插入的数

sort1(a,n);//调用函数选择排序

for(int i=0;i<n;i++)

printf("%d ",a[i]);//输出第一次排序的结果

printf(" ");

sort2(a,n,x);//调用函数先插入一个数,然后排序

for(int i=0;i<n+1;i++)

printf("%d ",a[i]); //输出第二次排序的结果

return 0;

}

G. c语言编程题:输入n个整数,将最小数与第一个数对换,把最大数与最后一个数对换。用指针变量作函数形参

/******************************** 任意n个整数,将其中最小的数与第一个数对换* ,把最大的数与最后一个数对换* 2014-01-09 20:15 望采纳;)********************************/#include <stdio.h>#define MAXSIZE 100 #define MAX(a, b) (a) >= (b) ? 1 : 0 //判断a是否大于b#define MIN(a, b) (a) <= (b) ? 1 : 0//判断a是否小于b int main(void){ int i, n, dat[MAXSIZE]; int x = 0, y = 0; int max = 0, min = 0X0FFFFFFF; printf("\n请输入n( n < 100 ):"); scanf("%d", &n); printf("\n请输入%d个数据:\n", n); for (i = 0; i < n; i++) { scanf("%d", dat + i); //输入 if ( MAX(dat[i], max) ) { max = dat[i]; //刷新最大值 x = i; //保存最大数在第几位 } else if ( MIN(dat[i], min) ) { min = dat[i];//刷新最小值 y = i; //保存最小数在第几位 } } if ( (x == (n - 1)) && (y == 0) ){ //如果 最大数在最末位且最小为在最前为 } else if ( y == (n - 1) ) { //如果 最小数在最末尾 y = x; dat[n - 1] = dat[n - 1] ^ dat[x]; dat[x] = dat[n - 1] ^ dat[x]; dat[n - 1] = dat[n - 1] ^ dat[x]; //交换 dat[0] = dat[0] ^ dat[y]; dat[y] = dat[0] ^ dat[y]; dat[0] = dat[0] ^ dat[y]; //交换 } else { dat[n - 1] = dat[n - 1] ^ dat[x]; dat[x] = dat[n - 1] ^ dat[x]; dat[n - 1] = dat[n - 1] ^ dat[x]; //交换 dat[0] = dat[0] ^ dat[y]; dat[y] = dat[0] ^ dat[y]; dat[0] = dat[0] ^ dat[y]; //交换 } printf("\n处理后的结果:"); for (i = 0; i < n; i++){ printf(" %d", dat[i]); }//输出 return 0;}

追问
... 我主要想知道 有没有其他方法 不用设定100 啊 1000什么滴 ,除了用malloc 还有其他方法么

追答
C99规范中可以定义动态数组,例如:

1234

n = 5;int a[n];n = 6;int b[n];

首先确定你的编译器支持不支持C99。如果不行的话我在没有多好的办法,只能设为很大很大,或者malloc。望采纳;)

H. C语言程序设计: 任意输入n个整数,分别统计奇数的和、奇数的个数、偶数的和、偶数的个数。

程序为:

#include<stdio.h>

void main()

{

int a[100],i,item,sum1,sum2,item1,item2;//sum1,sum2分别储存奇数、偶数之和,item1,item2分别表示奇数、偶数的个数

printf("请输入所要输入整数的个数:");

scanf("%d",&item);

printf("请输入%d个整数: ",item);

for(i=0;i<item;i++)

scanf("%d",&a[i]);

sum1=sum2=item1=item2=0;

for(i=0;i<item;i++)

{

if(a[i]==0) item2++;//0是特殊偶数

else if(a[i]%2==0)

{

sum2=sum2+a[i];

item2++;

}

else

{

sum1=sum1+a[i];

item1++;

}

}

printf("奇数之和为:%d,偶数之和为:%d ",sum1,sum2);

}

(8)c语言输入n个整数题扩展阅读:

for表达式

表达式1:一般为赋值表达式,给控制变量赋初值;

表达式2:关系表达式或逻辑表达式,循环控制条件;

表达式3:一般为赋值表达式,给控制变量增量或减量。

语句:循环体,当有多条语句时,必须使用复合语句。

I. C语言如何输入n个整数定义到字符串中

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#defineN256//宏定义

intmain()
{
charstrArray[N][256];
char*str[N];
char*temp;
inti,n;

printf("请输入字符串:\n");
for(i=0;i<N;i++)
{
gets(strArray[i]);

if(strcmp(strArray[i],"")==0)//空格串作为字符串输入结束符
{
break;
}
str[i]=strArray[i];
}

J. C语言编程题,输入N 个正整数(10 < Ν ≤20 )存入数组 a 中,输出 a 中的最大值

#include "stdafx.h"

#include <iostream>

using namespace std;



int main()

{

int N=1;

int num[20] = { 0 };

int max, min, sum=0;

float ava=0;

while (!(N > 10 && N <= 20))

{

cout << "请输入N的值:" << endl;

cin >> N;

}

cout << "请输入N个正整数,回车键结束!" << endl;

for (int i = 0; i < N; i++)

cin >> num[i];

max = num[0];

min = num[N - 1];

for (int i = 0; i < N; i++)

{

if (num[i] > max)

max = num[i];

if (num[i] < min)

min = num[i];

sum += num[i];

}

ava = (float)sum / N;

cout << "最大数:" << max << endl;

cout << "最小数:" << min << endl;

cout << "总数:" << sum << endl;

printf("平均数:%.2f", ava);

//cout << "平均数:" << ava << endl;


system("pause");

return 0;

}