导航:首页 > 源码编译 > gcc编译选项排序

gcc编译选项排序

发布时间:2024-08-22 12:17:51

Ⅰ 鍏充簬linux gcc c89 c99镄勯梾棰

瀵癸纴C99镄勬柊鐗规у厑璁稿湪鏁扮粍闀垮害琛ㄨ揪寮忎腑浣跨敤鍙橀噺锛岀О涓哄彉闀挎暟缁勶纸VLA锛孷ariable Length Array锛夛纴VLA鍙鑳藉畾涔変负灞閮ㄥ彉閲忚屼笉鑳芥槸鍏ㄥ眬鍙橀噺锛屼笌VLA链夊叧镄勮娉曡勫垯姣旇缉澶嶆潅锛岃屼笖寰埚氱紪璇戝櫒涓嶆敮鎸佽繖绉嶆柊鐗规э纴镓浠ヨ缮鏄涓嶅缓璁浣跨敤镄勚

璇磋翠綘杩欎釜渚嫔瓙钖э纴浣犺繖涓鍏跺疄涓嶅睘浜庡彉闀挎暟缁勶纴锲犱负鍦ㄥ畾涔夋暟缁 arr[] 鍓嶏纴瀹幂殑澶у皬 var 宸茬粡鏄锲哄畾镄勪简銆傚簲璇ユ槸杩欐牱锛
int var;
int arr[var];
鍏堜笉瑕佸埯濮嫔寲鍙橀噺 var銆

鎴戝啀缁欎釜渚嫔瓙钖э纴銆奓inux C缂栫▼涓绔椤纺瀛︿範銆嬮噷闱㈠叧浜庡綊骞舵帓搴忕畻娉旷殑鍏朵腑涓涓鍑芥暟銆
void merge(int start, int mid, int end)
{
int n1 = mid - start + 1;
int n2 = end - mid;
int left[n1], right[n2];
......
}
鍏朵腑锛宭eft涓巖ight閮芥槸鍙橀暱鏁扮粍锛屽洜涓哄湪瀹氢箟镄勬椂鍊欙纴鏁扮粍澶у皬涓岖‘瀹氥

Ⅱ C语言,学生成绩排序,用VC能输出正确的结果,但学校的编译器是g++,总提示无效内存引用,求助!!!!

for(a[i][c]<a[1][i]) c = i;
//首先说说 a[2][20];
1.scanf("%d",&n);//n最好先初始化一下,输入无效值“s”,n的值乱七八糟的。
2.若n的值超过20,数组是不是越界了,可以这样 n = n>20?20:n;
//其次说说if(a[i][c]<a[1][i]) c = i;
若a[1][0] < a[1][1] c = 1;
若a[1][0] < a[1][2] c = 2;
..........................;
若a[1][0] < a[1][arraysize] c = arraysize;
for(a[i][c]<a[1][i]) c = i;//不明白要做什么。
//最后可以定义一个结构体。
struct _student
{
int stu_no;
int stu_grade;
};
#define ARRAY_SIZE 20;
_student stu[ARRAY_SIZE];
信息:给每个结构体赋给学生成绩和序号,
排序:小量数据可以用冒泡排序法排序,
输出: 把结构体数据输出就完成这个功能了。



vc6.0的语法没有gcc严谨


建议同学遵守下变量的命名规则吧。

个人觉得,一个二维数组信息放序号跟成绩,这个真是很奇怪的事情。

代码我没有怎么看,看不懂莫怪。


上面是见到一些错误和给出的建议。希望对你有帮助。

Ⅲ c语言编程:对10个数冒泡排序(升序)。

#include<stdio.h>

intmain(){

intnumber[10]={95,45,15,78,84,51,24,12,34,23};

for(int j=0;j< 9;j++)

for(int i=0;i< 9 -j;i++) {

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

int temp=a[i];

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

a[i+1]=temp; }

}

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

printf(“%d”,a[i]); }

}

插入排序

已知一组升序排列数据a[1]、a[2]、……a[n],一组无序数据b[1]、b[2]、……b[m],需将二者合并成一个升序数列。

首先比较b[1]与a[1]的值,若b[1]大于a[1],则跳过,比较b[1]与a[2]的值,若b[1]仍然大于a[2],则继续跳过,直到b[1]小于a数组中某一数据a[x],则将a[x]~a[n]分别向后移动一位,将b[1]插入到原来a[x]的位置这就完成了b[1]的插入。

b[2]~b[m]用相同方法插入。

快速排序

快速排序是大家已知的常用排序算法中最快的排序方法。已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。首先任取数据a[x]作为基准。

比较a[x]与其它数据并排序,使a[x]排在数据的第k位,并且使a[1]~a[k-1]中的每一个数据<a[x],a[k+1]~a[n]中的每一个数据>a[x],然后采用分治的策略分别对a[1]~a[k-1]和a[k+1]~a[n]两组数据进行快速排序。

希尔排序

已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。

首先取一增量d(d<n),将a[1]、a[1+d]、a[1+2d]……列为第一组,a[2]、a[2+d]、a[2+2d]……列为第二组……,a[d]、a[2d]、a[3d]……列为最后一组以次类推,在各组内用插入排序,然后取d'<d,重复上述操作,直到d=1。

Ⅳ 用C语言输入3个整数,要求按从小到大的顺序输出。谢谢大家

#include<stdio.h>
void main()
{
int a,b,c,t;
printf("请输入三个整数:a b c ");
scanf("%d%d%d",&a,&b,&c);
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("排序后的三个整数为:%d,%d,%d ",a,b,c);
}

阅读全文

与gcc编译选项排序相关的资料

热点内容
网页无法打开pdf 浏览:555
linux命令scp 浏览:519
怎样把图片转为pdf格式 浏览:115
linux变量类型 浏览:840
linux中网卡配置 浏览:704
appstore里面的软件怎么设定年龄 浏览:290
jpg在线转换pdf格式 浏览:600
java泛型详解 浏览:616
pdf介质框 浏览:210
苹果手机怎么用蓝牙传app软件到安卓 浏览:435
东方财富app怎么找场内基金 浏览:276
粉笔app怎么修改身份 浏览:529
价值投资选股公式源码 浏览:681
u盘文件夹变成了白色隐藏无法使用 浏览:876
python如何爬取火车票 浏览:977
生命哲学pdf 浏览:61
socket程序源码 浏览:156
修改文件夹用户和用户组 浏览:595
女生隐私软件不加密不要钱 浏览:560
压缩式雾化泵和雾化器一样吗 浏览:675