c语言。课。程。
设。计。作。业。
专业:计算机科学与技术112
姓名:李凯。
1 打印出杨辉三角形(要求打印出10行如下)
源程序:# include <>
void main()
int m,k;
int a[10][10];
printf("");
for(m=0;m<10;m++)
for(m=2;m<10;m++)
for(k=1;ka[m][k]=a[m-1][k-1]+a[m-1][k];
for(m=0;m<10;m++)
2 有个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
源程序:# include <>
void main()
int i,j,k;
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++)
if(i!=j&&i!=k&&k!=j)
printf("%d%d%d\t",i,j,k);
printf("");
3 有n个整数,使其前面各数顺序向后移m个位置。
源程序:# include<>
int n,m,i,a[200];
int main()
void re(int n);
void exchange();
printf("请依次输入n,m的值:")
scanf("%d,%d",&n,&m);
re(n);
printf("调整前的数字顺序为:")
for(i=0;i printf("");
exchange();
return 0;
void re(int n)
int i;
for(i=0;i
void exchange()
int i,j;
printf("经过调整后输出顺序为:");
for(j=n-m;j for(i=0;i printf("");
4 编程实现统计一个文件的字数。
源程序:#include <>
#define filename "d:\\
int main(void)
file *fp;
int m=0;
fp=fopen(filename,"r");
while (fgetc(fp)!=eof)
++m;fclose(fp);
printf("%d",m);
return 0;
5 约瑟夫问题:15个教徒和15个非教徒在深海上遇险,必须将一半的人投入海中,其余的人才能幸免遇难,于是想了一个办法:30个人围成一个圆圈,从第一个人开始依次报数,每数到第九个人就将他扔入大海,如此循环直到仅余15个人为止,问怎样排法才能使每次投入大海的都是非教徒。
源程序:#include<>
#include<>
typedef struct lnode
int number;
int password;
struct lnode *next;
lnode,*linklist;
void creatlink(linklist &tail,int n) /尾插法建立不带头结点单向循环链表,返回尾指针。
lnode *head,*p;
for(int i=1;i<=n;i依次输入n个人的密码,建立单向循环链表
* p=head输出链表。
while(p->next!=head)
printf("%d ",p->password);*
void joseph(linklist &tail)
int m;
printf("请输入一个正整数作为初始报数上限值:")
scanf("%d",&m);
int i=1;
lnode *p=tail->next,*pre=tail;
printf("出圈顺序依次为:")
while(p->next!=p圈中多于1个人时。
printf(" d ",p->number); 报数为m的人数列。
m=p->password;
pre->next=p->next;
free(p);
i=1从下一个人开始重新报数。
p=pre->next
printf(" d ",p->number最后一个人出列
free(p);
void main()
int n;
printf("请输入圈中人数:")
scanf("%d",&n);
linklist tail;
creatlink(tail,n);
joseph(tail);
6 中国有句俗语叫“三天打鱼两天晒网”。某人从2023年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。
源程序:# include <>
struct date
int year;
int month;
int day;
int days(date para);
void main()
date appointdate;
int totaldays=0; /1990.1.1到指定日期的总天数,初始化为。
printf("please input your appointed day:")
scanf("%d %d %d",&输入指定日期。
date temp; /指定日期前一年的最后一天。
for(int year=1990;year<= 计算出。1.1到指定日期前一年最后一天的天数。
totaldays+=days(temp);
totaldays+=days(appointdate); 指定年一月一日到指定日期的天数。
if(totaldays%5==4||totaldays%5==0) /判断该人是"钓鱼"还是"休息"
printf("the person is sleeping!")
elseprintf("the person is fishing!")
某年某月某日到该年月日的总天数。
int days(date para)
int i,days=0,k;
int days_table[2][12]=,平年每月平均天数。
31,29,31,30,31,30,31,31,30,31,30,31}};闰年每月平均天数。
if ((k=1;
else k=0;
for(i=0;i<
days+=days_table[k][i];
for(i=1;i<=
days++;
return days;
7 编写程序实现字符串的复制。
源程序:# include <>
int main()
char a=i am a boy",b[20];
int i;
for(i=0;*(a+i)!=0';i++)
b+i)=*a+i);
*(b+i)='0';
printf("string a is:%s",a);
printf("string b is:")
for(i=0;b[i]!=0';i++)
printf("%c",b[i]);
printf("");
return 0;
8 创建一个链表,将其按正向和反向输出。
C语言作业
no.1 include int main 结果z 9.000000 配置 mingw2.95 cuirelease,编译器类型 mingw old检查文件依赖性。完成构建未命名1 0个错误,0个警告。生成c documents and settings administrator my docum...
C语言作业
上机实习报告。题目 有五名同学每名同学的数据包括学号 姓名和3门功课的成绩 成绩提前预设 求 1 每名同学的平均成绩 名同学每门课程的平均分 3 按学生的平均分从低到高次序排除每名同学的顺序 分析 根据题目要求,使用结构体类型,包括5个元素学号 num 姓名 name 门功课的成绩 score 3 ...
C语言作业
1 c语言的特点与主要应用领域。特点 1 c语言简洁,紧凑,使用方便,灵活 2 c语言具有高级语言和低级语言的特征 3 c语言是结构化语言,具有结构化的控制语句 4 c语言具有各种各样的数据类型 5 c语言具有强大的图形功能,支持多种显示器和驱动器 6 c语言适用范围大,目标 质量高,程序执行效率高...