当前位置:文档之家› 程序实例

程序实例

程序实例
程序实例

1

逆序的三位数(10分).题目内容:程序每次读入一个正三位数,然后输出逆序的数字。注意,当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。提示:对一个三位数数x,做x%10可以得到它的个位数,做x/100可以得到它的百位数,十位数则通过/和%两个运算的结合可以得到。输入格式:你的程序每次读到一个3位的正整数。输出格式:输出逆序的数。输入样例:163输出样例:361

#include

int main ()

{

int num,x,y,z;

scanf("%d",&num);

x=num%10;

y=num/10%10;

z=num/100;

if(x==0&&y==0)

printf("%d",z);

else if(x==0)

printf("%d%d",y,z);

else

printf("%d%d%d",x,y,z);

}

2

时间换算(10分).题目内容:UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT 减去8。现在,你的程序要读入一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。有效的输入范围是0到2359,即你的程序不可能从测试服务器读到0到2359以外的输入数据。你的程序要输出这个时间对应的UTC时间,输出的格式和输入的相同,即输出一个整数,表示UTC的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。提醒:要小心跨日的换算。输入格式:一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。输出格式:一个整数,表示UTC的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果小时不是0而分小于10分,需要保留十位上的0;如果小时是0而分小于10分的,则不需要保留十位上的0。输入样例:803

输出样例:3

#include

int main()

{

int UTC,BJT,hour1,min1,hour2,min2; scanf("%d",&BJT);

hour1=BJT/100;

min1=BJT%100;

if(hour1>=8)

{

hour2=hour1-8;

min2=min1;

}

else

{

hour2=24+hour1-8;

min2=min1;

}

UTC=hour2*100+min2;

printf("%d",UTC);

}

3

奇偶个数(10分).题目内容:你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。输入格式:一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。输出格式:两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。输入样例:9 3 4 2 5 7 -1 输出样例:4 2

#include

int main()

{

int x;

int cnt1=0,cnt2=0;

while(x!=-1)

{

scanf("%d ",&x);

if(x!=-1)

{

if(x%2==0)

cnt2+=1;

else

cnt1+=1;

}

c编程实例100例

【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。 2.程序源代码:main(){int i,j,k;printf("\n"... 经典c程序100例2010-03-20 15:47 | (分类:默认分类) 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 2.程序源代码: main() { int i,j,k; printf("\n"); for(i=1;i<5;i++)/*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } } ============================================================== 【程序2】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于 40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成%,高于 100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数? 1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 2.程序源代码: main() { long int i; int bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i); bonus1=100000*;bonus2=bonus1+100000*; bonus4=bonus2+200000*; bonus6=bonus4+200000*; bonus10=bonus6+400000*;

matlab程序设计实例

MATLAB 程序设计方法及若干程序实例 樊双喜 (河南大学数学与 信息科学学院开封475004) 摘要本文通过对 MATLAB 程序设计中的若干典型问题做简要的分析和总结,并在此基础上着重讨论了有关算法设计、程序的调试与测试、算法与程序的优化以及循环控制等方面的问题.还通过对一些程序实例做具体解析,来方便读者进行编程训练并掌握一些有关MATLAB 程序设计方面的基本概念、基本方法以及某些问题的处理技巧等.此外,在文章的最后还给出了几个常用数学方法的算法程序, 供读者参考使用.希望能对初学者进行 MATLAB 编程训练提供一些可供参考的材料,并起到一定的指导和激励作用,进而为MATLAB 编程入门打下好的基础. 关键字算法设计;程序调试与测试;程序优化;循环控制 1 算法与程序 1.1 算法与程序的关系算法被称为程序的灵魂,因此在介绍程序之前应先了 解什么是算法.所谓算 法就是对特定问题求解步骤的一种描述.对于一个较复杂的计算或是数据处理的问题,通常是先设计出在理论上可行的算法,即程序的操作步骤,然后再按照算法逐步翻译成相应的程序语言,即计算机可识别的语言. 所谓程序设计,就是使用在计算机上可执行的程序代码来有效的描述用于解决特定问题算法的过程.简单来说,程序就是指令的集合.结构化程序设计由于采用了模块分化与功能分解,自顶向下,即分而治之的方法,因而可将一个较复杂的问题分解为若干子问题,逐步求精.算法是操作的过程,而程序结构和程序流程则是算法的具体体现. 1.2MATLAB 语言的特点 MATLAB 语言简洁紧凑,使用方便灵活,库函数极其丰富,其语法规则与科技人员的思维和书写习惯相近,便于操作.MATLAB 程序书写形式自由,利用其丰富

C程序设计经典程序举例

C程序设计经典程序举例 1、判断素数(循环、利用算法减少运算次数) 例:1159:质因数分解 正整数n是两个不同质数的乘积,试求出其中较大的。 #include #include int main() { long long n,big; int small; int root,i,j; scanf("%lld",&n); for(small=2;small<=(int)sqrt(n);) { //素数判断过程,从最小素数开始 root=(int)sqrt(small); for(i=2;i<=root+1;i++) { if(small%i==0)break; } if(i<=root)

if(small==2)small++; else small+=2; //只判断2和奇数,减少运算次数 continue; } if(n%small==0) { big=n/small; root=(int)sqrt(big); for(i=2;i<=root+1;i++) { if(big%i==0)break; } if(i<=root) { if(small==2)small++; else small+=2; continue; } else { break; //得到最大质因数,跳出循环 }

} printf("%d %lld",small,big); return 0; } 2、递归与回溯算法(解决尝试性问题,每一级都对下一级有影响) 例:1085:0/1迷宫问题 给定一个由0(表示墙壁)和1(表示道路)的迷宫,请你判断进入迷宫后,仅通过横向和纵向的行走是否能从迷宫中走出来,即能否从坐标(1,1)走到(n,m)。 #include #include int starti,startj; int endi,endj; //定义迷宫起止点 int success=0; //用于判断是否成功通路 int main() {

C语言程序设计100个经典例子

经典C语言程序设计100例 1.数字排列 2.奖金分配问题 3.已知条件求解整数 4.输入日期判断第几天 5.输入整数进行排序 6.用*号显示字母C的图案 7.显示特殊图案 8.打印九九口诀 9.输出国际象棋棋盘10.打印楼梯并按条件打印笑脸11.经典兔子问题12.判断素数 13.水仙花数问题14.正整数分解质因数15.学习成绩划分16.正整数求其最大公约数和最小公倍数 17.统计英文字母/空格/数字个数 18.求s=a+aa+aaa+aa...a的值19.求解"完数" 20.球体自由落下物理问题 21.猴子吃桃问题22.乒乓球比赛抽签问题23.打印菱形图案24.分数数列求和 25.求1+2!+3!+...+20!的和26.利用递归方法求5! 27.将输入字符以相反顺序打印28.岁数问题 29.求解正整数位数30.判断回文数31.星期几猜测游戏32.改变文本颜色 33.学习gotoxy()与clrscr()函数34.练习函数调用35.设置文本颜色36.求100之内的素数37.对10个数进行排序 38.求3*3矩阵对角线元素之和39.数字插入数组重新排序40.将一个数组逆序输出 41.static定义静态变量用法42.使用auto定义变量用法43.使用static的另一用法44.使用external的用法 45.使用register定义变量方法46.宏#define命令练习(1) 47.宏#define命令练习(2) 48.宏#define命令练习(3) 49.#if #ifdef和#ifndef的综合应用50.#include 的应用练习51.学习使用按位与& 52.学习使用按位或| 53.学习使用按位异或^ 54.取一个整数从右端开始的4~7位。55.学习使用按位取反~ 56.用circle画圆形 57.学用line画直线58.用rectangle画方形59.画图综合例子60.画图综合例子2 61.打印杨辉三角形62.学习putpixel画点63.画椭圆ellipse 64.利用ellipse and rectangle画图 65.画个最优美的图案66.输入3个数字按大小顺序输出67.输入数组交换元素重新输出 68.多个整数后移位置问题 69.圆圈报数问题70.计算一个字符串长度71.编写输入/输出函数72.创建链表 73.反向输出链表74.连接两个链表75.算一道简单题目76.调用函数求1/2+1/4+...+1/n 77.填空练习(指向指针的指针) 78.找到年龄最大的人79.字符串排序80.海滩猴子分桃81.已知公式条件求数字82.八进制转换为十进制83.求0-7所能组成的奇数个数84.由两个素数之和表示的偶数 85.判断一个素数能被几个9整除86.两个字符串连接程序87.结构体变量传递88.读取数字的整数值并打印出该值个数的* 89.数据加密90.专升本一题91.时间函数举例1 92.时间函数举例2 93.时间函数举例3 94.一个猜数游戏95.家庭财务管理小程序96.计算字符串中子串出现的次数 97.输入字符并保存到磁盘98.字符串转换成大写字母并输出保存99.文件操作应用1 100.文件操作应用2 -------------------------------------------------------------------------------- c语言经典100题【实用】

C语言程序设计实例讲解例子

经典C语言程序设计实例讲解例子 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 2.程序源代码: main() { int i,j,k; printf("\n"); for(i=1;i<5;i++)/*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } } 【程序2】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于 40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于 100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数? 1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 2.程序源代码: main() { long int i; int bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i); bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i<=100000)

程序设计综合实例

第十章程序设计综合实例 例1 从键盘上输入三个整数,输出最大数和最小数。#include<> main() { int a,b,c,temp; printf("请输入三个整数:\n"); scanf("%d%d%d",&a,&b,&c); if(a

例2 编程输出所有的水仙花数。 #include<> main() { int a,b,c,i; for(i=100;i<=999;i++) { a=i/100; b=i%100/10; c=i%10; if(a*a*a+b*b*b+c*c*c==i) printf("%d\n",i); } } 例3 编程输出斐波数列的第40项值。方法一(使用数组) #include<> main() { long a[40];

int i; a[0]=1; a[1]=1; for(i=2;i<=39;i++) a[i]=a[i-1]+a[i-2]; printf("%ld",a[39]); } 方法二(使用迭代) #include<> main() { long a,b,c; int n; a=1; b=1; n=2; while(n<40) { c=a+b;

a=b; b=c; n=n+1; } printf("%ld",c); } 方法三(使用递归) #include<> long fun(int n) { if(n==1 || n==2) return 1; else return fun(n-1)+fun(n-2); } main() { printf("%ld",fun(40)); }

数控车床编程实例详解(30个例子)

半径编程 图3.1.1 半径编程 %3110 (主程序程序名) N1 G92 X16 Z1 (设立坐标系,定义对刀点的位置) N2 G37 G00 Z0 M03 (移到子程序起点处、主轴正转) N3 M98 P0003 L6 (调用子程序,并循环6次) N4 G00 X16 Z1 (返回对刀点) N5 G36 (取消半径编程) N6 M05 (主轴停) N7 M30 (主程序结束并复位) %0003 (子程序名) N1 G01 U-12 F100 (进刀到切削起点处,注意留下后面切削的余量)N2 G03 U7.385 W-4.923 R8(加工R8园弧段) N3 U3.215 W-39.877 R60 (加工R60园弧段) N4 G02 U1.4 W-28.636 R40(加工切R40园弧段) N5 G00 U4 (离开已加工表面) N6 W73.436 (回到循环起点Z轴处) N7 G01 U-4.8 F100 (调整每次循环的切削量) N8 M99 (子程序结束,并回到主程序)

直线插补指令编程 图3.3.5 G01编程实例 %3305 N1 G92 X100 Z10 (设立坐标系,定义对刀点的位置) N2 G00 X16 Z2 M03 (移到倒角延长线,Z轴2mm处) N3 G01 U10 W-5 F300 (倒3×45°角) N4 Z-48 (加工Φ26外圆) N5 U34 W-10 (切第一段锥) N6 U20 Z-73 (切第二段锥) N7 X90 (退刀) N8 G00 X100 Z10 (回对刀点) N9 M05 (主轴停) N10 M30 (主程序结束并复位) 车床编程实例三 圆弧插补指令编程 %3308 N1 G92 X40 Z5 (设立坐标系,定义对刀点的位置) N2 M03 S400 (主轴以400r/min旋转) N3 G00 X0 (到达工件中心) N4 G01 Z0 F60 (工进接触工件毛坯) N5 G03 U24 W-24 R15 (加工R15圆弧段) N6 G02 X26 Z-31 R5 (加工R5圆弧段) N7 G01 Z-40 (加工Φ26外圆) N8 X40 Z5 (回对刀点) N9 M30 (主轴停、主程序结束并复位 图3.3.8 G02/G03编程实例

编程实例100个

xx编程实例 1、放量 a、今日比昨日的成交量放大了1倍: VOL/REF(VOL, 1)>2; b、今日的五日均量比五天前的五日均量放大了3倍: AA:=MA(VOL, 5); BB:=REF(AA, 5); AA/BB>4; c、今天的成交量达到了整个流通盘的10%以上(注意,10%的表达式是10/100或者0.1): VOL/CAPITAL>10/100; 2、缩量 a、今日比昨日的成交量缩小了1倍: VOL/REF(VOL, 1)<0.5; b、今日的五日均量比五天前的五日均量缩小了一半: AA:=MA(VOL, 5); BB:=REF(AA, 5); AA/BB<0.5; c、今天的成交量不足整个流通盘的0.5%: VOL/CAPITAL<0.5/100; d、连续两天缩量一倍以上(等差缩量)

EVERY(V<=REF(V,1)*0.5,2); e、连续3天缩量 COUNT(V1.07; b、十日均价继续上涨: AA:=MA(CLOSE,10); BB:=REE(AA,1); AA>BB; 4、下跌 a、当天收阳:CLOSE>OPEN; b、当天收阴:CLOSEREF(CLOSE, 1); b、当天股价低开:OPENREF(HIGH, 1); b、向下跳空(开盘小于昨日的最高价,简称低低): OPEN

算法与程序设计经典例题

第一节选择题 选择题是一种各学科均使用的常见题型,它的结构由指令性语言、题干和选择支三个部分组成。 指令性语言:通常在大题号后面,本大题所有小题的前面,用括号括起来的部分;一般有三个方面的 内容:一是本大题包含的小题数目、每小题的分值和本大题的总分;二是指明每个小题中正确答案的数量; 三是每小题的计分方法。 题干:是指每一小题中叙述考查内容的不完整(加上某个选择支就能完整)的句子。 选择支:是题干后面的备选答案。 在信息技术会考试题中均采用“四选一”型的单项选择题,即一道选择题的四个选择支中,有且只有 一个正确选项。 选择题形式多样,结构灵活,可考查知识的覆盖面广,能比较全面地考察考生的基本知识和基本操作 技能,而且选择题答案具有确定性,阅卷方便,考试信度和效度高等特点,但选择题只在限定的备选项中 选出正确选项,其考核功能有一定的局限性,对考生的创新能力的培养有不同程度的影响。 选择题的解法很多,主要可以从直接法和间接法两方面着手。 一、直接法 直接法是指运用所学知识或根据操作经验,直接从题干出发,经过回忆、计算、比较,得出结论后与 备选答案进行对照,选出正确的选项。 【例1】以下主要用于制作网页的软件是 (A)Excel(B)Linux(C)FrontPage(D)PowerPoint (浙江省2006年会考试题)分析目前每一位考生所使用的网页制作软件不多,绝大部分都在使用(C)。 【例2】下列主要用来输入音频信息的设备是 (A)键盘(B)显示器(C)话筒(D)扫描仪 (A)销售盗版软件(B)下载免费软件(C)购买正版软件(D)发布共享软件 (浙江省2002年会考试题)分析本题可以根据计算机使用道德及计算机软件保护条例等知识直接得到答案:(A)。 【例6】有如下Visual Basic程序段: If x>0 Then y=2 End If 它的控制结构属于 (A)循环结构(B)树型结构(C)分支结构(D)顺序结构 (浙江省2004年会考试题)分析作为信息技术基础的内容,要求能看懂程序的基本控制结构及简单程序的阅读理解,如果在简 单程序中有If … then …语句,则此种控制结构一定是分支结构。本题答案为(C)。 【例7】下列说法中正确的是 (A)图像通常有位图和点阵图两种表示形式 (B)用Windows系统中的“画图”程序画出来的图形就是矢量图 (C)矢量图经过移动、缩放、旋转和扭曲等变换后清晰度不会发生变化 (D)图像文件中只记录生成图的算法和图上的某些特征点,数据量较小 分析本题可以根据图像与图形、位图与矢量图等基本概念直接得到答案(C) 【例8】一位同学用数码相机拍了一些照片,他想对这些照片上的人物和背景进行重新组合,以获得 最佳效果,你可以建议他采用的软件是 (A)Flash(B)Photoshop(C)画图程序(D)Powerpoint

课程序设计实例

长治学院 课程设计报告 课程名称:DELPHI原理及应用课程设计 设计题目:人口普查系统 系别:计算机系 专业:计算机科学与技术 学生姓名: 刘汉一学号: 起止日期:2008年2月26 日~2008年3月14 日指导教师:孙俊杰

长治学院

人口普查系统 目录 第一章需求分析-----------------------------------------------------------1 第二章开发过程-----------------------------------------------------------2 2.1系统目标----------------------------------------------------------------------3 2.2合理的设计数据库----------------------------------------------------------4 2.3设计出友好的界面----------------------------------------------------------4 2.4实现基本功能和和一些特殊的功能-------------------------------------4 2.5功能划分----------------------------------------------------------------------5 2.6系统功能分析----------------------------------------------------------------5第三章详细设计----------------------------------------6 3.1系统设计方法-------------------------------------------7 3.2数据库设计---------------------------------------------7 3.3系统结构设计-------------------------------------------7 3.4系统界面设计-------------------------------------------7 第四章调试与操作说明----------------------------------7 第五章课程设计与体会-----------------------------------8 致谢 参考文献

vb程序设计实例

vb程序设计实例 2009-5-22 15:37 提问者:淘淘的某在| 悬赏分:20 | 浏览次数:1688次 编写程序,设银行定期存款的年利率为:1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。今有X元,5年以后使用,共有如下6中存法: ①存一次5年期; ②存一次3年期,一次2年期; ③存一次3年期,两次1年期; ④存两次2年期,一次1年期; ⑤存一次2年期,三次1年期; ⑥存五次1年期. 分别计算各种存法5年后到期的本息合计,如图所示 2009-5-22 17:06 最佳答案 Private Sub Form_Activate() '1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。今有X元,5年以后使用,共有如下6中存法: Const x1 As Double = 0.0225, x2 As Double = 0.0243, x3 As Double = 0.027, x5 As Double = 0.0288 Dim x As Double x = Val(InputBox(""))

Print "①存一次5年期,5年后到期的本息合计"; ss(x, 5, x5) Print "②存一次3年期,一次2年期,5年后到期的本息合计"; ss(ss(x, 3, x3), 2, x2) Print "③存一次3年期,两次1年期,5年后到期的本息合计"; ss(ss(ss(x, 3, x3), 1, x1), 1, x1) Print "④存两次2年期,一次1年期,5年后到期的本息合计"; ss(ss(ss(x, 2, x2), 2, x2), 1, x1) Print "⑤存一次2年期,三次1年期,5年后到期的本息合计"; ss(ss(ss(ss(x, 2, x2), 1, x1), 1, x1), 1, x1) Print "⑥存五次1年期,5年后到期的本息合计"; ss(ss(ss(ss(ss(x, 1, x1), 1, x1), 1, x1), 1, x1), 1, x1) End Sub Private Function ss(ByVal a As Double, b As Integer, c As Double) As Double ss = a + a * c * b End Function Private Sub Form_Load() AutoRedraw = True End Sub

c编程实例100例

输入一个整数将各位征税反转后输出 #include using namespace std; int main() { int n,right_digit,newnum=0; cout<<"Enter the number:"; cin>>n; cout<<"the number in revers srder is:"; do{ right_digit=n%10; cout< using namespace std; int main() { int i=1,sum=0; while (i<=10) { sum+=i; i++; } cout<<"sunm="< using namespace std; int main() { int i=1,sum=0; do { sum+=i; i++; } while (i<=10);

cout<<"sum="< using namespace std; int main() { long int i; int bouns1,bouns2,bouns4,bouns6,bouns10,bouns; scanf("%d",&i);//%ld表示这个数据的类型是long int 长整形 //&i 表示i的地址,及输出的是i的值bouns1=100000*0.1; bouns2=bouns1+10000090.75; bouns4=bouns2+200000*0.5; bouns6=bouns4+200000*0.3; bouns10=bouns6+400000*0.15; if(i<=100000) bouns=i*0.1; else if(i<=200000) bouns=bouns1+(i-100000)*0.075; else if(i<=400000) bouns=bouns2+(i-200000)*0.05; else if(i<=600000) bouns=bouns4+(i-400000)*0.03; else if(i<=10000000) bouns=bouns6+(i-600000)*0.15; else bouns=bouns10+(i-1000000)*0.01; printf("bouns=%d",bouns);//输出一个数据a为整形数据。 } 星期 int day; cout<<"输入数:"; cin>>day; switch (day) { case 0: cout<<"sunday"<

计算机程序设计员程序设计实例

. 程序设计实例 本章介绍了循环程序设计方法,讲述了两种循环程序,三种循环语句。包括前两章讲述的顺序程序结构、分支程序结构在内,这些控制结构内的语句部分都允许任意形式的语句。这些控制结构之间可以互相嵌套,而且这种嵌套没有层次限制。比如,if语句内可以包含循环语句,循环语句内又可以继续包含if 语句,等等。又比如,一个循环语句内可以含有循环语句,内层循环语句内还可以再包含循环语句,形成所谓的多重循环,等等。 【例4.12】编程序,输出如下序列的前50 项。该序列的第一项为0 ; 第二项为1 ; 以后的奇数项为其前两项之和;偶数项为其前两项之差。 解1:该问题应该一项一项的生成,生成一项输出一项。在生成一项时要考虑该项是偶数项还是奇数项;生成并输出一项后,为生成下一项做准备,应该把后边的项向前串。得如下图4.30的PAD图。程序如下。 #include "stdio.h" void main( ) {

. int u,v,w,k ; u=0 ; v=1 ; printf ( "%5d\n%5d\n",u,v); k=3 ; do { if ( k%2 == 0 ) w=v-u; else w=v+u; printf ( "%12d\n",w); u=v ; v=w ; k=k+1 ; }while ( k<=50 ) ; }

解2:该问题生成一项时,可以不用分支判断,而采用标志单元的方法,这种方法在程序设计中是经常使用的。用这种方法PAD图如图4.31。程序如 下。 #include "stdio.h" void main( ) { int u,v,w,k ; int flag; u=0 ; v=1 ; printf ( "%5d\n%5d\n",u,v); k=3 ; flag = -1 ; do } w = v + flag*u; flag = -flag ;

模块化程序设计实例,DOC

9 .5 模块化程序设计实例 《程序设计基础》(基于C语言讲解)石光华编著—北京: 清华大学出版社 下面以设计一个简单的成绩管理软件为例,一步一步地按模块化程序设计方法进行设计。 1 .定义问题 设计一个成绩管理软件,其基本功能包括:输入成绩,成绩加分,计算平均成绩,找出最高分,找出最低分,输出成绩等。 2 .确定组成程序的模块 根据成绩管理软件的功能,确定软件的基本模块包括:输入模块,加分模块,平均分模块,最高分模块,最低分模块,输出模块等。 142 程序设计基础 3 .绘制程序结构图 成绩管理软件的结构图如图9-5所示。 图9-5 成绩管理软件结构图 4 .流程图 用流程图确定主程序的逻辑结构,如图9-6所示。 在流程图中,istate 的作用是记录是否已经输入成绩。istate 的使用有如下两种 方式。 (1) 作为全局变量使用。此时istate可以在所有模块中改变其值,主程序更简洁,但 可能产生边际效应。 (2) 作为主程序的局部变量使用。此时istate只能在主程序中改变其值。在主程序 中可以直观地看到其变化,能够防止边际效应。 采用方式(2)的主程序如下。

#include < stdio .h> #define SIZE 10 void main() { int iscore[SIZE] ={0}; int key= - 1; int iresult=0; float fresult=0; int istate=0; printf(″1:Input scores;\n″); 第9章模块化程序设计 143 图9-6 成绩管理软件主程序流程图 printf(″2:Output scores;\n″); printf(″3:Count for the max score;\n″); printf(″4:Count for the minimum score;\n″); printf(″5:Count for the total score;\n″); printf(″6:Count for theaverage score;\n″); printf(″- 1:Exit .\n″); while(1) { printf(″Please input your choose:″); scanf(″%d″,&key); if (key = = - 1) 144 程序设计基础

VBA 编程常见实例

1、将excel汇总好的表,按字段拆分为多sheet的情况:如下图: 代码如下:Sub cfs() Dim GSArr() As String '公司名称清单 Dim Rca As Integer 'A列数据行数 Dim i As Integer Dim Sn As String Sn = https://www.doczj.com/doc/6b12257950.html, Rca = Columns("A:A").End(xlDown).Row ‘按第A列数据拆分,且第一行无合并单元格 ReDim GSArr(1 To 1) GSArr(1) = Cells(2, 1) For i = 3 To Rca If IsError(Application.Match(Cells(i, 1), GSArr, 0)) Then ReDim Preserve GSArr(1 To UBound(GSArr) + 1) GSArr(UBound(GSArr)) = Cells(i, 1) End If Next If ActiveSheet.AutoFilterMode = False Then Rows("1:1").AutoFilter Else If ActiveSheet.FilterMode = True Then ActiveSheet.ShowAllData End If For i = 1 To UBound(GSArr) ActiveSheet.Cells.AutoFilter Field:=1, Criteria1:=GSArr(i) Sheets.Add After:=Sheets(Sheets.Count) https://www.doczj.com/doc/6b12257950.html, = GSArr(i) Sheets(Sn).Cells.Copy ActiveSheet.Cells Sheets(Sn).Activate Next ActiveSheet.Cells.AutoFilter End Sub

C程序设计期末考试习题(含答案)

c语言程序设计期末试题A(含答案) 一、单项选择题(选择一个最佳答案,每题2分,共20分) 1.一个C程序的执行是从( )。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序的main函数开始,到本程序文件的最后一个函数结束 D) 本程序文件的第一个函数开始,到本程序main函数结束 2.下列选项中,不能用作标识符的是( )。 A) _1234_ B) _1_2 C) int_2_ D) 2_int_ 3.以下定义语句中正确的是( )。 A) char a='A'b='B'; B) float a=b=10.0; C) int a=10,*b=&a; D) float *a,b=&a; 4.设有以下定义:#define d 2 int a=0; double b=1.25; char c=’A’; 则下面语句中错误的是()。 A) a++; B) b++ C) c++; D) d++; 5.以下4个选项中,不能作为一条C语句的是( )。 A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2; 6.有以下定义语句 double a,b; int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。 A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b; 7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( )。 A) p=1; B) *q=2; C) q=p; D) *p=5; 8.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( )。

RAPTOR程序设计例题参考答案

RAPTOR程序设计 一、顺序结构编程 1.输入任意一个华氏温度值,然后将其转换成摄氏温度输出。算法:c = 5 / 9 (f - 32) 2.输入任意三角形的三边之长存入变量a、b、c中,然后计算并输出该三角形的面积。海伦公式:p = (a + b + c)/2 S = sqrt (p * (p - a) * ( p – b ) * ( p – c )) 二、选择结构编程 3.输入任意一个年份,判断该年是否为润年。若是则打印“Yes!”,否则打印”No!”。 4. 输入任意两个数存入变量a、b中,要求:变量a中存储较大数,b中存储较小数,然后输出变量a和b的值。 5.输入任意三个数存入变量a、b、c中,然后计算并输出其中的最大值。 6.输入任意三个数存入变量a、b、c中,然后按从小到大的顺序打印输出。 7.输入任意一个学生的考试成绩,然后按其所属分数段打印对应等级:90-100分为A 等,80-89分为B等,70-79为C等,60-69为D等,60分以下为E等。 三、循环结构编程 8.计算并输出sum = 1 + 2 + 3 + … + 10的和。改进程序计算sum = 1 + 2 + 3 + …+ n的和。 9.输入任意自然数n,然后计算并输出n!值。 10. 计算并输出sum = 1! + 2! + 3! + … + n! 11. 输入任意整数存入变量n中,若n≤0则输出“Error!”;否则组织循环结构流程计算sum = 1 / 2 + 2 / 3 + 3 / 4 + … + n / ( n + 1 )的值,然后分别输出变量n和sum的值。 12.设计循环结构程序输入任意10个整数,分别统计其中的奇数个数、偶数个数、所有数的累加和,然后显示结果。 13.设计校园歌手大赛计分程序,假设有10评委按10分制打分,计算每位选手扣除一个最高分、最低分后的平均分,显示计分结果。

程序设计案例教程

程序设计案例教程(C语言版) 练习题+解析 Admin陈杰 Lenovo

1.位字段数据的单位是()位。二进制 2.语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是:(说明:'\b'是退格符)()。 re'hi'you 3.若变量均已正确定义并赋值,以下合法的C语言赋值语句是x=n/2.5 4.执行下列语句后变量x和y的值是()。y=10;x=y++; 5.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符()。必须为 字母或下划线 6.以下选项中不是C语句的是a=5,c=10 7.以下符合C语言语法的赋值表达式是()。d=(9+e,f=d+9) 8.以下标识符中,不能作为合法的C用户定义标识符的是()。Signed 9.设 int b=2;表达式(b>>2)/(b>>1)的值是()。0 10.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 &&y+z/2的值是 1 11.C语言中的简单数据类型有整型、实型、字符型 12.C语言中运算对象必须是整型的运算符是% 13.设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。-264 14.以下不符合C语言语法的实型常量是()。E15,3.14.159E,1.2E0.5 15.参加位运算的数据可以是任何类型的数据。F 16.inti=20;switch(i/10){case 2:printf("A"); case 1:printf("B");}的输出结果为A。 F 17.若有 # define S(a,b) a*b 则语句 area=S(3,2); area的值为6。T 18.C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式.F 19.#define 和printf 都不是C语句。T 20.设a=3,b=4,c=4,则表达式a+b>c&&b==c&&a||b+c&&b==c的值为___1__. 21.以下程序运行后的输出结果是___yes__。 main() { int a=1,b=3,c=5; if (c=a+b) printf("yes\n"); else printf("no\n");} 22. 请写出以下程序的输出结果___1__。 main() { int a = 100; if( a> 100) printf(“%d\n”, a > 100); else printf(“%d\n”, a <= 100); } 22.int x=2;z=++x+1; 则x的值为___3__. 23.以下程序的输出结果是___-1__。 #include void main() { int x = 2; while ( x-- ); printf("%d\n", x); } 24.int x=2,y=3,z=4; 则表达式x+y&&x==y的值为___0__.

程序设计经典例题

【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 【程序2】 题目:输入某年某月某日,判断这一天是这一年的第几天? 程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。 【程序3】 题目:输入三个整数x,y,z,请把这三个数由小到大输出。 【程序4】 题目:输出9*9口诀。 程序分析:分行与列考虑,共9行9列,i控制行,j控制列。 【程序5】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序6】 题目:判断101-200之间有多少个素数,并输出所有素数。 【程序7】 题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。 程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。【程序8】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n, 重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序9】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 【程序10】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。程序分析:利用while语句,条件为输入的字符不为'\n'. 程序11】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如

相关主题
文本预览
相关文档 最新文档