高级语言课题程序设计.doc
《高级语言课题程序设计.doc》由会员分享,可在线阅读,更多相关《高级语言课题程序设计.doc(31页珍藏版)》请在沃文网上搜索。
1、北方民族大学课程 设计 课程名称: 高 级 语 言 程 序 设 计 院(部)名 称: 信息与计算科学学院 组长姓名学号:马永强20100698 同组人员姓名:单新宇 刘靠兵 黄瑞荣指导教师姓名: 常 霞 设 计 时 间: 2011.6.7-2011.6.30 /*6.从文件读入一个字符串,统计该字符串中单词的个数,单词之间用空格分开,空格数可以是多个。*/#includeint main(void)char str80;int i=0,n=0;printf(Please Input a string:);gets(str);doif(stri=a&stri=A&stri=a&stri=A&st
2、ri=Z);n+;i+;while(stri!=0);printf(%dn,n);return 0;/* 8.编写程序,输入一个以回车符结束的字符串,过滤去所有的非十六进制字符后,组成一个新的字符串,然后将其转换为十进制数输出。 */#include#include#includeint main(void)char ch80,fch80;int i=0,j=0,k=0;double result=0;printf(请输入字符串(回车符结束):);scanf(%s,ch);while(chi!=0)if(0=chi&chi=9)|(a=chi&chi=f)|(A=chi&chi=F)fchj+
3、=chi+;elsei+;fchi=0;j=j-1;while(fchk!=0)if(0=fchk&fchk=9)result+=(fchk-0)*pow(16,j);putchar(fchk);k+;j-;else if(a=fchk&fchk=f)result+=(fchk-a+10)*pow(16,j);putchar(fchk);k+;j-;else if(A=chk&chk=F)result+=(chk-A+10)*pow(16,j);putchar(chk);k+;j-;elsek+;printf(的十进制是:%.0fn,result);return 0;/*9.输出100-200
4、0之间的所有素数,每行输出8个。要求调用求素数函数。*/#includeint pr(int n);int main(void)int n,count=0;for(n=100;n=2000;n+)if(pr(n)=1)printf(%6d,n);count+;if(count%8=0)printf(n);printf(n);return 0;int pr(int n)int i;for(i=2;i=n/2;i+)if(n%i=0)return 0;return 1;/*10.验证哥德巴赫猜想:任何一个大于6的偶数可以表示为两个素数之和。要求,每个偶数只要找到一组素数和就可以。将6-1000之间
5、的所有偶数都表示程两个素数之和,每行输出5组显示。*/#includeint main(void) int i,j,k,m,count=0;for(i=6;i=1000;i+=2) for(j=2;ji;j+) for(k=2;k=j) m=i-j;for(k=2;k=m) printf(%4d=%4d+%4d ,i,j,m);count+;break;if(count=5)printf(n);return 0; /*11.编写一个求四则运算的运算器 */#includeint main(void)double y,v1,v2;int a,b;char o;printf(Type in an
6、expression:);scanf(%lf%c%lf,&v1,&o,&v2);if(o=37)a=v1;b=v2;printf(%d%c%d%=%dn,a,o,b,a%b);else if(o=42)y=v1*v2;printf(%.2f%c%.2f%=%.2fn,v1,o,v2,y);else if(o=43)y=v1+v2;printf(%.2f%c%.2f%=%.2fn,v1,o,v2,y);else if(o=45)y=v1-v2;printf(%.2f%c%.2f%=%.2fn,v1,o,v2,y);else if(o=47)y=v1*1.0/v2;printf(%.2f%c%.2
7、f%=%.2fn,v1,o,v2,y);elseprintf(输入有误!n);return 0; /* 13.编写程序要求实现给定一个年月日能够输出该日是这一年的第几天,给定这一年的第几天,要求能输出这一天是几月几日。 */#includeint main(void)int day,month,year,yearday;int n;void month_day(int year,int yearday,int *pmonth,int *pday);int which_day(int year,int month,int day);printf(1给定一个年月日能输出该日是这年的第几天!n2给定
8、一年的第几天能输出这一天是几月几日!nInput your choice:);scanf(%d,&n);switch(n)case 1:printf(Input year and yearday:);scanf(%d%d,&year,&yearday);month_day(year,yearday,&month,&day);printf(%d-%d-%dn,year,month,day);break;case 2:printf(Input year-month-day:);scanf(%d%d%d,&year,&month,&day);printf(Today is:%d %d,year,wh
9、ich_day(year,month,day);break;default:printf(Unknown choicen);break;return 0;void month_day(int year,int yearday,int *pmonth,int *pday)int k,leap;int tab213=0,31,28,31,30,31,30,31,31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31,;leap=(year%4=0&year%100!=0)|year%400=0;for(k=1;yeardaytableapk;k+)
10、yearday-=tableapk;*pmonth=k;*pday=yearday;int which_day(int year,int month,int day)int k,leap,sum=0;int tab213=0,31,28,31,30,31,30,31,31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31,;leap=(year%4=0&year%100!=0)|year%400=0;for(k=1;kmonth;k+)sum+=tableapk;sum=sum+day;return sum;/*14.建立n阶螺旋方阵*/#in
11、cludeint main(void)int a8080,i,j,k=1,n,x=0,b,c,d;printf(Input n:);scanf(%d,&n);if(n%2=0)d=n/2-1;if(n%2!=0)d=n/2; for(b=0,c=0;b=d,c=d;b+,c+)for(j=c;jn-x;j+)abj=k;k+;for(i=b+1;i=c;j-)an-(x+1)j=k;k+;for(i=n-(x+2);ib;i-)aic=k;k+;x+; for(i=0;in;i+)for(j=0;jn;j+)printf(%6d,aij);printf(n);printf(n);return
12、0;/*18.编写程序,分别输出上三角形式和下三角式的乘法九九表*/#includeint main(void)void f(int n);void g(int n);g(9);putchar(n);f(9);return 0;void f(int n)int i,j;for(i=1;i=n;i+)for(j=1;j=i;j+)printf( );for(j=i;j=n;j+)printf(%4d,i*j);putchar(n);void g(int n)int i,j;for(i=1;i=n;i+)for(j=1;j=n-i;j+)printf( );for(j=n-i+1;j=n;j+)p
13、rintf(%4d,j*(n-i+1);putchar(n);/*20.打印杨辉三角(要求:打印出两种形式)*/#includeint main(void)int n,i,j,a8080;printf(Enter n:);scanf(%d,&n);for(i=0;in;i+)ai0=1;aii=1;for(i=2;in;i+)for(j=1;ji;j+)aij=ai-1j-1+ai-1j;printf(%dn,a00);for(i=2;in;i+)for(j=0;j=i;j+)printf(%1d ,aij);printf(n);if(i=1)for(j=0;jn-i;j+)printf( )
14、;printf( %dn,a00);for(i=2;in;i+)for(j=0;jn-i;j+)printf( );for(j=0;j=i;j+)printf(%1d ,aij);printf(n);/*22.用递归法实现一个正整数的逆序输出。*/#includevoid yd(int n);int main(void) int n; printf(Enter a enterge :n); scanf(%d,&n); yd(n);void yd(int n) printf(%d,n%10); n=n/10; if(n!=0) yd(n);/*23.输入一个长整形数,从高位开始逐位分割并输出。如
15、输入123456,逐位输出1,2,3,4,5,6.*/ #include#includeint main(void)int n,i=0,j,k,z;printf(Input n:);scanf(%d,&n);k=n;/*先来统计它的位数*/while(k=10)k=k/10;i+;/*逐位输出*/while(i=0)z=pow(10,i);j=n/z;n=n-j*pow(10,i);printf(%d ,j);i-;printf(n);return 0;/*30.编写程序,从键盘输入3个学生的数据,将它们存入文件student;然后再从文件中读出数据,显示在屏幕上。*/#include #in
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级 语言 课题 程序设计