皖西学院2018年c语言上机题.doc
(34页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
14.90 积分
皖西学院2018年c语言上机题试卷1改错题在屏幕上输入以下图形(每行前没有空格,星号之间也没有空格)*****************************#include void main(){ int i,j; i=1; /*$ERROR1$*/改为i=0; while(i<5) { j=0; while(j0) { j=0; while(j<5-i) /*$ERROR2$*/ 改为while(j<=5-i) {printf("*"); j++; } printf("\n"); i++ ; /*$ERROR3$*/改为i--; }}试卷1填空题某部门有三位职工,要求输入职工的工资信息,计算每位职工的实发工资和部门实发工资总额(total)说明:(1) 描述职工工资信息的数据包括编号(num)、姓名(name)、基本工资(bwage)\奖金(bonus)、保险(ins)和实发工资(rwage);(2) 实发工资=基本工资+奖金—保险;(3) 职工编号长度小于10位且为整数,姓名不包括空格。#include #define N 3struct employee { long num; char name[15]; long bwage,bonus,ins,rwage;};void main() { sruct employeeNK1$*/ int i; long total; total=0 ;/*$BLANK2$*/ printf("Please input data:\n"); printf("\nnum name bwage bonus ins:\n"); for(i=0;i0) { m=f(n); printf("%ld\n",m); } else printf("Data error\n");}试卷9填空题以下程序判断输入的字符串是否“回文”(即顺读和倒读都一样,例如:ABCBA,假设字符串前后没有空格)。#include#includevoid main(){ char s[100]; int left,right,middle,lenth; printf("Please input a string:"); gets(s); lenth = strlen(s); left = 0 BLANK1$*/ middle = lenth/2; while(left<=middle) { right = lenth-1-left; if(s[left] _==_ s[right]) /*$BLANK2$*/ left++; else break; } if(left _<=_ middle) /*$BLANK3$*/ printf("No\n"); else printf("Yes\n"); }试卷9程序题求s=1+(2*2)+(3*3*3)+(4*4*4*4)+……+(9*9*9*9*9*9*9*9*9)的值(要求使用循环实现)#include void PRINT(long s){ FILE *out; printf("s=%ld\n",s); if((out=fopen("C:\\24000110\\RESULT.DAT","w+"))!=NULL) fprintf(out,"s=%ld.ld",s); fclose(out);}void main(){long s=0,t=1;int i,j;for (i=1;i<=9;i++){ t=1;for (j=1;j<=I;j++)t=t*i;s=s+t;} PRINT(s);}试卷10改错题在屏幕上输出以下图形(字符之间没有空格)。5432143215321542154315432#include #include void main(){ char a[6]="54321",temp; int i,k; for(i=1;i<=5;i++) { printf("%c\n",a); /*$ERROR1$*/ 改为:printf(“%s\n”,a); temp=a[0]; for(k=0;k<4;k++) a[k+1]=a[k]; /*$ERROR2$*/ 改为:a[k]=a[k+1]; a[4]=a[0]; /*$ERROR3$*/ 改为:a[4]=temp; }}试卷10填空题按下列公式求PI值,乘积的项数n由键盘输入。PI/2=((2*2\1*3))*((4*4/(3*5))*((6*6)/(5*7))*……*((2n*2n)/((2n-1)*(2n+1)))若输入50,则输出为PI=3.126079#include void main() { long n,i; double PI,s; s=__1;/*$BLANK1$*/ scanf("%ld",&n); for(i=_1_;i<=n;i++) /*$BLANK2$*/ s*=4.0*i*i/(2*i-1)/(2*i+1); PI=_2*s; /*$BLANK3$*/ printf("PI=%f\n",PI);}试卷10程序题根据下式计算s的值S=(1*3)/(2*4)+(2*4)/(3*5)+(3*5)/(4*6)……+(18*20)/(19*21)说明:(1)结果保留四位小数;(2)要求使用循环实现。#include void PRINT(double s){ FILE *out; printf("s=%.4f\n",s); if((out=fopen("C:\\24000110\\RESULT.DAT","w+"))!=NULL) fprintf(out,"s=%.4f",s); fclose(out);}void main(){double s=0;int I;for (i=2;i<=19;i++) s+=(float)(i-1)*(i+1)/(i*(i+2)); PRINT(s);}s+=1.0/t;} PRINT(s);} 关 键 词: c语言 学院 上机
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。