天津城建大学C语言程序改错.docx
- 文档编号:663727
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:23
- 大小:62.17KB
天津城建大学C语言程序改错.docx
《天津城建大学C语言程序改错.docx》由会员分享,可在线阅读,更多相关《天津城建大学C语言程序改错.docx(23页珍藏版)》请在冰豆网上搜索。
天津城建大学C语言程序改错
天津城建大学C语言程序改错
程序改错
功能:
编制统计营业员一天的营业额的程序,设程序采用一个循环
实现,每次循环输入一笔交易金额并累计营业额。
由于营
业员一天完成的交易次数是不确定的,为此以最后附加输
入一笔0或负数交易额作为交易金额已全部输入结束的标志。
有以下统计营业员一天营业额的算法:
统计营业员一天营业额
{
营业额清0;
输入第一笔交易额;
while(交易额>0.0)
{
累计营业额;
输入下一笔交易额;
}
输出营业额;
}
记一笔交易额为变量sale,营业额为sigma。
}
}
功能:
输入一个字符串,过滤此串,滤掉字母字符,并统计新生
成串中包含的字符个数。
例如:
输入的字符串为ab234$df4,则输出为:
Thenewstringis234$4
Thereare5charinthenewstring.。
inti,j;
/**********FOUND**********/
for(i=0,j=0;*(ptr+i)!
=0;i++)
/**********FOUND**********/
if(*(ptr+i)>'z'||*(ptr+i)<'a'&&*(ptr+i)>'Z'||*(ptr+i)<'A')
{
/**********FOUND**********/
*(ptr+j)=*(ptr+i);
j++;
}
*(ptr+j)='\0';
return(j);
}
阿【程序改错】
功能:
求1到20的阶乘的和。
答案:
1).t=1;或t=1.0;
2).t=★t★*★j★;或t*=j;或t=j*t;
3).s=★s★+★t★;或s+=t;或s=t+s;
4).printf("jiecheng=%f\n",s);
【程序改错】
功能:
计算正整数num的各位上的数字之积。
例如:
输入252,则输出应该是20。
答案:
1).longk=1;
2).num/=10;或num=num/10;
3).scanf("%ld",&n);
4).printf("\n%ld\n",fun(n));
【程序改错】
功能:
求出两个非零正整数的最大公约数,并作为函数值返回。
例如:
若给num1和num2分别输入49和21,则输出的最大公约数为7。
答案:
1).a=b;
2).b=t;
3).r=a%b;
4).returnb;或return(b);或return(b);
【程序改错】
功能:
从键盘输入十个学生的成绩,统计最高分,最低分和平均分。
max代表最高分,min代表最低分,avg代表平均分。
答案:
1).floata[10],min,max,avg;
2).scanf("%f",&a[i]);或scanf("%f",a+i);
3).max=min=avg=a[0];
4).if(min>a[i])或if(a[i] 【程序改错】 功能: 输入10个数,要求输出这10个数的平均值 答案: 1).for(i=1;i<10;i++)或for(i=1;i<=9;i++) 2).floatscore[10],aver;或floataver,score[10]; 3).scanf("%f",&score[i]);或scanf("%f",score+i); 4).aver=average(score); 【程序改错】 功能: 判断整数x是否是同构数。 若是同购数,函数返回1;否则返回0。 说明: 所谓“同构数”是指这个数出现在它的平方数的右边。 例如: 输入整数25,25的平方数是625,25是625中右侧的数, 所以25是同构数。 注意: x的值由主函数从键盘读入,要求不大于1000。 答案: 1).intk; 2).k=x*x; 3).if((k%10==x)||(k%100==x)||(k%1000==x)) 【程序改错】 功能: 根据整型形参m,计算如下公式的值: y=1+1/3+1/5+1/7+...+1/(2m-1) 答案: 1).doubley=1; 2).for(i=1;i<=m;i++) 3).y+=1.0/(2*i-3); 【程序改错】 功能: 找出一个大于给定整数m且紧随m的素数,并作为函数值返回。 答案: 1).inti,k;或inti;intk;或intk,i;或intk;inti; 2).if(i%k==0)或if(! (i%k)) 3).if(k==i)或if(i==k) 【程序改错】 功能: 用选择法对数组中的n个元素按从小到大的顺序进行排序。 答案: 1).p=j; 2).if(a[i]a[i]) 3).p=i; 【程序改错】 功能: 用插入排序法将n个字符进行排序(降序)。 提示: 插入法排序的思路是: 先对数组的头两个元素进行排序, 然后根据前两个元素的情况插入第三个元素,再插入第 四个元素…)。 答案: 1).inta,b,t; 2).while((b>=0)&&(t>aa[b])) 3).aa[b+1]=t; 【程序改错】 功能: 读入一个整数k(2≤k≤10000),打印它的所有质因子(即 所有为素数的因子)。 例如: 若输入整数: 2310,则应输出: 2、3、5、7、11。 请改正程序中的语法错误,使程序能得出正确的结果。 答案: 1).IsPrime(intn) 2).if(! (n%i)) 3).return(m); 【程序改错】 功能: 根据整型形参m,计算某一数据项的值。 y=1/(100*100)+1/(200*200)+1/(300*300)+……+1/(m*m) 例如: 若m=2000,则应输出: 0.000160。 答案: 1).doublefun(intm) 2).for(i=100;i<=m;i+=100) 3).y+=1.0/d; 【程序改错】 功能: 根据整型形参n,计算某一数据项的值。 A[1]=1,A[2]=1/(1+A[1]),A[3]=1/(1+A[2]),…, A[n]=1/(1+A[n-1]) 例如: 若n=10,则应输出: a10=0.617977。 答案: 1).floatfun(intn) 2).for(i=2;i<=n;i++) 3).A=1.0/(1+A); 【程序改错】 功能: 求广义菲玻那契级数的第n项。 广义菲玻那契级数的前n 项为: 1,1,1,3,5,9,17,31,…… 项值通过函数值返回main()函数。 例如: 若n=15,则应输出: Thevalueis: 2209。 答案: 1).for(k=4;k<=n;k++) 2).a=b; 3).returnd; 【程序改错】 功能: 求二分之一的圆面积,函数通过形参得到圆的半径,函数 返回二分之一的圆面积。 例如: 输入圆的半径值: 19.527输出为: s=598.950017。 答案: 1).floatfun(floatr) 2).s=1.0/2*3.14159*r*r; 3).returns; 【程序改错】 功能: 求出数组中最大数和次最大数,并把最大数和a[0]中的数 对调、次最大数和a[1]中的数对调。 答案: 1).m=i; 2).for(k=i;k 3).if(a[k]>a[m])m=k; 【程序改错】 功能: 根据整型形参m,计算如下公式的值: y=1/2+1/8+1/18+...+1/2m*m 答案: 1).doubley=0; 2).for(i=1;i<=m;i++) 3).y+=1.0/(2*i*i); 【程序改错】 功能: 统计出若干个学生的平均成绩,最低分以及得最低分的人数。 例如: 输入10名学生的成绩分别为92,87,68,56,92,84,67, 75,92,66,则输出平均成绩为77.9,最低高分为56,得最 低分的人数为1人。 答案: 1).sum+=array[i];或sum=sum+array[i]; 2).ave=sum/n; 3).if(array[i]==Min)J++; 【程序改错】 功能: 将整型数组中所有小于0的元素放到所有大于0的元素的前 面(要求只能扫描数组一次)。 答案: 1).int★i=0★,★j=n-1★,★temp★; 2).j--; 3).if(i 【程序改错】 功能: 输入两个实数,按代数值由小到大输出它们,并在fun() 函数中输出。 (输出的数据都保留2位小数) 答案: 1).floatt; 2).if(a>b) 3).printf("%5.2f,%5.2f\n",a,b); 【程序改错】 功能: 编写函数fun求20以内所有5的倍数之积。 答案: 1).int★s=1★,★i★; 2).if(i%m==0) 3).s=s*i或s=i*s或s*=i 【程序改错】 功能: 编写函数fun求20以内所有5的倍数之积。 答案: 1).ints=1,i; 2).if(i%m==0) 3).s*=i; 【程序改错】 功能: 编写函数fun计算下列分段函数的值: x*x+xx<0且x≠-3 f(x)=x*x+5x0≤x<10且x≠2及x≠3 x*x+x-1其它 答案: 1).floaty; 2).if(x<0&&x! =-3.0) 3).returny; 【程序改错】 功能: 有1、2、3、4个数字,能组成多少个互不相同且无重复数 字的三位数? 都是多少? 答案: 1).printf("\n"); 2).for(i=1;i<5;i++)或for(i=1;i<=4;i++) 3).if(i! =k&&i! =j&&j! =k) 【程序改错】 功能: 某个公司采用公用电话传递数据,数据是四位的整数,在 传递过程中是加密的,加密规则如下: 每位数字都加上5, 然后除以10的余数代替该位数字。 再将新生成数据的第一 位和第四位交换,第二位和第三位交换。 例如: 输入一个四位整数1234,则结果为: 9876。 答案: 1).scanf("%d",&a); 2).aa[1]=a%100/10; 3).for(i=0;i<=3;i++)或for(i=0;i<4;i++) 【程序改错】 功能: 一球从100米高度自由落下,每次落地后反跳回原高度的 一半;再落下,求它在第10次落地时,共经过多少米? 第10次反弹多高? 答案: 1).floatsn=100.0,hn=sn/2; 2).for(n=2;n<=10;n++)或for(n=2;n<11;n++) 3).hn=hn/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 天津 城建 大学 语言 程序 改错
![提示](https://static.bdocx.com/images/bang_tan.gif)