當前位置:首頁 » 編程語言 » c語言結構體應用
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言結構體應用

發布時間: 2022-06-05 05:41:03

c語言 結構體及其應用

#include <stdio.h>
#include <stdlib.h>
typedef struct strStudent{
int stuID;
int score;
char stuName[20];
};
int main (void)
{
strStudent stu;
scanf("%d",&stu.stuID);
scanf("%d",&stu.score);
scanf("%d",stu.stuName);
printf("%d\t%d\t%s\n",stu.stuID,stu.score,stu.stuName);
return 0;
}
第二個 你自己修改一下

② C語言結構體應用

void
struct_parameter(example_1
*sp)
{
//sp=array;//這一句錯誤,直接刪掉,下面三句可以完成賦值
sp->a=array[0];
sp->b=array[1];
sp->c=array[2];
printf("%d\n",sp->a);
printf("%d\n",sp->b);
printf("%d\n",sp->c);
};
int
main()
{
example_1
*sp;
example_1
fp_sp;
struct_parameter(&fp_sp);
//struct_parameter(sp);//這一句錯誤,sp還沒有初始化
}

③ c語言結構體的應用

輸入時候的錯誤:
scanf("%s",p->name);//name是數組名,本身代表的就是數組的起始地址
scanf("%d",&((p->birthday).year));
還有其他幾處錯誤與上面的類似,你一一查看改正。
輸出時候的錯誤與此類似。

④ c語言結構體定義和使用是什麼

c語言結構體是類似於名片形式的數據集合體,可以把它理解為一種由用戶自定義的特殊的復合型的「數據類型」,在這個復合型的「數據類型」中可以包含多種基本數據類型,我們可以把它作為一個整體來操作。

c語言使用:結構體數組的引用與引用一個結構體變數在原理上是一樣的。只不過結構體數組中有多個結構體變數,我們只需利用 for 循 環一個一個地使用結構體數組中的元素。

結構體的意義

結構體描述了一段內存的解釋意義。

在內存中,數據的意義在於如何使用此段數據,如在內存中存有一個數據3,如果只把他當作正整數來使用,那麼其意義為正整數3,如果把內存中的3,當作2的3次方來使用,那麼3的意義則為指數3。而一個結構體則描述了一段內存中的數據的使用意義。

⑤ C語言中,關於結構體的應用。

像這么加不對哦,每次進入循環,stu[N].a就被清零一次,以前加的和都沒有了。。。
for(i=0;i<N;i++)
{
stu[N].a=0;
stu[N].a+=stu[i].a;
}
像這樣,在初始化的時候清零就可以了:
for(i=0,stu[N].a=0;i<N;i++)
{
stu[N].a+=stu[i].a;
}
還有這一句:
scanf("%d%s%d%d%d",&stu[i].num,&stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);
name是字元數組,name已經是數組的頭地址了,就不用取地址符了。應該是這么寫
scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].a,&stu[i].b,&stu[i].c);
至於樓主要的求和函數。樓主這結構體只能這么寫了。。。
int Sum(int mod)
{
int sum=0;
if(mod==1)
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].a;
else if(mod==2)
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].b;
else
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].c;
return sum;
}
這么用
printf("a課程總平均成績為%d分",Sum(1)/N);
printf("b課程總平均成績為%d分",Sum(2)/N);
printf("c課程總平均成績為%d分",Sum(3)/N);
如果樓主的結構體這么定義:
struct student
{
int num;
char name[20];
int score[3];
int sum;
}stu[N+1];
就好寫多了
int Sum(int mod)
{
int sum=0;
for(i=0,stu[N].a=0;i<N;i++)
sum+=stu[i].score[mod];
return sum;
}

⑥ 請問下C語言中的結構體有什麼用

結構體作用:

結構體和其他類型基礎數據類型一樣,只不過結構體可以做成你想要的數據類型。

在實際項目中,結構體是大量存在的,研發人員常使用結構體來封裝一些屬性來組成新的類型,結構體在函數中最主要的作用就是封裝,封裝的便利是可以再次利用,再次使用的時候只要根據定義使用就可以,結構體可以定義一些復雜數據類型,有了結構體給編程帶來很大的方便。