求一个简单的C语言程序 大概四十到五十行就可以了 要求有程序名字 代码 谢谢了~

如题。... 如题。 展开
 我来答
巨星李小龙
2013-07-02 · TA获得超过5094个赞
知道大有可为答主
回答量:2146
采纳率:50%
帮助的人:1870万
展开全部
学生成绩
#include <stdio.h>
#include <stdlib.h>
#define N  10
main()

struct student
{
long number;
char name[10];
int score;
} num[N];
FILE *fp;
int i,j,d[N],temp; 
float sum=0,average;
if((fp=fopen("student.txt","r"))==NULL)
{
printf("can not open this file.\n");
exit(1);
}
for(i=0;i<N;i++)
{
fscanf(fp,"%ld%s%d",&num[i].number,&num[i].name,&num[i].score);
/*printf("%ld %s %d\n",num[i].number,num[i].name,num[i].score);*/
       d[i]=num[i].score;
sum=sum+d[i];
}
average=sum/N;
for(i=0;i<N-1;i++)
   for(j=i+1;j<N;j++)
   if(d[i]<d[j]) {temp=d[j];d[j]=d[i];d[i]=temp;};
/*for(i=0;i<N;i++)
printf("%d ",d[i]);
printf("\n");*/
printf("学生平均分:%3.1f\n",average);
if (N%2!=0)
printf("学生中位数:%d\n",d[(N-1)/2]);
else printf("学生中位数:%3.1f\n",(d[N/2-1]+d[N/2])/2.0);
for(i=0;i<N;i++)
{
if(num[i].score==d[0]) printf("分数最高学生记录如下:\n%ld %s %d\n",num[i].number,num[i].name,num[i].score);
if(num[i].score==d[N-1]) printf("分数最低学生记录如下:\n%ld %s %d\n",num[i].number,num[i].name,num[i].score);
}
fclose(fp);
}
更多追问追答
追问
这是学生成绩的上传还是什么啊
追答
文本student.txt中有十个同学的信息,每个人包含学号、姓名和分数三个信息。本程序是计算10个人的平均分,中位数,最高分的同学,最低分等等,程序里有说明。说白了,就是涉及到文件读取操作和排序比较常用的操作等等。
逐梦兮乐
2013-07-02 · TA获得超过6431个赞
知道大有可为答主
回答量:5151
采纳率:72%
帮助的人:1888万
展开全部
这个是统计字母a到z各个字符出现的次数
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void Stat(char *str,int count[])
{
int i;
for(i=0;i<26;i++)count[i]=0;
for(i=0;i<strlen(str);i++)
{
if(str[i]=='a')count[0]++;
else if(str[i]=='b')count[1]++;
else if(str[i]=='c')count[2]++;
else if(str[i]=='d')count[3]++;
else if(str[i]=='e')count[4]++;
else if(str[i]=='f')count[5]++;
else if(str[i]=='g')count[6]++;
else if(str[i]=='h')count[7]++;
else if(str[i]=='i')count[8]++;
else if(str[i]=='j')count[9]++;
else if(str[i]=='k')count[10]++;
else if(str[i]=='l')count[11]++;
else if(str[i]=='m')count[12]++;
else if(str[i]=='n')count[13]++;
else if(str[i]=='o')count[14]++;
else if(str[i]=='p')count[15]++;
else if(str[i]=='q')count[16]++;
else if(str[i]=='r')count[17]++;
else if(str[i]=='s')count[18]++;
else if(str[i]=='t')count[19]++;
else if(str[i]=='u')count[20]++;
else if(str[i]=='v')count[21]++;
else if(str[i]=='w')count[22]++;
else if(str[i]=='x')count[23]++;
else if(str[i]=='y')count[24]++;
else if(str[i]=='z')count[25]++;
}
}
int main(void)
{
char str[10000];
int i,count[26];
printf("请输入a~z的字符串:\n");
gets(str);
Stat(str,count);
for(i=0;i<26;i++)
printf("%c:%d\n",i+'a',count[i]);
system("pause");
return 0;
}
祝你愉快!记得采纳哈!~\(≧▽≦)/~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火舞蝶衣
2013-07-02 · TA获得超过3818个赞
知道小有建树答主
回答量:1521
采纳率:50%
帮助的人:516万
展开全部
这是一个链表实现多项式计算的程序,可以叫polynomial.cpp
http://www.ccidedu.com/art/2031/20041102/172485_1.html这里也有很多程序
#include<iostream>
using namespace std;
struct linknode
{
float coef;
int expn;
linknode* link;
linknode(float c=0,int e=0,linknode* next=NULL){coef=c;expn=e;link=next;}
};
class list
{
private:
linknode* first,*last;
public:
list(){first=last=new linknode;}
list(const list & ph);
int Ifexist (int m,float n);
void compare(float,int );
friend istream& operator >>(istream& ,list&);
friend ostream &operator <<(ostream& ,list &);
friend list operator *(list ,list );
};
list::list(const list & ph)
{
first=new linknode;
linknode * des=first,*src=ph.first->link;
while(src!=NULL)
{
des->link=new linknode(src->coef,src->expn);
src=src->link;
des=des->link;
}
last=des;
}
istream & operator>>(istream &in,list &inlist)
{
float c;int e;
linknode *s;
in>>c>>e;
while(c!=-1)
{
s=new linknode(c,e);
inlist.last->link=s;
inlist.last=inlist.last->link;
in>>c>>e;
}
inlist.last->link=NULL;
return in;
}
ostream & operator<<(ostream& out,list &outlist)
{
cout<<"\n the list is:\n";
linknode* p=outlist.first->link;
while(p!=NULL)
{
out<<p->coef<<" "<<p->expn;
if(p!=outlist.last) out<<"->";
else out<<endl;
p=p->link;
}
return out;
};
int list::Ifexist(int m,float n)
{
linknode* p=first->link;
while(p!=NULL)
{
if(p->expn==m){p->coef+=n;return 1;}
else p=p->link;
}
return 0;
};
void list::compare(float c,int e)
{
linknode* p,*q;
linknode * s=new linknode(c,e);
p=first;
q=first->link;
while(q->expn>e&&q!=NULL)
{
p=q;q=q->link;
}
if(q==NULL) {last->link=s;last=s;}
else{p->link=s;s->link=q;}
};
list operator*(list pa,list pb)
{
list pc;
linknode * p,*q;
float cvalue;int evalue;
p=pa.first->link;
while(p!=NULL)
{
q=pb.first->link;
while(q!=NULL)
{
cvalue=p->coef*q->coef;
evalue=p->expn+q->expn;
if(!pc.Ifexist(evalue,cvalue))
pc.compare(cvalue,evalue);
}
}
return pc;
}
int main()
{
list ah,bh,ch;
cout<<"please input these two polynomial,with this form,coef-expn,and end with c=0:"<<endl;
cin>>ah;
cout<<"please input these two polynomial,with this form,coef-expn,and end with c=0:"<<endl;
cin>>bh;
ch=ah*bh;
cout<<ch;
system("pause");
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式