c语言:利用结构体编写:分别输入10个学生的英语 数学 编程成绩,并求和。最后用冒泡法排序,并输出。 用C语言编写:定义一个结构体数组,存放10个学生的学号,姓名...

\u7528C\u8bed\u8a00\u7f16\u7a0b\uff1a\u4ece\u952e\u76d8\u8f93\u516510\u4e2a\u5b66\u751f\u7684\u6210\u7ee9\uff0c\u7531\u9ad8\u5230\u4f4e\u6392\u5e8f\u8f93\u51fa\u6210\u7ee9

\u4f60\u597d\uff0c\u6211\u4eec\u8fd9\u91cc\u9700\u8981\u7528\u5230\u6570\u7ec4\u9576\u5957\u4f7f\u7528for\u51fd\u6570\u4ee5\u53ca\u5192\u6ce1\u7b97\u6cd5\uff0c\u5177\u4f53\u7684\u4ee3\u7801\u5982\u4e0b\u3002
#include
using namespace std;
int main()
{
int s [10], i, j, t;
cout << "\u8f93\u516510\u4e2a\u6570:";
for (i = 0; i < 10; i++)
{
cout << "\u8bf7\u8f93\u5165\u7b2c" << i+1 << "\u540d\u5b66\u751f\u7684\u6210\u7ee9\uff1b" << endl;
cin >> s[i];
}
for (i = 0; i<10; i++)
{
for (j = 0; j<9 - i; j++)
if (s[j]<s[j + 1])
{
t = s[j + 1];
s[j + 1] = s[j];
s[j] = t;
}
}
cout << "\u6210\u7ee9\u7531\u9ad8\u5230\u4f4e\u4e3a\uff1b";
for (i = 0; i<10; i++)
cout << s[i]<<"\t" ;
}
\u4ee5\u4e0b\u4e3a\u6548\u679c\u56fe

\u8981\u5b8c\u6574\u7684\u5199\u554a, \u90a3\u5f97\u534a\u5c0f\u65f6 \u4e00\u4e2a\u5c0f\u65f6\u7684.
\u6050\u6015\u6ca1\u4eba\u6709\u8fd9\u95f2\u5de5\u592b.
\u5982\u679c\u7f16\u7a0b\u9047\u5230\u95ee\u9898 \u53ef\u4ee5\u8d34\u51fa\u6765,\u5e2e\u4f60\u89e3\u51b3.

代码如下:

#include <stdio.h>
#include <stdlib.h>

#define N 10

struct student {
char na[50];
char ID[11];
int English, Math, C_pro;
int sum;
}s[N], *p=s;

void input(struct student *p, int n)
{
printf("请输入%d个学生信息:
", n);

for (int i = 0; i < n; i++) {
scanf("%s%s%d%d%d", &p[i].na, &p[i].ID, &p[i].English, &p[i].Math, &p[i].C_pro);
p[i].sum = p[i].English + p[i].Math + p[i].C_pro;
}
}

void sort(struct student *p, int n)
{
int i, j;
struct student tmp;

for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (p[j].sum < p[j + 1].sum) {
memcpy(&tmp, &p[j], sizeof(struct student));
memcpy(&p[j], &p[j + 1], sizeof(struct student));
memcpy(&p[j + 1], &tmp, sizeof(struct student));
}
}
}
}

void disp(struct student *p, int n)
{
for (int i = 0; i < n; i++) {
printf("%s%s%d%d%d%d
", p[i].na, p[i].ID, p[i].English, p[i].Math, p[i].C_pro, p[i].sum);
}
}

int main()
{
input(p, N);

sort(p, N);

disp(p, N);
system("pause");
return 0;
}

运行结果:



下图是输入3个学生数据的情形:

#include<stdio.h>
#define N 10
struct student
{
char na[50];
char ID[11];
int English,Math,C_pro;
int sum;
}s[N],*p=s;
main()
{void input (struct student *p,int n);
 void sort (struct student *p,int n);
 void disp(struct student *p,int n);
 input(s,N);
 sort(s,N);
 disp(s,N);
}
void input (struct student *p,int n)
{int i;
 for(i=0;i<n;i++,p++)
   {scanf("%s %s%d%d%d",p->na,p->ID,&p->English,&p->Math,&p->C_pro);
    p->sum=p->English+p->Math+p->C_pro;  
   }
}
void sort (struct student *p,int n)
{int i,j;
 struct student t;
 for(i=0;i<n-1;i++)
   for(j=0;j<n-1-i;j++)
     if((p[j].sum)<(p[j+1].sum))
     {t=p[j];p[j]=p[j+1];p[j+1]=t;}
}
void disp(struct student *p,int n)
{int i;
 for(i=0;i<n;i++,p++)
   printf("%20s%10s%4d%4d%4d%6d
",p->na,p->ID,p->English,p->Math,p->C_pro,p->sum);
}


  • C璇█绋嬪簭 鐢ㄧ粨鏋勪綋缂栧啓涓涓▼搴,瀹炵幇杈撳叆涓や釜鏁,姹傚嚭骞冲潎鏁
    绛旓細include<stdio.h>typedef struct stt{ float num;}STT;int main( ){ STT stt1,stt2; scanf("%f%f",&stt1.num,&stt2.num); printf("骞冲潎鍊硷細%f\n",(stt1.num+stt2.num)/2); return 0;}
  • C璇█:杩愮敤缁撴瀯浣杈撳叆杈撳嚭鍔ㄧ墿鍥殑n涓姩鐗╃殑鍩烘湰淇℃伅
    绛旓細int No;char name[20];int count;} main(){ int i, n;struct animal ani[50];printf("Input the number(<50):\n");scanf("%d", &n);printf("Input the info:\n");for(i = 0; i < n; i++)scanf("%d %s %d", &ani[i].No, ani[i].name, &ani[i].count);
  • c璇█,璁捐涓涓鐢缁撴瀯浣,杈撳叆涓変釜鎴愮哗骞舵眰鎴愮哗鏈澶у
    绛旓細杩欏氨鏄渶鍩烘湰鐨缁撴瀯浣鎿嶄綔銆俰nclude<stdio.h>typedef struct s{ char name[32]; int score;}student;int main(void){ student a,b,c; int max; scanf("%s%d", a.name, &a.score); scanf("%s%d", b.name, &b.score); scanf("%s%d", c.name, &c.score); ...
  • ...鍜屾垚缁 ,鐒跺悗杈撳嚭浠栦滑鐨勫钩鍧囨垚缁 鐢ㄧ粨鏋勪綋鎬庝箞鍐
    绛旓細include <stdio.h>#include <string.h>struct Stu{char name[20];int score;}stu[2];int main(){ printf("璇疯緭鍏ョ涓涓鐢熺殑濮撳悕鍜屾垚缁╋細\n");scanf("%s %d",&stu[0].name,&stu[0].score);printf("璇疯緭鍏ョ浜屼釜瀛︾敓鐨勫鍚嶅拰鎴愮哗锛歕n");scanf("%s %d",&stu[1].name,&stu[...
  • C璇█缁撴瀯浣缂栫▼,杈撳叆涓骞存湀鏃ユ槦鏈熷嚑,璁$畻N澶╁悗鏄摢骞村摢鏈堝摢鏃ユ槦鏈熷嚑...
    绛旓細/* 鐭ラ亾浠婂ぉ鏄熸湡鍑犱互鍙婂勾鏈堟棩锛缂栧啓C绋嬪簭锛岃姹傝兘绠楀嚭浠绘剰澶╁悗鏄槦鏈熷嚑浠ュ強骞存湀鏃 */ void main(){ int weekday;Date now;int diff;printf("璇疯緭鍏ヤ粖澶╂槸鏄熸湡鍑犱互鍙婃棩鏈");printf("鏄熸湡鍑(0..6锛屾槦鏈熸棩..鏄熸湡鍏)锛");scanf("%d", &weekday);printf("鏃ユ湡(yyyy-mm-dd): ");scanf("...
  • c璇█ 缁撴瀯浣 杈撳叆瀛︾敓涓暟n銆傝緭鍏ヨ繖n涓鐢熷鍚嶃佸鍙枫佷簲闂ㄨ鎴愮哗...
    绛旓細scanf("%c",&ch);while(ch!='\n'){ Ptr[i].name[p]=ch;p++;scanf("%c",&ch);} Ptr[i].name[p+1]=0;scanf("%c",ch);//杈撳叆瀛﹀彿锛堝惈瀛楁瘝銆佹暟瀛楋級while(ch!=13){ Ptr[i].number[k]=ch;k++;scanf("%c",&ch);} Ptr[i].number[k+1]=0;for(k=0;k<5;k++)//...
  • c璇█ .鐢ㄧ粨鏋勪綋杈撳嚭瀛︾敓濮撳悕銆佸鍙峰拰鎴愮哗 鎴戞湁c++鐨勭▼搴 浣嗘槸鐪嬩笉鎳...
    绛旓細涓嬮潰绫讳技 Student s_2("b","2012302590081",95);Student s_3("c","2012302590144",96);Student s_4("d","2012302590169",97);s_1.Show();//璋冪敤瀵硅薄s_1鐨勬垚鍛樺嚱鏁癝how()锛屾樉绀哄鍚嶏紝瀛﹀彿锛屾垚缁.浠ヤ笅绫诲悓 s_2.Show();s_3.Show();s_4.Show();} 鍙傝冭祫鏂欙細C++ primer 4th ...
  • C璇█缂栧啓绋嬪簭:杈撳叆5涓鐢3闂ㄨ绋嬬殑鎴愮哗,鍒嗗埆鐢鍑芥暟瀹炵幇浠ヤ笅鍔熻兘?_鐧惧害...
    绛旓細鐢ㄧ粨鏋勪綋閲岄潰鍖呭惈3涓彉閲忓搴3浠垚缁╋紝鐒跺悗鍐嶆鍩虹涓婂畾涔変竴涓寘鍚簲涓粨鏋勫彉閲忕殑鏁扮粍锛屽啀涓娆″彇鍑烘眰骞冲潎鍊煎氨琛
  • C璇█缁撴瀯浣 鐢遍敭鐩樿緭鍏鍜宮:n涓鐢 m闂ㄨ绋
    绛旓細int n,i;printf("璇疯緭鍏ュ鐢熶汉鏁帮紝涓嶈兘澶т簬30浜:");scanf("%d",&n);for(i=0;i<n;i++){ printf("璇疯緭鍏ョ%d涓鐢熺殑淇℃伅:\n",i+1); printf("瀛﹀彿锛"); scanf("%d",&stu[i].number); printf("鍚嶅瓧锛"); gets(stu[i].name); printf("鍒嗘暟锛"); ...
  • C璇█ 瑕佹眰閫氳繃閿洏杈撳叆涓変釜瀛︾敓淇℃伅(鍖呮嫭濮撳悕銆佸鍙枫佺彮绾),骞惰緭鍑鸿繖...
    绛旓細include<stdio.h> struct st{//瀹氫箟缁撴瀯浣 char name[20];int id;char _class[20];};int main(){ struct st s[11];//瀹氫箟缁撴瀯浣撴暟缁勶紱for(int i=0;i<3;i++)scanf("%s%d%s",s[i].name,&s[i].id,s[i]._class);//杈撳叆 for(int i=0;i<3;i++)printf("濮撳悕:%s 瀛﹀彿:%d...
  • 扩展阅读:c语言必背100代码 ... c语言怎么输出结构体 ... 结构体c语言typedef ... c语言结构体个人总结 ... c语言struct结构体数组 ... c语言怎么引用结构体 ... c语言结构体编程例题 ... 用结构体处理学生成绩 ... c语言利用结构体查成绩 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网