国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)據(jù)結(jié)構(gòu):動(dòng)態(tài)內(nèi)存分配+內(nèi)存分區(qū)+宏+結(jié)構(gòu)體

這篇具有很好參考價(jià)值的文章主要介紹了數(shù)據(jù)結(jié)構(gòu):動(dòng)態(tài)內(nèi)存分配+內(nèi)存分區(qū)+宏+結(jié)構(gòu)體。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、作業(yè)

1.定義一個(gè)學(xué)生結(jié)構(gòu)體,包含結(jié)構(gòu)體成員:身高,姓名,成績;定義一個(gè)結(jié)構(gòu)體數(shù)組有7個(gè)成員,要求終端輸入結(jié)構(gòu)體成員的值,根據(jù)學(xué)生成績,進(jìn)行冒泡排序。

#include <stdio.h>
#include <string.h>
typedef struct {
	int high;
	char name[10];
	float score;
}stu;
int main(int argc, const char *argv[])
{
	int i,j;
	stu temp; //其中的temp需要類型重定義
	stu arr[7]={{100,"1",95},{110,"2",84},{120,"3",70},{130,"4",42},{140,"5",99},{150,"5",77},{160,"6",66}};
	for(i=1;i<7;i++){
		for(j=0;j<7-i;j++){
			if(arr[j].score>arr[j+1].score){
				temp=arr[j];
				arr[j]=arr[j+1];
				arr[j+1]=temp;
			}
		}
	}
	for(i=0;i<7;i++){
		printf("%d %s %f\n",arr[i].high,arr[i].name,arr[i].score);
	}
	return 0;
} 

數(shù)據(jù)結(jié)構(gòu):動(dòng)態(tài)內(nèi)存分配+內(nèi)存分區(qū)+宏+結(jié)構(gòu)體,算法,數(shù)據(jù)結(jié)構(gòu),c#

二、知識(shí)回顧?

1.申請(qǐng)一個(gè)10個(gè)int類型的堆區(qū)空間,并實(shí)現(xiàn)選擇排序(需要導(dǎo)入頭文件 #include <stdlib.h>)

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
//申請(qǐng)一個(gè)10個(gè)int類型的堆區(qū)空間,并實(shí)現(xiàn)選擇排序
int main(int argc, const char *argv[]){
	int *p=(int *)malloc(sizeof(int)*10);
	int i,j,index,temp;
	for(i=0;i<10;i++){
		printf("請(qǐng)輸入數(shù)字\n");
		scanf("%d",(p+i));
	}
	for(i=0;i<10;i++){
		index=i;
		for(j=i;j<10;j++){
			if(*(p+j)>*(p+index))
				index=j;
		}
		temp=*(p+i);
		*(p+i)=*(p+index);
		*(p+index)=temp;
	}
	for(i=0;i<10;i++){
		printf("%d\n",*(p+i));
	}

	free(p);
	return 0;
}

2.用##拼接帶參宏的參數(shù)

#include <stdio.h>
#include <string.h>
//用##實(shí)現(xiàn)字符串的拼接
#define unit_32 unsigned int
#define TYPE(a,b) a##b
int main(int argc, const char *argv[])
{
	TYPE(unit,_32) a=100;
	//unit_32 a=100
	//unsigned int a=100
	printf("%d\n",a);
	return 0;
}

3.宏函數(shù)(最后一行作為返回值,不需要return)

#include <stdio.h>
#include <string.h>
#define MAX(a,b) ({if(a>b) ret = a; else ret=b; ret;})

int main(int argc, const char *argv[])
{
	int ret;
	printf("%d\n",MAX(90,78));
	return 0;
}

4.訪問結(jié)構(gòu)體成員

4.1通過結(jié)構(gòu)體變量訪問
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
		char name[100];
		char sex;
		int high;
		int score;
}stu,*stu_p;

int main(int argc, const char *argv[])
{ //指針指向桟區(qū)申請(qǐng)的空間
	stu s1;
	//strcpy(s1.name,"lisi");
	//s1.name="lisi"; 這是錯(cuò)誤的,不能給數(shù)組賦值,數(shù)組名代表的是數(shù)組首地址,是一個(gè)常量,不能給常量賦值
	scanf("%s",s1.name);
	s1.sex='m';
	printf("%s\n",s1.name);

	return 0;
}
4.2通過結(jié)構(gòu)體指針間接訪問結(jié)構(gòu)體成員
法一:用指針指向棧區(qū)申請(qǐng)的空間
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
		char name[100];
		char sex;
		int high;
		int score;
}stu,*stu_p;

int main(int argc, const char *argv[])
{ //指針指向桟區(qū)申請(qǐng)的空間

	stu s1;
	stu_p p=&s1;
	(*p).high=100;
	//strcpy(p->name,"lisi");
	//s1.name="lisi"; 這是錯(cuò)誤的,不能給數(shù)組賦值,數(shù)組名代表的是數(shù)組首地址,是一個(gè)常量,不能給常量賦值
	scanf("%s",p->name);
	p->sex='m';
	printf("%s\n",s1.name);


	return 0;
}

法二:指針指向堆區(qū)申請(qǐng)的空間

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
		char name[100];
		char sex;
		int high;
		int score;
}stu,*stu_p;

int main(int argc, const char *argv[])
{ 

	//指針指向堆區(qū)申請(qǐng)的空間
	stu_p p=(stu_p)malloc(sizeof(stu));
	gets(p->name);
	p->high=100;
	p->sex='m';
	printf("%s\n",p->name);


	free(p);
	p=NULL;


	return 0;
}

5.結(jié)構(gòu)體數(shù)組

#include <stdio.h>
#include <string.h>
typedef struct{
	char name[100];
	int high;
	char sex;
}stu;

int main(int argc, const char *argv[])
{
	stu arr[3]={{"zhangsan",100,'m'},{"lisi",110,'m'}};
	for(int i=0;i<3;i++){
		printf("%s %d %c\n",(arr+i)->name,arr[i].high,arr[i].sex);
	}
	
	return 0;
}

6.內(nèi)存分配

數(shù)據(jù)結(jié)構(gòu):動(dòng)態(tài)內(nèi)存分配+內(nèi)存分區(qū)+宏+結(jié)構(gòu)體,算法,數(shù)據(jù)結(jié)構(gòu),c#文章來源地址http://www.zghlxwxcb.cn/news/detail-829322.html

到了這里,關(guān)于數(shù)據(jù)結(jié)構(gòu):動(dòng)態(tài)內(nèi)存分配+內(nèi)存分區(qū)+宏+結(jié)構(gòu)體的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包