//转换为2进制
void showbit(int n)
{
if(n>1){
showbit(n/2)
printf(" ")
}
printf("%d",n%2)
}
//转换为8进制
void showoct(int n)
{
if(n>7){
showoct(n/8)
printf(" ")
}
printf("%d",n%8)
}
//转换为16进制
void showhex1(int n)
{
switch(n)
{
case 10: putchar('A')break
case 11: putchar('B')break
case 12: putchar('C')break
case 13: putchar('D')break
case 14: putchar('E')break
case 15: putchar('F')break
default: printf("%d",n)
}
}
void showhex(int n)
{
if(n>15){
showhex(n/16)
showhex1(n%16)
}
else
showhex1(n%16)
}
main()
{
int a
printf("input a num:")
scanf("%d",&a)
printf("二进制: ")
showbit(a)
printf("\n")
printf("八进制: ")
showoct(a)
printf("\n")
printf("十六进制: ")
showhex(a)
printf("\n")
}
#include<stdio.h>#include<stdlib.h>
#define N 5
struct student
{ int num
char name[20]
int M,E,L,C,P
int average
int fail
}
void save(struct student *p)
{ int i
FILE *fp
if((fp=fopen("student.text","w"))==NULL)
{
printf("Cannot open file!\n")
return
}
for(i=0i<Ni++)
{fwrite(p,sizeof(struct student),1,fp)
p++
}
free(fp)
}
void average(struct student* p)
{ int i
for(i=0i<Ni++,p++)
p->average=(p->M+p->E+p->L+p->C+p->P)/5
}
void fail(struct student* p)
{ int i
for(i=0i<Ni++,p++)
{ p->fail=0
if(p->M<60||p->E<60||p->L<60||p->C<60||p->P<60)
p->fail=1
}
}
void excelent(struct student *p)
{ int i,k,t
for(i=0i<Ni++)
{
for(k=ik<Nk++)
if(((p+i)->average)<((p+k)->average))
{
t=(p+i)->average
(p+i)->average=(p+k)->average
(p+k)->average=t
}
}
}
int main()
{ struct student stu[N]
int i,j
printf("请输入5个同学的数据\n")
for(i=0i<Ni++)
{
scanf("%d%s%d%d%d%d%d",&stu[i].num,stu[i].name,&stu[i].M,&stu[i].E,&stu[i].L,&stu[i].C,&stu[i].P)
printf("\nnext \n")
}
average(stu)
printf(" 学号姓名数学英语 语文 C物理平 均\n")
for(i=0i<Ni++)
printf("%4d%8s%8d%8d%8d%8d%8d%8d\n",stu[i].num,stu[i].name,stu[i].M,stu[i].E,stu[i].L,stu[i].C,stu[i].P,stu[i].average)
fail(stu)
save(stu)
printf("有不及格科目的同学有:\n num name \n")
for(i=0i<Ni++)
{
if(stu[i].fail)
printf("%4d %s\n",stu[i].num,stu[i].name)
}
FILE *fp
if((fp=fopen("student.text","rb"))==NULL)
{
printf("Cannot open file!\n")
exit(0)
}
fread(&stu[i],sizeof(struct student),1,fp)
printf(" 学号姓名数学英语 语文 C物理平 均\n")
for(i=0i<Ni++)
printf("%4d%8s%8d%8d%8d%8d%8d%8d\n",stu[i].num,stu[i].name,stu[i].M,stu[i].E,stu[i].L,stu[i].C,stu[i].P,stu[i].average)
excelent(stu)
printf("经过安平均分排序后的成绩为:\n 学号姓名数学英语 语文 C物理平 均\n")
for(i=0i<Ni++)
printf("%4d%8s%8d%8d%8d%8d%8d%8d\n",stu[i].num,stu[i].name,stu[i].M,stu[i].E,stu[i].L,stu[i].C,stu[i].P,stu[i].average)
free(fp)
return 0
}
绝对自己编的。没有功劳也有苦劳!
#include <stdio.h>#include <time.h>
#include <stdlib.h>
void pic(int n)
{
switch(n)
{
case 1
printf("●")
break
case 2:
printf("●●")
break
case 3
printf("●●●")
break
case 4:
printf("●●●●")
break
case 5
printf("●●●●●")
break
case 6:
printf("●●●●●●")
break
}
}
void play()
{
int num1,num2,num3,num4
srand((unsigned)time(0))
num1=rand()%6+1
num2=rand()%6+1
num3=rand()%6+1
num4=rand()%6+1
pic(num1)
pic(num2)
pic(num3)
pic(num4)
}
void main()
{
play()
}