4个回答
展开全部
格式化输入数据使用stdio.h中提供的scanf函数就可以。原型:
int scanf(const char *format,...);
scanf() 是从标准输入流stdio (标准输入设备,一般是键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
对于这n个整数,如果规模比较大的话,可以使用malloc申请堆空间来存储。malloc函数在stdlib.h中声明,它只有一个参数:要申请的空间大小,申请成功返回指向这块空间的指针,失败返回NULL。
代码如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, i;
int *arr;
scanf("%d", &n);
arr = malloc(sizeof(int) * n);
for (i = 0; i < n; i++)
scanf("%d", arr + i);
free(arr);
return 0;
}
展开全部
第一行输入一个整数,很容易操作,直接scanf即可。
但是在第二行输入n个整数,并且赋值给一个整数数组,则不能直接实现,只能先把第二行输入的所有的数存入字符串,然后根据第一行输入的数,使用一个循环把字符串解析,然后挨个向整数数组赋值。
或者每输入一个整数,回车进行赋值。
但是在第二行输入n个整数,并且赋值给一个整数数组,则不能直接实现,只能先把第二行输入的所有的数存入字符串,然后根据第一行输入的数,使用一个循环把字符串解析,然后挨个向整数数组赋值。
或者每输入一个整数,回车进行赋值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int n;
int a[1024];
printf("输入多少个数:");
scanf("%d",&n);
printf("输入他们:");
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
{
int temp;
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
for(int i=0;i<n;i++)
{
printf("%d ",a[i]);
}
printf("\n");
for(int i=0;i<n;i++)
printf("%d的序号是%d ",a[i],i);
printf("\n");
system("pause");
}
void main()
{
int n;
int a[1024];
printf("输入多少个数:");
scanf("%d",&n);
printf("输入他们:");
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
{
int temp;
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
for(int i=0;i<n;i++)
{
printf("%d ",a[i]);
}
printf("\n");
for(int i=0;i<n;i++)
printf("%d的序号是%d ",a[i],i);
printf("\n");
system("pause");
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void
main()
{
int
n;
int
a[1024];
printf("输入多少个数:");
scanf("%d",&n);
printf("输入他们:");
for(int
i=0;i<n;i++)
scanf("%d",&a[i]);
for(int
i=0;i<n;i++)
for(int
j=i+1;j<n;j++)
{
int
temp;
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
for(int
i=0;i<n;i++)
{
printf("%d
",a[i]);
}
printf("\n");
for(int
i=0;i<n;i++)
printf("%d的序号是%d
",a[i],i);
printf("\n");
system("pause");
}
void
main()
{
int
n;
int
a[1024];
printf("输入多少个数:");
scanf("%d",&n);
printf("输入他们:");
for(int
i=0;i<n;i++)
scanf("%d",&a[i]);
for(int
i=0;i<n;i++)
for(int
j=i+1;j<n;j++)
{
int
temp;
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
for(int
i=0;i<n;i++)
{
printf("%d
",a[i]);
}
printf("\n");
for(int
i=0;i<n;i++)
printf("%d的序号是%d
",a[i],i);
printf("\n");
system("pause");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询